Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

Tridentを展開する

共同作成者 netapp-aruldeepa

Trident for Docker は、 NetAppストレージ プラットフォームの Docker エコシステムとの直接統合を提供します。ストレージ プラットフォームから Docker ホストへのストレージ リソースのプロビジョニングと管理をサポートし、将来的に追加のプラットフォームを追加するためのフレームワークを備えています。

Tridentの複数のインスタンスを同じホスト上で同時に実行できます。これにより、複数のストレージ システムおよびストレージ タイプへの同時接続が可能になり、Docker ボリュームに使用されるストレージをカスタマイズできるようになります。

要件

参照"展開の前提条件"。前提条件が満たされていることを確認したら、 Trident をデプロイする準備が整います。

Docker マネージド プラグイン方式 (バージョン 1.13/17.03 以降)

メモ
開始する前に
従来のデーモン方式で Docker 1.13/17.03 より前のTrident を使用していた場合は、マネージド プラグイン方式を使用する前に、必ずTridentプロセスを停止し、Docker デーモンを再起動してください。
  1. 実行中のインスタンスをすべて停止します。

    pkill /usr/local/bin/netappdvp
    pkill /usr/local/bin/trident
  2. Dockerを再起動します。

    systemctl restart docker
  3. Docker Engine 17.03 (新しい 1.13) 以降がインストールされていることを確認してください。

    docker --version

    バージョンが古い場合は、 "インストールまたは更新する"

手順
  1. 構成ファイルを作成し、次のようにオプションを指定します。

    • config: デフォルトのファイル名は `config.json`ただし、 `config`ファイル名にオプションを指定します。設定ファイルは、 `/etc/netappdvp`ホスト システム上のディレクトリ。

    • log-level: ログレベルを指定する(debuginfowarnerrorfatal )。デフォルトは info

    • debug: デバッグ ログを有効にするかどうかを指定します。デフォルトは false です。 true の場合、ログ レベルを上書きします。

      1. 構成ファイルの場所を作成します。

        sudo mkdir -p /etc/netappdvp
      2. 設定ファイルを作成します。

        cat << EOF > /etc/netappdvp/config.json
        {
          "version": 1,
          "storageDriverName": "ontap-nas",
          "managementLIF": "10.0.0.1",
          "dataLIF": "10.0.0.2",
          "svm": "svm_nfs",
          "username": "vsadmin",
          "password": "password",
          "aggregate": "aggr1"
        }
        EOF
  2. 管理されたプラグイン システムを使用してTrident を起動します。交換する `<version>`使用しているプラ​​グインのバージョン (xxx.xx.x) に合わせてください。

    docker plugin install --grant-all-permissions --alias netapp netapp/trident-plugin:<version> config=myConfigFile.json
  3. 構成されたシステムからストレージを消費するためにTridentの使用を開始します。

    1. 「firstVolume」という名前のボリュームを作成します。

      docker volume create -d netapp --name firstVolume
    2. コンテナの起動時にデフォルトのボリュームを作成します。

      docker run --rm -it --volume-driver netapp --volume secondVolume:/my_vol alpine ash
    3. ボリューム「firstVolume」を削除します。

      docker volume rm firstVolume

従来の方法(バージョン1.12以前)

開始する前に
  1. Docker バージョン 1.10 以降がインストールされていることを確認してください。

    docker --version

    バージョンが古い場合は、インストールを更新してください。

    curl -fsSL https://get.docker.com/ | sh
  2. NFS および/または iSCSI がシステムに設定されていることを確認します。

手順
  1. NetApp Docker Volume Plugin をインストールして構成します。

    1. アプリケーションをダウンロードして解凍します。

      wget https://github.com/NetApp/trident/releases/download/v25.06.0/trident-installer-25.06.0.tar.gz
      tar zxf trident-installer-25.06.0.tar.gz
    2. ビンパス内の場所に移動します。

      sudo mv trident-installer/extras/bin/trident /usr/local/bin/
      sudo chown root:root /usr/local/bin/trident
      sudo chmod 755 /usr/local/bin/trident
    3. 構成ファイルの場所を作成します。

      sudo mkdir -p /etc/netappdvp
    4. 設定ファイルを作成します。

      cat << EOF > /etc/netappdvp/ontap-nas.json
      {
        "version": 1,
        "storageDriverName": "ontap-nas",
        "managementLIF": "10.0.0.1",
        "dataLIF": "10.0.0.2",
        "svm": "svm_nfs",
        "username": "vsadmin",
        "password": "password",
        "aggregate": "aggr1"
      }
      EOF
  2. バイナリを配置して設定ファイルを作成したら、目的の設定ファイルを使用してTridentデーモンを起動します。

    sudo trident --config=/etc/netappdvp/ontap-nas.json
    メモ 指定されない限り、ボリューム ドライバーのデフォルト名は「netapp」です。

    デーモンを起動したら、Docker CLI インターフェースを使用してボリュームを作成および管理できます。

  3. ボリュームを作成します。

    docker volume create -d netapp --name trident_1
  4. コンテナを起動するときに Docker ボリュームをプロビジョニングします。

    docker run --rm -it --volume-driver netapp --volume trident_2:/my_vol alpine ash
  5. Docker ボリュームを削除します。

    docker volume rm trident_1
    docker volume rm trident_2

システム起動時にTridentを起動する

systemdベースのシステムのサンプルユニットファイルは、次の場所にあります。 contrib/trident.service.example Git リポジトリ内。 RHEL でファイルを使用するには、次の手順を実行します。

  1. ファイルを正しい場所にコピーします。

    複数のインスタンスを実行している場合は、ユニット ファイルに一意の名前を使用する必要があります。

    cp contrib/trident.service.example /usr/lib/systemd/system/trident.service
  2. ファイルを編集し、ドライバー名と一致するように説明 (2 行目) を変更し、環境を反映するように構成ファイル パス (9 行目) を変更します。

  3. 変更を取り込むために systemd をリロードします。

    systemctl daemon-reload
  4. サービスを有効にします。

    この名前は、 `/usr/lib/systemd/system`ディレクトリ。

    systemctl enable trident
  5. サービスを開始します。

    systemctl start trident
  6. ステータスを表示します。

    systemctl status trident
メモ ユニットファイルを変更するたびに、 `systemctl daemon-reload`変更を認識させるためのコマンドです。