ストレージバックエンドを設定する
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 tridenttridentbackendconfig.trident.netapp.io/backend-tbc-ontap-nas created
-
Trident バックエンド構成(TBC)が正常に作成されたことを確認します:
Kubectl get tbc -n tridentNAME 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-economy:プロビジョニングされた各PVは、Amazon FSx for NetApp ONTAP ボリュームあたりのLUN数を設定可能なLUNです。 -
ontap-nas-economy:プロビジョニングされた各PVはqtreeで、Amazon FSx for NetApp ONTAP volumeあたりのqtree数は設定可能です。 -
ontap-nas-flexgroup:プロビジョニングされた各PVは、完全なAmazon FSx for NetApp ONTAP FlexGroupボリュームです。
ドライバーの詳細については、"NAS ドライバー"および"SANドライバー"を参照してください。
設定ファイルが作成されたら、次のコマンドを実行して 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 |
|
|
ストレージドライバーの名前 |
|
|
カスタム名またはストレージバックエンド |
ドライバー名 + "_" + dataLIF |
|
クラスタまたはSVM管理LIFのIPアドレス(完全修飾ドメイン名(FQDN)も指定可能)TridentをIPv6フラグを使用してインストールした場合、IPv6アドレスを使用するように設定できます。IPv6アドレスは、[28e8:d9fb:a825:b7bf:69a8:d02f:9e7b:3555]のように角括弧で定義する必要があります。もし `fsxFilesystemID`を `aws`フィールドの下で指定した場合、 `managementLIF`を指定する必要はありません。なぜならTridentがAWSからSVM `managementLIF`情報を取得するためです。したがって、SVM配下のユーザー(例:vsadmin)の認証情報を必ず指定し、そのユーザーが `vsadmin`ロールを持っている必要があります。 |
"10.0.0.1"、"[2001:1234:abcd::fefe]" |
|
プロトコル LIF の IP アドレス。ONTAP NAS ドライバー:NetApp では dataLIF を指定することを推奨しています。指定しない場合、 Trident は SVM から dataLIF を取得します。NFS マウント操作に使用する完全修飾ドメイン名( FQDN )を指定できます。これにより、複数の dataLIF 間で負荷を分散するラウンドロビン DNS を作成できます。初期設定後に変更できます。を参照してください。ONTAP SAN ドライバー: iSCSI には指定しないでください。Trident は ONTAP Selective LUN Map を使用して、マルチパス セッションの確立に必要な iSCI LIF を検出します。dataLIF が明示的に定義されている場合は警告が生成されます。Trident が IPv6 フラグを使用してインストールされている場合は、 IPv6 アドレスを使用するように設定できます。IPv6 アドレスは、 [28e8:d9fb:a825:b7bf:69a8:d02f:9e7b:3555] のように角括弧で定義する必要があります。 |
|
|
自動エクスポート ポリシーの作成と更新を有効にします [ブール値]。 `autoExportPolicy`および `autoExportCIDRs`オプションを使用すると、Tridentはエクスポート ポリシーを自動的に管理できます。 |
|
|
`autoExportPolicy`が有効になっている場合にKubernetesのノードIPをフィルタリングするためのCIDRのリスト。 `autoExportPolicy`および `autoExportCIDRs`オプションを使用すると、Tridentはエクスポート ポリシーを自動的に管理できます。 |
"["0.0.0.0/0", "::/0"]" |
|
ボリュームに適用する任意の JSON 形式のラベルのセット |
"" |
|
クライアント証明書の Base64 エンコードされた値。証明書ベースの認証に使用 |
"" |
|
クライアント秘密キーの Base64 エンコードされた値。証明書ベースの認証に使用 |
"" |
|
信頼された CA 証明書の Base64 エンコードされた値。オプション。証明書ベースの認証に使用されます。 |
"" |
|
クラスタまたは SVM に接続するためのユーザー名。資格情報ベースの認証に使用されます。たとえば、vsadmin。 |
|
|
クラスターまたは SVM に接続するためのパスワード。クレデンシャルベースの認証に使用されます。 |
|
|
使用するStorage Virtual Machine |
SVM 管理 LIF が指定されている場合に派生されます。 |
|
SVM で新しいボリュームをプロビジョニングするときに使用されるプレフィックス。作成後は変更できません。このパラメータを更新するには、新しいバックエンドを作成する必要があります。 |
|
|
*Amazon FSx for NetApp ONTAP には指定しないでください。*提供された `fsxadmin`と `vsadmin`には、Trident を使用してアグリゲートの使用状況を取得して制限するために必要な権限が含まれていません。 |
使用しないでください。 |
|
要求されたボリューム サイズがこの値を超える場合、プロビジョニングは失敗します。また、qtreeとLUNを管理するボリュームの最大サイズを制限し、 `qtreesPerFlexvol`オプションにより、FlexVol volumeあたりのqtreeの最大数をカスタマイズできます |
""(デフォルトでは強制されません) |
|
FlexVol volumeあたりの最大LUN数は、[50、200]の範囲にする必要があります。SANのみ。 |
“100” |
|
トラブルシューティング時に使用するデバッグ フラグ。例:{"api":false, "method":true} `debugTraceFlags`を使用しないでください。ただし、トラブルシューティングを行っており、詳細なログ ダンプが必要な場合を除きます。 |
null |
|
NFS マウント オプションのコンマ区切りリスト。Kubernetes 永続ボリュームのマウント オプションは通常ストレージ クラスで指定されますが、ストレージ クラスでマウント オプションが指定されていない場合、Trident はストレージ バックエンドの構成ファイルで指定されたマウント オプションを使用するようになります。ストレージ クラスまたは構成ファイルにマウント オプションが指定されていない場合、Trident は関連付けられている永続ボリュームにマウント オプションを設定しません。 |
"" |
|
NFS または SMB ボリュームの作成を設定します。オプションは |
|
|
FlexVol volume あたりの最大 qtree 数は、[50, 300] の範囲内である必要があります |
|
|
次のいずれかを指定できます:Microsoft 管理コンソールまたは ONTAP CLI を使用して作成された SMB 共有の名前、または Trident が SMB 共有を作成できるようにするための名前。このパラメータは、Amazon FSx for NetApp ONTAP バックエンドに必要です。 |
|
|
ONTAP REST APIを使用するためのブーリアン パラメータ。 `true`に設定すると、TridentはONTAP REST APIを使用してバックエンドと通信します。この機能にはONTAP 9.11.1以降が必要です。さらに、使用するONTAPログインロールには、 `ontap`アプリケーションへのアクセス権が必要です。これは、事前定義された `vsadmin`および `cluster-admin`ロールで満たされます。 |
|
|
AWS FSx for ONTAP の設定ファイルでは以下を指定できます: |
|
|
AWS Secrets Manager に保存する FSx SVM 認証情報を指定します。- |
ボリュームのプロビジョニング用のバックエンド設定オプション
デフォルトのプロビジョニングは、設定の `defaults`セクションにあるこれらのオプションを使用して制御できます。例については、以下の設定例を参照してください。
| パラメータ | 概要 | デフォルト |
|---|---|---|
|
LUNのスペース割り当て |
|
|
スペース予約モード:「none」(シン)または「volume」(シック) |
|
|
使用するSnapshotポリシー |
|
|
作成されたボリュームに割り当てる QoS ポリシー グループ。ストレージ プールまたはバックエンドごとにqosPolicyまたはadaptiveQosPolicyのいずれかを選択してください。Trident で QoS ポリシー グループを使用するには、ONTAP 9.8 以降が必要です。共有されていない QoS ポリシー グループを使用し、ポリシー グループが各構成要素に個別に適用されるようにする必要があります。共有 QoS ポリシー グループは、すべてのワークロードの合計スループットの上限を適用します。 |
"" |
|
作成されたボリュームに割り当てるアダプティブ QoS ポリシー グループ。ストレージ プールまたはバックエンドごとにqosPolicyまたはadaptiveQosPolicyのいずれかを選択してください。ontap-nas-economy ではサポートされていません。 |
"" |
|
スナップショット用に予約されているボリュームの割合「0」 |
もし |
|
作成時にクローンを親から分離する |
|
|
新しいボリュームでNetApp Volume Encryption(NVE)を有効にします。デフォルトは `false`です。このオプションを使用するには、NVEのライセンスを取得し、クラスタで有効にする必要があります。バックエンドでNAEが有効になっている場合、TridentでプロビジョニングされたボリュームはすべてNAEが有効になります。詳細については、次を参照してください:"Tridentと NVE および NAE の連携"。 |
|
|
LUKS 暗号化を有効にします。"Linux Unified Key Setup(LUKS)を使用する"を参照してください。SAN のみ。 |
"" |
|
使用する階層化ポリシー |
|
|
新しいボリュームのモード。SMB ボリュームの場合は空白のままにします。 |
"" |
|
新しいボリュームのセキュリティ スタイル。NFSは `mixed`および `unix`セキュリティ スタイルをサポートします。SMBは `mixed`および `ntfs`セキュリティ スタイルをサポートします。 |
NFSのデフォルトは `unix`です。SMBのデフォルトは `ntfs`です。 |
SMB ボリュームのプロビジョニング
`ontap-nas`ドライバを使用してSMBボリュームをプロビジョニングできます。<<ONTAP SAN および NAS ドライバの統合>>を完了する前に、次の手順を実行します(link:https://docs.netapp.com/us-en/trident/trident-use/worker-node-prep.html#prepare-to-provision-smb-volumes["SMB ボリュームのプロビジョニングの準備"])。