ONTAP NASの設定オプションと例
Tridentのインストール時にONTAP NASドライバを作成して使用する方法について説明します。このセクションでは、バックエンドの構成例と、バックエンドをStorageClassesにマッピングするための詳細を示します。
バックエンド構成オプション
バックエンド設定オプションについては、次の表を参照してください。
パラメータ | 説明 | デフォルト | ||
---|---|---|---|---|
「バージョン」 |
常に 1 |
|||
'torageDriverName' |
ストレージドライバの名前 |
「ontap-nas」、「ontap-nas-economy」、「ontap-nas-flexgroup」、「ontap-san」、「ontap-san-economy」 |
||
backendName` |
カスタム名またはストレージバックエンド |
ドライバ名+"_"+ dataLIF |
||
「管理 LIF 」 |
クラスタまたはSVM管理LIFのIPアドレス完全修飾ドメイン名(FQDN)を指定できます。IPv6フラグを使用してTridentがインストールされている場合は、IPv6アドレスを使用するように設定できます。IPv6アドレスは、のように角かっこで定義する必要があります |
「 10.0.0.1 」、「 [2001:1234:abcd::fefe] 」 |
||
「重複排除 |
プロトコル LIF の IP アドレス。指定することをお勧めします |
指定されたアドレス、または指定されていない場合はSVMから取得されるアドレス(非推奨) |
||
'VM' |
使用する Storage Virtual Machine |
SVM 「管理 LIF 」が指定されている場合に生成されます |
||
「 autoExportPolicy 」を参照してください |
エクスポートポリシーの自動作成と更新を有効にします[ブーリアン]。オプションと `autoExportCIDRs`オプションを使用する `autoExportPolicy`と、Tridentでエクスポートポリシーを自動的に管理できます。 |
いいえ |
||
「 autoExportCI` 」 |
が有効な場合にKubernetesのノードIPをフィルタリングするCIDRのリスト |
["0.0.0.0/0","::/0"]' |
||
「ラベル」 |
ボリュームに適用する任意の JSON 形式のラベルのセット |
"" |
||
「 clientCertificate 」をクリックします |
クライアント証明書の Base64 エンコード値。証明書ベースの認証に使用されます |
"" |
||
「 clientPrivateKey 」 |
クライアント秘密鍵の Base64 エンコード値。証明書ベースの認証に使用されます |
"" |
||
「 trustedCacertifate 」 |
信頼された CA 証明書の Base64 エンコード値。任意。証明書ベースの認証に使用されます |
"" |
||
「ユーザ名」 |
クラスタ / SVM に接続するためのユーザ名。クレデンシャルベースの認証に使用されます |
|||
「 password 」と入力します |
クラスタ / SVM に接続するためのパスワード。クレデンシャルベースの認証に使用されます |
|||
'toragePrefix' |
SVM で新しいボリュームをプロビジョニングする際に使用するプレフィックスを指定します。設定後に更新することはできません
|
"トライデント" |
||
「集約」 |
プロビジョニング用のアグリゲート(オプション。設定する場合は SVM に割り当てる必要があります)。ドライバの場合
|
"" |
||
「 AggreglimitateUsage 」と入力します |
使用率がこの割合を超えている場合は、プロビジョニングが失敗します。* Amazon FSX for ONTAP * には適用されません |
"" (デフォルトでは適用されません) |
||
flexgroupAggregateList |
プロビジョニング用のアグリゲートのリスト(オプション。設定されている場合はSVMに割り当てる必要があります)。SVMに割り当てられたすべてのアグリゲートを使用して、FlexGroupボリュームがプロビジョニングされます。ONTAP - NAS - FlexGroup *ストレージドライバーでサポートされています。
|
"" |
||
「 limitVolumeSize 」と入力します |
要求されたボリュームサイズがこの値を超えている場合、プロビジョニングが失敗します。また、qtreeに対して管理するボリュームの最大サイズを制限し、オプションを使用 `qtreesPerFlexvol`するとFlexVolあたりの最大qtree数をカスタマイズできます。 |
""(デフォルトでは適用されません) |
||
「バグトレースフラグ」 |
トラブルシューティング時に使用するデバッグフラグ。例:{"api":false、"method":true} |
null |
||
|
NFSボリュームまたはSMBボリュームの作成を設定オプションはです |
|
||
「 nfsvMountOptions 」のように入力します |
NFSマウントオプションをカンマで区切ったリスト。Kubernetes永続ボリュームのマウントオプションは通常ストレージクラスで指定されますが、ストレージクラスにマウントオプションが指定されていない場合、Tridentはストレージバックエンドの構成ファイルに指定されているマウントオプションを使用してフォールバックします。ストレージクラスまたは構成ファイルでマウントオプションが指定されていない場合、Tridentは関連付けられた永続ボリュームにマウントオプションを設定しません。 |
"" |
||
qtreesPerFlexvol` |
FlexVol あたりの最大 qtree 数。有効な範囲は [50 、 300] です。 |
"200" |
||
|
次のいずれかを指定できます。Microsoft管理コンソールまたはONTAP CLIを使用して作成されたSMB共有の名前、TridentでSMB共有を作成できるようにする名前、ボリュームへの共通の共有アクセスを禁止する場合はパラメータを空白のままにします。オンプレミスのONTAPでは、このパラメータはオプションです。このパラメータはAmazon FSx for ONTAPバックエンドで必須であり、空にすることはできません。 |
|
||
「 useREST` 」 |
ONTAP REST API を使用するためのブーリアンパラメータ。 |
|
||
|
ONTAP NASエコノミーバックエンドでqtreeを使用する場合の、要求可能なFlexVolの最大サイズ。 |
"" (デフォルトでは適用されません) |
||
|
を制限し `ontap-nas-economy`バックエンドがqtreeを格納するために新しいFlexVolボリュームを作成することます。新しいPVのプロビジョニングには、既存のFlexVolのみが使用されます。 |
ボリュームのプロビジョニング用のバックエンド構成オプション
これらのオプションを使用して、のデフォルトプロビジョニングを制御できます defaults
設定のセクション。例については、以下の設定例を参照してください。
パラメータ | 説明 | デフォルト |
---|---|---|
「平和の配分」 |
qtreeに対するスペース割り当て |
"正しい" |
「平和のための準備」を参照してください |
スペースリザベーションモード:「none」(シン)または「volume」(シック) |
"なし" |
「ナプショットポリシー」 |
使用する Snapshot ポリシー |
"なし" |
「 QOSPolicy 」 |
作成したボリュームに割り当てる QoS ポリシーグループ。ストレージプール / バックエンドごとに QOSPolicy または adaptiveQosPolicy のいずれかを選択します |
"" |
「 adaptiveQosPolicy 」を参照してください |
アダプティブ QoS ポリシーグループ:作成したボリュームに割り当てます。ストレージプール / バックエンドごとに QOSPolicy または adaptiveQosPolicy のいずれかを選択します。経済性に影響する ONTAP - NAS ではサポートされません。 |
"" |
「スナップショット予約」 |
Snapshot 用にリザーブされているボリュームの割合 |
次の場合は「0」 |
'plitOnClone |
作成時にクローンを親からスプリットします |
いいえ |
「暗号化」 |
新しいボリュームでNetApp Volume Encryption(NVE)を有効にします。デフォルトはです。 `false`このオプションを使用するには、クラスタで NVE のライセンスが設定され、有効になっている必要があります。バックエンドでNAEが有効になっている場合、TridentでプロビジョニングされたすべてのボリュームでNAEが有効になります。詳細については、を参照してください"TridentとNVEおよびNAEとの連携"。 |
いいえ |
階層ポリシー |
「none」を使用する階層化ポリシー |
ONTAP 9.5より前のSVM-DR設定の場合は「snapshot-only」 |
「 unixPermissions 」 |
新しいボリュームのモード |
NFSボリュームの場合は「777」、SMBボリュームの場合は空(該当なし) |
「スナップショット方向」 |
にアクセスする権限を管理します。 |
NFSv4の場合は「true」NFSv3の場合は「false」 |
「 exportPolicy 」と入力します |
使用するエクスポートポリシー |
デフォルト |
'ecurityStyle' |
新しいボリュームのセキュリティ形式。NFSのサポート |
NFSのデフォルトはです |
|
カスタムボリューム名を作成するためのテンプレート。 |
"" |
TridentでQoSポリシーグループを使用するには、ONTAP 9 .8以降が必要です。共有されていないQoSポリシーグループを使用し、ポリシーグループが各コンスティチュエントに個別に適用されるようにします。QoSポリシーグループを共有すると、すべてのワークロードの合計スループットの上限が適用されます。 |
ボリュームプロビジョニングの例
デフォルトが定義されている例を次に示します。
--- version: 1 storageDriverName: ontap-nas backendName: customBackendName managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 labels: k8scluster: dev1 backend: dev1-nasbackend svm: trident_svm username: cluster-admin password: <password> limitAggregateUsage: 80% limitVolumeSize: 50Gi nfsMountOptions: nfsvers=4 debugTraceFlags: api: false method: true defaults: spaceReserve: volume qosPolicy: premium exportPolicy: myk8scluster snapshotPolicy: default snapshotReserve: '10'
と `ontap-nas-flexgroups`については、 `ontap-nas`Trident新しい計算式を使用して、FlexVolがsnapshotReserveの割合とPVCで正しくサイジングされるようになりました。ユーザがPVCを要求すると、Tridentは新しい計算を使用して、より多くのスペースを持つ元のFlexVolを作成します。この計算により、ユーザは要求された PVC 内の書き込み可能なスペースを受信し、要求されたスペースよりも少ないスペースを確保できます。v21.07 より前のバージョンでは、ユーザが PVC を要求すると( 5GiB など)、 snapshotReserve が 50% に設定されている場合、書き込み可能なスペースは 2.5GiB のみになります。これは、ユーザが要求したのはボリューム全体であり、その割合であるため `snapshotReserve`です。Trident 21.07では、ユーザが要求するのは書き込み可能なスペースであり、Tridentではボリューム全体に対する割合として定義されます。 `snapshotReserve`これはには適用されませ `ontap-nas-economy`ん。この機能の仕組みについては、次の例を参照してください。
計算は次のとおりです。
Total volume size = (PVC requested size) / (1 - (snapshotReserve percentage) / 100)
snapshotReserve = 50% 、 PVC 要求 = 5GiB の場合、ボリュームの合計サイズは 2/0.5 = 10GiB であり、使用可能なサイズは 5GiB であり、これが PVC 要求で要求されたサイズです。volume show コマンドは ' 次の例のような結果を表示する必要があります
以前のインストールからの既存のバックエンドでは、Tridentのアップグレード時に前述のようにボリュームがプロビジョニングされます。アップグレード前に作成したボリュームについては、変更が反映されるようにボリュームのサイズを変更する必要があります。たとえば、以前のと2GiBのPVCで `snapshotReserve=50`は、1GiBの書き込み可能なスペースを提供するボリュームが作成されました。たとえば、ボリュームのサイズを 3GiB に変更すると、アプリケーションの書き込み可能なスペースが 6GiB のボリュームで 3GiB になります。
最小限の設定例
次の例は、ほとんどのパラメータをデフォルトのままにする基本的な設定を示しています。これは、バックエンドを定義する最も簡単な方法です。
ネットアップ ONTAP で Trident を使用している場合は、 IP アドレスではなく LIF の DNS 名を指定することを推奨します。 |
ONTAP NASエコノミーの例
--- version: 1 storageDriverName: ontap-nas-economy managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 svm: svm_nfs username: vsadmin password: password
ONTAP NAS FlexGroupの例
--- version: 1 storageDriverName: ontap-nas-flexgroup managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 svm: svm_nfs username: vsadmin password: password
MetroClusterの例
スイッチオーバーやスイッチバックの実行中にバックエンド定義を手動で更新する必要がないようにバックエンドを設定できます。 "SVMのレプリケーションとリカバリ"。
シームレスなスイッチオーバーとスイッチバックを実現するには、 managementLIF
を省略します。 dataLIF
および svm
パラメータ例:
--- version: 1 storageDriverName: ontap-nas managementLIF: 192.168.1.66 username: vsadmin password: password
SMBボリュームの例
--- version: 1 backendName: ExampleBackend storageDriverName: ontap-nas managementLIF: 10.0.0.1 nasType: smb securityStyle: ntfs unixPermissions: "" dataLIF: 10.0.0.2 svm: svm_nfs username: vsadmin password: password
証明書ベースの認証の例
これは、バックエンドの最小限の設定例です。 clientCertificate
、 clientPrivateKey`および `trustedCACertificate
(信頼されたCAを使用している場合はオプション)がに入力されます backend.json
およびは、クライアント証明書、秘密鍵、信頼されたCA証明書のbase64エンコード値をそれぞれ取得します。
--- version: 1 backendName: DefaultNASBackend storageDriverName: ontap-nas managementLIF: 10.0.0.1 dataLIF: 10.0.0.15 svm: nfs_svm clientCertificate: ZXR0ZXJwYXB...ICMgJ3BhcGVyc2 clientPrivateKey: vciwKIyAgZG...0cnksIGRlc2NyaX trustedCACertificate: zcyBbaG...b3Igb3duIGNsYXNz storagePrefix: myPrefix_
自動エクスポートポリシーの例
この例は、動的なエクスポートポリシーを使用してエクスポートポリシーを自動的に作成および管理するようにTridentに指示する方法を示しています。これは、ドライバと `ontap-nas-flexgroup`ドライバで同じように機能し `ontap-nas-economy`ます。
--- version: 1 storageDriverName: ontap-nas managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 svm: svm_nfs labels: k8scluster: test-cluster-east-1a backend: test1-nasbackend autoExportPolicy: true autoExportCIDRs: - 10.0.0.0/24 username: admin password: password nfsMountOptions: nfsvers=4
IPv6アドレスの例
この例は、を示しています managementLIF
IPv6アドレスを使用している。
--- version: 1 storageDriverName: ontap-nas backendName: nas_ipv6_backend managementLIF: "[5c5d:5edf:8f:7657:bef8:109b:1b41:d491]" labels: k8scluster: test-cluster-east-1a backend: test1-ontap-ipv6 svm: nas_ipv6_svm username: vsadmin password: password
SMBボリュームを使用したAmazon FSx for ONTAPの例
。 smbShare
SMBボリュームを使用するFSx for ONTAPの場合、パラメータは必須です。
--- version: 1 backendName: SMBBackend storageDriverName: ontap-nas managementLIF: example.mgmt.fqdn.aws.com nasType: smb dataLIF: 10.0.0.15 svm: nfs_svm smbShare: smb-share clientCertificate: ZXR0ZXJwYXB...ICMgJ3BhcGVyc2 clientPrivateKey: vciwKIyAgZG...0cnksIGRlc2NyaX trustedCACertificate: zcyBbaG...b3Igb3duIGNsYXNz storagePrefix: myPrefix_
nameTemplateを使用したバックエンド構成の例
--- version: 1 storageDriverName: ontap-nas backendName: ontap-nas-backend managementLIF: <ip address> svm: svm0 username: <admin> password: <password> defaults: { "nameTemplate": "{{.volume.Name}}_{{.labels.cluster}}_{{.volume.Namespace}}_{{.volume.RequestName}}" }, "labels": {"cluster": "ClusterA", "PVC": "{{.volume.Namespace}}_{{.volume.RequestName}}"}
仮想プールを使用するバックエンドの例
以下に示すサンプルのバックエンド定義ファイルでは、次のような特定のデフォルトがすべてのストレージプールに設定されています。 spaceReserve
「なし」の場合は、 spaceAllocation
との誤り encryption
実行されます。仮想プールは、ストレージセクションで定義します。
Tridentでは、[Comments]フィールドにプロビジョニングラベルが設定されます。コメントは、のFlexVolまたはのFlexGroup ontap-nas-flexgroup`で設定します `ontap-nas
。Tridentは、仮想プールに存在するすべてのラベルをプロビジョニング時にストレージボリュームにコピーします。ストレージ管理者は、仮想プールごとにラベルを定義したり、ボリュームをラベルでグループ化したりできます。
これらの例では、一部のストレージプールが独自の spaceReserve
、 spaceAllocation`および `encryption
値、および一部のプールはデフォルト値よりも優先されます。
ONTAP NASの例
--- version: 1 storageDriverName: ontap-nas managementLIF: 10.0.0.1 svm: svm_nfs username: admin password: <password> nfsMountOptions: nfsvers=4 defaults: spaceReserve: none encryption: 'false' qosPolicy: standard labels: store: nas_store k8scluster: prod-cluster-1 region: us_east_1 storage: - labels: app: msoffice cost: '100' zone: us_east_1a defaults: spaceReserve: volume encryption: 'true' unixPermissions: '0755' adaptiveQosPolicy: adaptive-premium - labels: app: slack cost: '75' zone: us_east_1b defaults: spaceReserve: none encryption: 'true' unixPermissions: '0755' - labels: department: legal creditpoints: '5000' zone: us_east_1b defaults: spaceReserve: none encryption: 'true' unixPermissions: '0755' - labels: app: wordpress cost: '50' zone: us_east_1c defaults: spaceReserve: none encryption: 'true' unixPermissions: '0775' - labels: app: mysqldb cost: '25' zone: us_east_1d defaults: spaceReserve: volume encryption: 'false' unixPermissions: '0775'
ONTAP NAS FlexGroupの例
--- version: 1 storageDriverName: ontap-nas-flexgroup managementLIF: 10.0.0.1 svm: svm_nfs username: vsadmin password: <password> defaults: spaceReserve: none encryption: 'false' labels: store: flexgroup_store k8scluster: prod-cluster-1 region: us_east_1 storage: - labels: protection: gold creditpoints: '50000' zone: us_east_1a defaults: spaceReserve: volume encryption: 'true' unixPermissions: '0755' - labels: protection: gold creditpoints: '30000' zone: us_east_1b defaults: spaceReserve: none encryption: 'true' unixPermissions: '0755' - labels: protection: silver creditpoints: '20000' zone: us_east_1c defaults: spaceReserve: none encryption: 'true' unixPermissions: '0775' - labels: protection: bronze creditpoints: '10000' zone: us_east_1d defaults: spaceReserve: volume encryption: 'false' unixPermissions: '0775'
ONTAP NASエコノミーの例
--- version: 1 storageDriverName: ontap-nas-economy managementLIF: 10.0.0.1 svm: svm_nfs username: vsadmin password: <password> defaults: spaceReserve: none encryption: 'false' labels: store: nas_economy_store region: us_east_1 storage: - labels: department: finance creditpoints: '6000' zone: us_east_1a defaults: spaceReserve: volume encryption: 'true' unixPermissions: '0755' - labels: protection: bronze creditpoints: '5000' zone: us_east_1b defaults: spaceReserve: none encryption: 'true' unixPermissions: '0755' - labels: department: engineering creditpoints: '3000' zone: us_east_1c defaults: spaceReserve: none encryption: 'true' unixPermissions: '0775' - labels: department: humanresource creditpoints: '2000' zone: us_east_1d defaults: spaceReserve: volume encryption: 'false' unixPermissions: '0775'
バックエンドを StorageClasses にマッピングします
次のStorageClass定義は、を参照してください。 仮想プールを使用するバックエンドの例。を使用する parameters.selector
フィールドでは、各StorageClassがボリュームのホストに使用できる仮想プールを呼び出します。ボリュームには、選択した仮想プール内で定義された要素があります。
-
。
protection-gold
StorageClassは、ontap-nas-flexgroup
バックエンド:ゴールドレベルの保護を提供する唯一のプールです。apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: protection-gold provisioner: csi.trident.netapp.io parameters: selector: "protection=gold" fsType: "ext4"
-
。
protection-not-gold
StorageClassは、内の3番目と4番目の仮想プールにマッピングされます。ontap-nas-flexgroup
バックエンド:金色以外の保護レベルを提供する唯一のプールです。apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: protection-not-gold provisioner: csi.trident.netapp.io parameters: selector: "protection!=gold" fsType: "ext4"
-
。
app-mysqldb
StorageClassは内の4番目の仮想プールにマッピングされます。ontap-nas
バックエンド:これは、mysqldbタイプアプリ用のストレージプール構成を提供する唯一のプールです。apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: app-mysqldb provisioner: csi.trident.netapp.io parameters: selector: "app=mysqldb" fsType: "ext4"
-
[t]
protection-silver-creditpoints-20k
StorageClassは、ontap-nas-flexgroup
バックエンド:シルバーレベルの保護と20000クレジットポイントを提供する唯一のプールです。apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: protection-silver-creditpoints-20k provisioner: csi.trident.netapp.io parameters: selector: "protection=silver; creditpoints=20000" fsType: "ext4"
-
。
creditpoints-5k
StorageClassは、ontap-nas
バックエンドと内の2番目の仮想プールontap-nas-economy
バックエンド:これらは、5000クレジットポイントを持つ唯一のプールオファリングです。apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: creditpoints-5k provisioner: csi.trident.netapp.io parameters: selector: "creditpoints=5000" fsType: "ext4"
Tridentが選択する仮想プールを決定し、ストレージ要件が満たされるようにします。
更新 dataLIF
初期設定後
初期設定後にデータLIFを変更するには、次のコマンドを実行して、更新されたデータLIFを新しいバックエンドJSONファイルに指定します。
tridentctl update backend <backend-name> -f <path-to-backend-json-file-with-updated-dataLIF>
PVCが1つ以上のポッドに接続されている場合は、対応するすべてのポッドを停止してから、新しいデータLIFを有効にするために稼働状態に戻す必要があります。 |