ストレージバックエンドの設定
ONTAP SANとNASドライバの統合
ストレージバックエンドを作成するには、JSONまたはYAML形式の構成ファイルを作成する必要があります。ファイルには、使用するストレージのタイプ(NASまたはSAN)、ファイルの取得元のファイルシステム、SVM、およびその認証方法を指定する必要があります。次の例は、NASベースのストレージを定義し、AWSシークレットを使用して使用するSVMにクレデンシャルを格納する方法を示しています。
apiVersion: trident.netapp.io/v1
kind: TridentBackendConfig
metadata:
name: backend-tbc-ontap-nas
namespace: trident
spec:
version: 1
storageDriverName: ontap-nas
backendName: tbc-ontap-nas
svm: svm-name
aws:
fsxFilesystemID: fs-xxxxxxxxxx
credentials:
name: "arn:aws:secretsmanager:us-west-2:xxxxxxxx:secret:secret-name"
type: awsarn
{
"apiVersion": "trident.netapp.io/v1",
"kind": "TridentBackendConfig",
"metadata": {
"name": "backend-tbc-ontap-nas"
"namespace": "trident"
},
"spec": {
"version": 1,
"storageDriverName": "ontap-nas",
"backendName": "tbc-ontap-nas",
"svm": "svm-name",
"aws": {
"fsxFilesystemID": "fs-xxxxxxxxxx"
},
"managementLIF": null,
"credentials": {
"name": "arn:aws:secretsmanager:us-west-2:xxxxxxxx:secret:secret-name",
"type": "awsarn"
}
}
}
次のコマンドを実行して、Tridentバックエンド構成(TBC)を作成および検証します。
-
YAMLファイルからTridentバックエンド構成(TBC)を作成し、次のコマンドを実行します。
kubectl create -f backendconfig.yaml -n trident
tridentbackendconfig.trident.netapp.io/backend-tbc-ontap-nas created
-
Tridentバックエンド構成(TBC)が正常に作成されたことを確認します。
Kubectl get tbc -n trident
NAME BACKEND NAME BACKEND UUID PHASE STATUS backend-tbc-ontap-nas tbc-ontap-nas 933e0071-66ce-4324-b9ff-f96d916ac5e9 Bound Success
FSx for ONTAPドライバの詳細
次のドライバを使用して、TridentとAmazon FSx for NetApp ONTAPを統合できます。
-
ontap-san
:プロビジョニングされる各PVは、それぞれのAmazon FSx for NetApp ONTAPボリューム内のLUNです。ブロックストレージに推奨されます。 -
ontap-nas
:プロビジョニングされる各PVは、完全なAmazon FSx for NetApp ONTAPボリュームです。NFSとSMBで推奨されます。 -
「 ONTAP と SAN の経済性」:プロビジョニングされた各 PV は、 NetApp ONTAP ボリュームの Amazon FSX ごとに構成可能な数の LUN を持つ LUN です。
-
「 ONTAP-NAS-エコノミー 」:プロビジョニングされた各 PV は qtree であり、 NetApp ONTAP ボリュームの Amazon FSX ごとに設定可能な数の qtree があります。
-
「 ONTAP-NAS-flexgroup 」:プロビジョニングされた各 PV は、 NetApp ONTAP FlexGroup ボリューム用の完全な Amazon FSX です。
構成ファイルが作成されたら、次のコマンドを実行してEKS内に作成します。
kubectl create -f configuration_file
ステータスを確認するには、次のコマンドを実行します。
kubectl get tbc -n trident
NAME BACKEND NAME BACKEND UUID PHASE STATUS backend-fsx-ontap-nas backend-fsx-ontap-nas 7a551921-997c-4c37-a1d1-f2f4c87fa629 Bound Success
バックエンドの高度な設定と例
バックエンド設定オプションについては、次の表を参照してください。
パラメータ | 説明 | 例 |
---|---|---|
「バージョン」 |
常に 1 |
|
'torageDriverName' |
ストレージドライバの名前 |
|
backendName` |
カスタム名またはストレージバックエンド |
ドライバ名+"_"+ dataLIF |
「管理 LIF 」 |
クラスタまたはSVM管理LIFのIPアドレス完全修飾ドメイン名(FQDN)を指定できます。IPv6フラグを使用してTridentがインストールされている場合は、IPv6アドレスを使用するように設定できます。IPv6アドレスは、[28e8:d9fb:a825:b7bf:69a8:d02f:9e7b:3555]などの角かっこで定義する必要があります。 |
"10.0.0.1 ","[2001:1234:abcd::fe]" |
「重複排除 |
プロトコル LIF の IP アドレス。* ONTAP NASドライバ*:NetAppではdataLIFの指定を推奨しています。指定しない場合、TridentはSVMからデータLIFをフェッチします。NFSのマウント処理に使用するFully Qualified Domain Name(FQDN;完全修飾ドメイン名)を指定すると、ラウンドロビンDNSを作成して複数のデータLIF間で負荷を分散できます。初期設定後に変更できます。を参照してください 。* ONTAP SANドライバ*: iSCSIには指定しないでくださいTridentは、ONTAP選択的LUNマップを使用して、マルチパスセッションの確立に必要なiSCI LIFを検出します。データLIFが明示的に定義されている場合は警告が生成されます。IPv6フラグを使用してTridentがインストールされている場合は、IPv6アドレスを使用するように設定できます。IPv6アドレスは、[28e8:d9fb:a825:b7bf:69a8:d02f:9e7b:3555]などの角かっこで定義する必要があります。 |
|
「 autoExportPolicy 」を参照してください |
エクスポートポリシーの自動作成と更新を有効にします[ブーリアン]。オプションと `autoExportCIDRs`オプションを使用する `autoExportPolicy`と、Tridentでエクスポートポリシーを自動的に管理できます。 |
「偽」 |
「 autoExportCI` 」 |
が有効な場合にKubernetesのノードIPをフィルタリングするCIDRのリスト |
"["0.0.0.0/0"、"::/0"]" |
「ラベル」 |
ボリュームに適用する任意の JSON 形式のラベルのセット |
"" |
「 clientCertificate 」をクリックします |
クライアント証明書の Base64 エンコード値。証明書ベースの認証に使用されます |
"" |
「 clientPrivateKey 」 |
クライアント秘密鍵の Base64 エンコード値。証明書ベースの認証に使用されます |
"" |
「 trustedCacertifate 」 |
信頼された CA 証明書の Base64 エンコード値。任意。証明書ベースの認証に使用されます。 |
"" |
「ユーザ名」 |
クラスタまたはSVMに接続するためのユーザ名。クレデンシャルベースの認証に使用されます。たとえば、vsadminのように指定します。 |
|
「 password 」と入力します |
クラスタまたはSVMに接続するためのパスワード。クレデンシャルベースの認証に使用されます。 |
|
'VM' |
使用する Storage Virtual Machine |
SVM管理LIFが指定されている場合に生成されます。 |
'toragePrefix' |
SVM で新しいボリュームをプロビジョニングする際に使用するプレフィックスを指定します。作成後に変更することはできません。このパラメータを更新するには、新しいバックエンドを作成する必要があります。 |
|
「 AggreglimitateUsage 」と入力します |
* Amazon FSx for NetApp ONTAPには指定しないでください。*指定されたと |
使用しないでください。 |
「 limitVolumeSize 」と入力します |
要求されたボリュームサイズがこの値を超えている場合、プロビジョニングが失敗します。また、qtreeおよびLUNに対して管理するボリュームの最大サイズを制限し、オプションを使用すると、FlexVol volumeあたりのqtreeの最大数をカスタマイズできます。 |
"" (デフォルトでは適用されません) |
'lunsPerFlexvol |
FlexVol volumeあたりの最大LUN数は[50、200]の範囲で指定する必要があります。SANのみ。 |
“100” |
「バグトレースフラグ」 |
トラブルシューティング時に使用するデバッグフラグ。例:{"api":false、"method":true} |
null |
「 nfsvMountOptions 」のように入力します |
NFSマウントオプションをカンマで区切ったリスト。Kubernetes永続ボリュームのマウントオプションは通常ストレージクラスで指定されますが、ストレージクラスにマウントオプションが指定されていない場合、Tridentはストレージバックエンドの構成ファイルに指定されているマウントオプションを使用してフォールバックします。ストレージクラスまたは構成ファイルでマウントオプションが指定されていない場合、Tridentは関連付けられた永続ボリュームにマウントオプションを設定しません。 |
"" |
|
NFSボリュームまたはSMBボリュームの作成を設定オプションはです |
|
qtreesPerFlexvol` |
FlexVol volumeあたりの最大qtree数は[50、300]の範囲で指定する必要があります。 |
|
|
次のいずれかを指定できます。Microsoft管理コンソールまたはONTAP CLIを使用して作成されたSMB共有の名前、またはTridentにSMB共有の作成を許可する名前。このパラメータは、Amazon FSx for ONTAPバックエンドに必要です。 |
|
「 useREST` 」 |
ONTAP REST API を使用するためのブーリアンパラメータ。に設定する |
「偽」 |
|
AWS FSx for ONTAPの構成ファイルでは、次の項目を指定できます。 |
|
|
AWS Secrets Managerに保存するFSx SVMのクレデンシャルを指定します。- |
ボリュームのプロビジョニング用のバックエンド構成オプション
これらのオプションを使用して、のデフォルトプロビジョニングを制御できます defaults
設定のセクション。例については、以下の設定例を参照してください。
パラメータ | 説明 | デフォルト |
---|---|---|
「平和の配分」 |
space-allocation for LUN のコマンドを指定します |
「真」 |
「平和のための準備」を参照してください |
スペースリザベーションモード:「none」(シン)または「volume」(シック) |
「 NONE 」 |
「ナプショットポリシー」 |
使用する Snapshot ポリシー |
「 NONE 」 |
「 QOSPolicy 」 |
作成したボリュームに割り当てる QoS ポリシーグループ。ストレージプールまたはバックエンドごとに、QOSPolicyまたはadaptiveQosPolicyのいずれかを選択します。TridentでQoSポリシーグループを使用するには、ONTAP 9 .8以降が必要です。共有されていないQoSポリシーグループを使用し、ポリシーグループが各コンスティチュエントに個別に適用されるようにします。QoSポリシーグループを共有すると、すべてのワークロードの合計スループットの上限が適用されます。 |
"" |
「 adaptiveQosPolicy 」を参照してください |
アダプティブ QoS ポリシーグループ:作成したボリュームに割り当てます。ストレージプールまたはバックエンドごとに、QOSPolicyまたはadaptiveQosPolicyのいずれかを選択します。経済性に影響する ONTAP - NAS ではサポートされません。 |
"" |
「スナップショット予約」 |
Snapshot「0」用にリザーブされているボリュームの割合 |
がの |
'plitOnClone |
作成時にクローンを親からスプリットします |
「偽」 |
「暗号化」 |
新しいボリュームでNetApp Volume Encryption(NVE)を有効にします。デフォルトはです。 `false`このオプションを使用するには、クラスタで NVE のライセンスが設定され、有効になっている必要があります。バックエンドでNAEが有効になっている場合、TridentでプロビジョニングされたすべてのボリュームでNAEが有効になります。詳細については、を参照してください"TridentとNVEおよびNAEとの連携"。 |
「偽」 |
|
LUKS暗号化を有効にします。を参照してください "Linux Unified Key Setup(LUKS;統合キーセットアップ)を使用"。SANのみ。 |
"" |
階層ポリシー |
使用する階層化ポリシー |
|
「 unixPermissions 」 |
新しいボリュームのモード。* SMBボリュームは空にしておきます。* |
"" |
'ecurityStyle' |
新しいボリュームのセキュリティ形式。NFSのサポート |
NFSのデフォルトはです |
SMBボリュームをプロビジョニングする準備をします
を使用してSMBボリュームをプロビジョニングできます ontap-nas
ドライバ。をクリックしてください ONTAP SANとNASドライバの統合 次の手順を実行します。
SMBボリュームをプロビジョニングする前に ontap-nas
ドライバー、あなたは以下を持っている必要があります。
-
Linuxコントローラノードと少なくとも1つのWindowsワーカーノードでWindows Server 2019を実行しているKubernetesクラスタ。Tridentでは、Windowsノードで実行されているポッドにマウントされたSMBボリュームのみがサポートされます。
-
Active Directoryクレデンシャルを含む少なくとも1つのTridentシークレット。シークレットを生成するには
smbcreds
:kubectl create secret generic smbcreds --from-literal username=user --from-literal password='password'
-
Windowsサービスとして設定されたCSIプロキシ。を設定します `csi-proxy`を参照してください "GitHub: CSIプロキシ" または "GitHub: Windows向けCSIプロキシ" Windowsで実行されているKubernetesノードの場合。
-
SMB共有を作成SMB管理共有は、のいずれかの方法で作成できます "Microsoft管理コンソール" 共有フォルダスナップインまたはONTAP CLIを使用します。ONTAP CLIを使用してSMB共有を作成するには、次の手順を実行します
-
必要に応じて、共有のディレクトリパス構造を作成します。
。
vserver cifs share create
コマンドは、共有の作成時に-pathオプションで指定されているパスを確認します。指定したパスが存在しない場合、コマンドは失敗します。 -
指定したSVMに関連付けられているSMB共有を作成します。
vserver cifs share create -vserver vserver_name -share-name share_name -path path [-share-properties share_properties,...] [other_attributes] [-comment text]
-
共有が作成されたことを確認します。
vserver cifs share show -share-name share_name
を参照してください "SMB 共有を作成" 詳細については、
-
-
バックエンドを作成する際に、SMBボリュームを指定するように次の項目を設定する必要があります。ONTAP バックエンド構成オプションのすべてのFSXについては、を参照してください "FSX(ONTAP の構成オプションと例)"。
パラメータ 説明 例 smbShare
次のいずれかを指定できます。Microsoft管理コンソールまたはONTAP CLIを使用して作成されたSMB共有の名前、またはTridentにSMB共有の作成を許可する名前。このパラメータは、Amazon FSx for ONTAPバックエンドに必要です。
smb-share
nasType
をに設定する必要があります
smb
. nullの場合、デフォルトはですnfs
。smb
'ecurityStyle'
新しいボリュームのセキュリティ形式。をに設定する必要があります
ntfs
またはmixed
SMBボリュームntfs
またはmixed
SMBボリュームの場合「 unixPermissions 」
新しいボリュームのモード。* SMBボリュームは空にしておく必要があります。*
""