Skip to main content
Eine neuere Version dieses Produkts ist erhältlich.
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

Änderungen vorschlagen

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" Backend zu konfigurieren und zu verwenden, benötigen Sie Folgendes:

Hinweis
  • subscriptionID, tenantID, clientID, location und clientSecret sind optional, wenn verwaltete Identitäten auf einem AKS-Cluster verwendet werden.

  • 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: Delegieren Sie ein Subnetz an Azure NetApp Files".

  • subscriptionID aus einem Azure-Abonnement mit aktivierten Azure NetApp Files.

  • tenantID, clientID und clientSecret von einem "App-Registrierung" in Azure Active Directory mit ausreichenden Berechtigungen für den Azure NetApp Files Service. Die App-Registrierung sollte entweder Folgendes verwenden:

    • Die Rolle Eigentümer oder Mitwirkender "von Azure vordefiniert".

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

      Benutzerdefinierte Contributor-Rolle
      {
        "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 Azure location, die mindestens einen "delegiertes Subnetz"enthält. Ab Trident 22.01 ist der location-Parameter ein Pflichtfeld auf oberster Ebene der Backend-Konfigurationsdatei. In virtuellen Pools angegebene Standortwerte werden ignoriert.

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

Zusätzliche Anforderungen für SMB-Volumina

Zum Erstellen eines SMB-Volumes müssen Sie Folgendes haben:

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

  • Ein Kubernetes-Cluster mit einem Linux-Controller-Knoten und mindestens einem Windows-Worker-Knoten, auf dem Windows Server 2022 läuft. Trident unterstützt SMB-Volumes, die nur auf Pods auf Windows-Knoten eingebunden sind.

  • Mindestens ein Trident-Geheimnis, das Ihre Active Directory-Anmeldeinformationen enthält, damit Azure NetApp Files sich bei Active Directory authentifizieren kann. Um ein Geheimnis 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 csi-proxy zu konfigurieren, siehe "GitHub: CSI Proxy" oder "GitHub: CSI-Proxy für Windows" für Kubernetes-Knoten, die unter Windows laufen.