Konfigurieren eines Azure NetApp Files-Backends
Sie können Azure NetApp Files als Backend für Trident konfigurieren. Sie können NFS- und SMB-Volumes mithilfe eines Azure NetApp Files-Backends einbinden. Trident unterstützt außerdem die Anmeldeinformationsverwaltung mithilfe verwalteter Identitäten für Azure Kubernetes Services (AKS)-Cluster.
Azure NetApp Files-Treiberdetails
Trident stellt die folgenden Azure NetApp Files-Speichertreiber zur Kommunikation mit dem Cluster bereit. Unterstützte Zugriffsmodi sind: ReadWriteOnce (RWO), ReadOnlyMany (ROX), ReadWriteMany (RWX), ReadWriteOncePod (RWOP).
| Treiber | Protokoll | volumeMode | Unterstützte Zugriffsmodi | Unterstützte Dateisysteme |
|---|---|---|---|---|
|
NFS SMB |
Dateisystem |
RWO, ROX, RWX, RWOP |
|
Überlegungen
-
Der Azure NetApp Files Service unterstützt keine Volumes kleiner als 50 GiB. Trident erstellt automatisch 50-GiB-Volumes, wenn ein kleineres Volume angefordert wird.
-
Trident unterstützt SMB-Volumes, die nur auf Pods mit Windows-Knoten eingebunden sind.
Verwaltete Identitäten für AKS
Trident unterstützt "verwaltete Identitäten" für Azure Kubernetes Services-Cluster. Um die Vorteile der optimierten Anmeldeinformationsverwaltung durch verwaltete Identitäten nutzen zu können, müssen Sie Folgendes haben:
-
Ein mit AKS bereitgestellter Kubernetes-Cluster
-
Auf dem AKS kubernetes cluster konfigurierte verwaltete Identitäten
-
Trident installiert, das die
cloudProviderzum Angeben"Azure"enthält.Trident OperatorUm Trident mithilfe des Trident-Operators zu installieren, bearbeiten Sie
tridentorchestrator_cr.yamlund setzen SiecloudProviderauf"Azure". Zum Beispiel:apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullPolicy: IfNotPresent cloudProvider: "Azure"HelmDas folgende Beispiel installiert Trident sets
cloudProviderauf Azure mithilfe der Umgebungsvariable$CP:helm install trident trident-operator-100.2506.0.tgz --create-namespace --namespace <trident-namespace> --set cloudProvider=$CP
<code>tridentctl</code>Das folgende Beispiel installiert Trident und setzt die
cloudProvider-Flag aufAzure:tridentctl install --cloud-provider="Azure" -n trident
Cloud-Identität für AKS
Cloud identity ermöglicht es Kubernetes-Pods, auf Azure-Ressourcen zuzugreifen, indem sie sich als Workload-Identität authentifizieren, anstatt explizite Azure-Anmeldeinformationen anzugeben.
Um die Vorteile der Cloud-Identität in Azure zu nutzen, müssen Sie Folgendes haben:
-
Ein mit AKS bereitgestellter Kubernetes-Cluster
-
Workload-Identität und oidc-issuer auf dem AKS Kubernetes-Cluster konfiguriert
-
Trident ist installiert und beinhaltet die
cloudProviderMöglichkeit"Azure"undcloudIdentityAngabe der Workload-IdentitätTrident OperatorUm Trident mit dem Trident-Operator zu installieren, bearbeiten Sie
tridentorchestrator_cr.yaml, umcloudProviderauf"Azure"zu setzen undcloudIdentityaufazure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxzu setzen.Beispiel:
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' # EditHelmLegen Sie die Werte für die Flags cloud-provider (CP) und cloud-identity (CI) mithilfe der folgenden Umgebungsvariablen fest:
export CP="Azure"
export CI="'azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx'"Das folgende Beispiel installiert Trident und setzt
cloudProviderauf Azure mithilfe der Umgebungsvariablen$CPund setzt dascloudIdentitymithilfe der Umgebungsvariablen$CI:helm install trident trident-operator-100.6.0.tgz --set cloudProvider=$CP --set cloudIdentity="$CI"
<code>tridentctl</code>Legen Sie die Werte für die Flags cloud provider und cloud identity mithilfe der folgenden Umgebungsvariablen fest:
export CP="Azure"
export CI="azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx"Das folgende Beispiel installiert Trident und setzt das
cloud-providerFlag auf$CP, undcloud-identityauf$CI:tridentctl install --cloud-provider=$CP --cloud-identity="$CI" -n trident