Skip to main content
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Bereiten Sie die Konfiguration eines Azure NetApp Files -Backends vor.

Beitragende netapp-aruldeepa

Bevor Sie Ihr Azure NetApp Files Backend konfigurieren können, müssen Sie sicherstellen, dass die folgenden Anforderungen erfüllt sind.

Voraussetzungen für NFS- und SMB-Volumes

Wenn Sie Azure NetApp Files zum ersten Mal oder an einem neuen Standort verwenden, ist eine anfängliche Konfiguration erforderlich, um Azure NetApp Files einzurichten und ein NFS-Volume zu erstellen. Siehe "Azure: Azure NetApp Files einrichten und ein NFS-Volume erstellen" .

Um ein "Azure NetApp Files" Im Backend benötigen Sie Folgendes:

Hinweis
  • subscriptionID, tenantID , clientID , location , Und clientSecret sind optional bei der Verwendung von verwalteten Identitäten auf einem AKS-Cluster.

  • tenantID, clientID , Und clientSecret sind optional, wenn eine Cloud-Identität auf einem AKS-Cluster verwendet wird.

  • Ein Kapazitätspool. Siehe"Microsoft: Erstellen eines Kapazitätspools für Azure NetApp Files" .

  • Ein an Azure NetApp Files delegiertes Subnetz. Siehe"Microsoft: Ein Subnetz an Azure NetApp Files delegieren" .

  • `subscriptionID`aus einem Azure-Abonnement mit aktiviertem Azure NetApp Files .

  • tenantID, clientID , Und clientSecret von einem"App-Registrierung" in Azure Active Directory mit ausreichenden Berechtigungen für den Azure NetApp Files -Dienst. Für die App-Registrierung sollte eines der folgenden Verfahren verwendet werden:

    • Die Rolle des Eigentümers oder Mitwirkenden"von Azure vordefiniert" .

    • A"benutzerdefinierte Mitwirkenderrolle" auf Abonnementebene(assignableScopes ) mit den folgenden Berechtigungen, die auf das beschränkt sind, was Trident benötigt. Nach dem Erstellen der benutzerdefinierten Rolle,"Weisen Sie die Rolle über das Azure-Portal zu." .

      Benutzerdefinierte Mitwirkenderrolle
      {
        "id": "/subscriptions/<subscription-id>/providers/Microsoft.Authorization/roleDefinitions/<role-definition-id>",
        "properties": {
          "roleName": "custom-role-with-limited-perms",
          "description": "custom role providing limited permissions",
          "assignableScopes": [
            "/subscriptions/<subscription-id>"
          ],
          "permissions": [
            {
              "actions": [
                "Microsoft.NetApp/netAppAccounts/capacityPools/read",
                "Microsoft.NetApp/netAppAccounts/capacityPools/write",
                "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/read",
                "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/write",
                "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/delete",
                "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots/read",
                "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots/write",
                "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots/delete",
                "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/MountTargets/read",
                "Microsoft.Network/virtualNetworks/read",
                "Microsoft.Network/virtualNetworks/subnets/read",
                "Microsoft.Features/featureProviders/subscriptionFeatureRegistrations/read",
                "Microsoft.Features/featureProviders/subscriptionFeatureRegistrations/write",
                "Microsoft.Features/featureProviders/subscriptionFeatureRegistrations/delete",
                "Microsoft.Features/features/read",
                "Microsoft.Features/operations/read",
                "Microsoft.Features/providers/features/read",
                "Microsoft.Features/providers/features/register/action",
                "Microsoft.Features/providers/features/unregister/action",
                "Microsoft.Features/subscriptionFeatureRegistrations/read"
              ],
              "notActions": [],
              "dataActions": [],
              "notDataActions": []
            }
          ]
        }
      }
  • Die Azur location das mindestens eines enthält "delegiertes Subnetz" . Stand Trident 22.01, location Der Parameter ist ein Pflichtfeld auf oberster Ebene der Backend-Konfigurationsdatei. In virtuellen Pools angegebene Standortwerte werden ignoriert.

  • Anwendung Cloud Identity , hol dir die client ID von einem "vom Benutzer zugewiesene verwaltete Identität" und geben Sie diese ID an in azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx .

Zusätzliche Anforderungen für SMB-Volumina

Zum Erstellen eines SMB-Volumes benötigen Sie Folgendes:

  • Active Directory ist konfiguriert und mit Azure NetApp Files verbunden. Siehe"Microsoft: Erstellen und Verwalten von Active Directory-Verbindungen für Azure NetApp Files" .

  • Ein Kubernetes-Cluster mit einem Linux-Controller-Knoten und mindestens einem Windows-Worker-Knoten, auf dem Windows Server 2022 ausgeführt wird. Trident unterstützt SMB-Volumes nur, wenn sie in Pods eingebunden sind, die auf Windows-Knoten laufen.

  • Mindestens ein Trident Geheimnis, das Ihre Active Directory-Anmeldeinformationen enthält, damit Azure NetApp Files sich bei Active Directory authentifizieren kann. Um Geheimnisse zu generieren smbcreds :

    kubectl create secret generic smbcreds --from-literal username=user --from-literal password='password'
  • Ein als Windows-Dienst konfigurierter CSI-Proxy. Um einen zu konfigurieren csi-proxy , siehe"GitHub: CSI-Proxy" oder"GitHub: CSI-Proxy für Windows" für Kubernetes-Knoten, die unter Windows laufen.