Azure NetApp Filesバックエンドを構成する
Azure NetApp Files をTridentのバックエンドとして構成できます。 Azure NetApp Filesバックエンドを使用して、NFS および SMB ボリュームを接続できます。 Trident は、 Azure Kubernetes Services (AKS) クラスターのマネージド ID を使用した資格情報の管理もサポートしています。
Azure NetApp Filesドライバーの詳細
Trident は、クラスターと通信するために次のAzure NetApp Filesストレージ ドライバーを提供します。サポートされているアクセス モードは、ReadWriteOnce (RWO)、ReadOnlyMany (ROX)、ReadWriteMany (RWX)、ReadWriteOncePod (RWOP) です。
| ドライバ | プロトコル | ボリュームモード | サポートされているアクセスモード | サポートされているファイルシステム |
|---|---|---|---|---|
|
NFS SMB |
Filesystem |
RWO、ROX、RWX、RWOP |
|
考慮事項
-
Azure NetApp Filesサービスは、50 GiB 未満のボリュームをサポートしていません。より小さいボリュームが要求された場合、 Trident は自動的に 50 GiB のボリュームを作成します。
-
Trident は、 Windows ノードで実行されているポッドにマウントされた SMB ボリュームのみをサポートします。
AKS のマネージド ID
Tridentのサポート"マネージドID"Azure Kubernetes Services クラスター用。マネージド ID によって提供される合理化された資格情報管理を活用するには、次のものが必要です。
-
AKS を使用してデプロイされた Kubernetes クラスター
-
AKS Kubernetes クラスターで構成されたマネージド ID
-
Tridentがインストールされており、
cloudProvider`指定する `"Azure"。TridentオペレーターTridentオペレータを使用してTridentをインストールするには、
tridentorchestrator_cr.yaml`設定する `cloudProvider`に `"Azure"。例えば:apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullPolicy: IfNotPresent cloudProvider: "Azure"舵次の例では、 Tridentセットをインストールします
cloudProvider`環境変数を使用してAzureへ `$CP:helm install trident trident-operator-100.2506.0.tgz --create-namespace --namespace <trident-namespace> --set cloudProvider=$CP
<code>トライデントctl</code>次の例では、 Tridentをインストールし、
cloudProvider`フラグを `Azure:tridentctl install --cloud-provider="Azure" -n trident
AKS のクラウド ID
クラウド ID を使用すると、Kubernetes ポッドは、明示的な Azure 資格情報を提供する代わりに、ワークロード ID として認証することで Azure リソースにアクセスできるようになります。
Azure でクラウド ID を活用するには、次のものが必要です。
-
AKS を使用してデプロイされた Kubernetes クラスター
-
AKS Kubernetes クラスターで構成されたワークロード ID と oidc-issuer
-
Tridentがインストールされており、 `cloudProvider`指定する `"Azure"`そして `cloudIdentity`ワークロードIDの指定
TridentオペレーターTridentオペレータを使用してTridentをインストールするには、
tridentorchestrator_cr.yaml`設定する `cloudProvider`に `"Azure"`そして設定 `cloudIdentity`に `azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx。例えば:
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullPolicy: IfNotPresent cloudProvider: "Azure" cloudIdentity: 'azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx' # Edit舵次の環境変数を使用して、cloud-provider (CP) および cloud-identity (CI) フラグの値を設定します。
export CP="Azure"
export CI="'azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx'"次の例では、 Tridentをインストールし、
cloudProvider`環境変数を使用してAzureへ `$CP`そして、 `cloudIdentity`環境変数を使用する `$CI:helm install trident trident-operator-100.6.0.tgz --set cloudProvider=$CP --set cloudIdentity="$CI"
<code>トライデントctl</code>次の環境変数を使用して、クラウド プロバイダー および クラウド ID フラグの値を設定します。
export CP="Azure"
export CI="azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx"次の例では、 Tridentをインストールし、
cloud-provider`フラグを `$CP、 そしてcloud-identity`に `$CI:tridentctl install --cloud-provider=$CP --cloud-identity="$CI" -n trident