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

NetApp ONTAP NFS構成

共同作成者 kevin-hoke

NFS 経由でTrident をNetApp ONTAPストレージ システムと統合できるようにするには、ストレージ システムとの通信を可能にするバックエンドを作成する必要があります。このソリューションでは基本的なバックエンドを構成していますが、よりカスタマイズされたオプションを探している場合は、ドキュメントを参照してください。"ここをクリックしてください。"

ONTAPでSVMを作成する

  1. ONTAP System Manager にログインし、[ストレージ] > [ストレージ VM] に移動して、[追加] をクリックします。

  2. SVM の名前を入力し、NFS プロトコルを有効にして、「NFS クライアント アクセスを許可する」チェックボックスをオンにし、ワークロード クラスターでボリュームを PV としてマウントできるようにするために、ワーカー ノードが存在するサブネットをエクスポート ポリシー ルールに追加します。

    NFSを使用したSVMの作成

    メモ NSX-T を使用したユーザー クラスタまたはワークロード クラスタの NAT されたデプロイメントを使用している場合は、Egress サブネット (TKGS0 の場合) または Floating IP サブネット (TKGI の場合) をエクスポート ポリシー ルールに追加する必要があります。
  3. データ LIF の詳細と SVM 管理アカウントの詳細を入力し、[保存] をクリックします。

    SVMデータLIFとSVM管理

  4. 集計を SVM に割り当てます。 [ストレージ] > [ストレージ VM] に移動し、新しく作成された SVM の横にある省略記号をクリックして、[編集] をクリックします。 「ボリュームの作成を優先ローカル階層に制限する」チェックボックスをオンにして、必要なアグリゲートを接続します。

    SVM集約割り当て

  5. Tridentがインストールされるユーザー クラスターまたはワークロード クラスターの NAT されたデプロイメントの場合、SNAT が原因で、ストレージ マウント要求が非標準ポートから到着する可能性があります。デフォルトでは、 ONTAP はルート ポートから発信されたボリューム マウント要求のみを許可します。したがって、 ONTAP CLI にログインし、非標準ポートからのマウント要求を許可するように設定を変更します。

    ontap-01> vserver nfs modify -vserver tanzu_svm -mount-rootonly disabled

バックエンドとストレージクラスを作成する

  1. NFS を提供するNetApp ONTAPシステムの場合、backendName、managementLIF、dataLIF、svm、ユーザー名、パスワードなどの詳細を含むバックエンド構成ファイルをジャンプホストに作成します。

    {
        "version": 1,
        "storageDriverName": "ontap-nas",
        "backendName": "ontap-nas+10.61.181.221",
        "managementLIF": "172.21.224.201",
        "dataLIF": "10.61.181.221",
        "svm": "trident_svm",
        "username": "admin",
        "password": "password"
    }
    メモ 簡単に識別できるように、カスタム backendName 値を storageDriverName と NFS を提供している dataLIF の組み合わせとして定義するのがベスト プラクティスです。
  2. 次のコマンドを実行して、 Tridentバックエンドを作成します。

    [netapp-user@rhel7]$ ./tridentctl -n trident create backend -f backend-ontap-nas.json
    +-------------------------+----------------+--------------------------------------+--------+---------+
    |          NAME           | STORAGE DRIVER |                 UUID                 | STATE  | VOLUMES |
    +-------------------------+----------------+--------------------------------------+--------+---------+
    | ontap-nas+10.61.181.221 | ontap-nas      | be7a619d-c81d-445c-b80c-5c87a73c5b1e | online |       0 |
    +-------------------------+----------------+--------------------------------------+--------+---------+
  3. バックエンドを作成したら、次にストレージ クラスを作成する必要があります。次のサンプル ストレージ クラス定義では、必須フィールドと基本フィールドが強調表示されています。パラメータ `backendType`新しく作成されたTridentバックエンドのストレージ ドライバーを反映する必要があります。

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: ontap-nfs
    provisioner: csi.trident.netapp.io
    parameters:
      backendType: "ontap-nas"
  4. kubectl コマンドを実行してストレージ クラスを作成します。

    [netapp-user@rhel7 trident-installer]$ kubectl create -f storage-class-nfs.yaml
    storageclass.storage.k8s.io/ontap-nfs created
  5. ストレージ クラスを作成したら、最初の永続ボリューム要求 (PVC) を作成する必要があります。 PVC 定義のサンプルを以下に示します。必ず `storageClassName`フィールドは、作成したストレージ クラスの名前と一致します。 PVC 定義は、プロビジョニングするワークロードに応じて必要に応じてさらにカスタマイズできます。

    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
      name: basic
    spec:
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 1Gi
      storageClassName: ontap-nfs
  6. kubectl コマンドを発行して PVC を作成します。作成するバックアップボリュームのサイズによっては、作成に時間がかかる場合があります。そのため、プロセスが完了するまで監視することができます。

    [netapp-user@rhel7 trident-installer]$ kubectl create -f pvc-basic.yaml
    persistentvolumeclaim/basic created
    
    [netapp-user@rhel7 trident-installer]$ kubectl get pvc
    NAME    STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
    basic   Bound    pvc-b4370d37-0fa4-4c17-bd86-94f96c94b42d   1Gi        RWO            ontap-nfs      7s