Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel erfahren Sie, wie Sie ein virtuelles Netzwerk (VNet) und ein Subnetz erstellen, eine verwaltete Identität mit Berechtigungen für den Zugriff auf das VNet erstellen und einen Azure Kubernetes Service (AKS)-Cluster in Ihrem benutzerdefinierten VNet erstellen, wobei die automatische Bereitstellung (Node Auto-Provisioning, NAP) aktiviert ist.
Voraussetzungen
- Ein Azure-Abonnement. Falls Sie über keins verfügen, können Sie ein kostenloses Konto erstellen.
- Azure CLI-Version
2.76.0oder höher. Führen Sieaz --versionaus, um die Version zu finden. Weitere Informationen zum Installieren oder Upgraden der Azure CLI finden Sie unter Installieren der Azure CLI. - Lesen Sie die Übersicht über die automatische Bereitstellung von Knoten (Node Auto-Provisioning, NAP) in AKS-Artikel , in dem die Funktionsweise von NAP beschrieben wird.
- Lesen Sie die Übersicht über Netzwerkkonfigurationen für die automatische Bereitstellung von Knoten (Node Auto-Provisioning, NAP) in Azure Kubernetes Service (AKS).
Einschränkungen
- Beim Erstellen eines NAP-Clusters in einem benutzerdefinierten virtuellen Netzwerk (VNet) müssen Sie einen Standardlastenausgleich verwenden. Der Basic Load Balancer wird nicht unterstützt.
- Weitere Einschränkungen und nicht unterstützte Features für NAP finden Sie im AKS-Artikel "Übersicht über die automatische Bereitstellung von Knoten (Node Auto-Provisioning, NAP) ".
Erstellen eines virtuellen Netzwerks und des Subnetzes
Von Bedeutung
Beachten Sie bei der Verwendung eines benutzerdefinierten VNet mit NAP die folgenden Informationen:
- Sie müssen ein API-Server-Subnetz erstellen und an
Microsoft.ContainerService/managedClustersdelegieren, wodurch der AKS-Dienst Berechtigungen zum Einfügen der API-Server-Pods und des internen Lastenausgleichers in dieses Subnetz erhält. Sie können das Subnetz nicht für andere Workloads verwenden, aber Sie können es für mehrere AKS-Cluster verwenden, die sich im selben VNet befinden. Die minimale unterstützte API-Server-Subnetzgröße ist /28. - Der gesamte Datenverkehr innerhalb des VNet ist standardmäßig zulässig. Wenn Sie jedoch Regeln für die Netzwerksicherheitsgruppe (Network Security Group, NSG) zum Einschränken des Datenverkehrs zwischen verschiedenen Subnetzen hinzugefügt haben, müssen Sie sicherstellen, dass Sie die richtigen Berechtigungen konfigurieren. Weitere Informationen finden Sie in der Dokumentation zur Netzwerksicherheitsgruppe.
Erstellen Sie ein VNet mit dem
az network vnet createBefehl.az network vnet create \ --name $VNET_NAME \ --resource-group $RG_NAME \ --location $LOCATION \ --address-prefixes 172.19.0.0/16Erstellen Sie ein Subnetz mit dem
az network vnet subnet createBefehl, und delegieren Sie es anMicrosoft.ContainerService/managedClusters.az network vnet subnet create \ --resource-group $RG_NAME \ --vnet-name $VNET_NAME \ --name $SUBNET_NAME \ --delegations Microsoft.ContainerService/managedClusters \ --address-prefixes 172.19.0.0/28
Erstellen einer verwalteten Identität und Erteilen von Berechtigungen für den Zugriff auf das VNet
Erstellen Sie mithilfe des
az identity create-Befehls eine verwaltete Identität.az identity create \ --resource-group $RG_NAME \ --name $IDENTITY_NAME \ --location $LOCATIONRufen Sie die Prinzipal-ID der verwalteten Identität ab, und legen Sie sie mithilfe des Befehls [
az identity show][az-identity-show] auf eine Umgebungsvariable fest.IDENTITY_PRINCIPAL_ID=$(az identity show --resource-group $RG_NAME --name $IDENTITY_NAME --query principalId -o tsv)Weisen Sie die Rolle "Netzwerkmitwirkender " der verwalteten Identität mithilfe des
az role assignment createBefehls zu.az role assignment create \ --scope "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RG_NAME/providers/Microsoft.Network/virtualNetworks/$VNET_NAME" \ --role "Network Contributor" \ --assignee $IDENTITY_PRINCIPAL_ID
Erstellen eines AKS-Clusters mit automatischer Knotenbereitstellung (Node Auto-Provisioning, NAP) in einem benutzerdefinierten VNet
Erstellen Sie einen AKS-Cluster mit NAP, der in Ihrem benutzerdefinierten VNet aktiviert ist, mithilfe des
az aks createBefehls. Stellen Sie sicher, dass Sie das--node-provisioning-mode-Flag aufAutosetzen, um NAP zu aktivieren.Der folgende Befehl legt außerdem den
--network-pluginWert aufazure,--network-plugin-modeaufoverlayund--network-dataplaneaufcilium. Weitere Informationen zu netzwerkkonfigurationen, die mit NAP unterstützt werden, finden Sie unter Konfigurieren des Netzwerks für die automatische Bereitstellung von Knoten auf AKS.az aks create \ --name $CLUSTER_NAME \ --resource-group $RG_NAME \ --location $LOCATION \ --assign-identity "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RG_NAME/providers/Microsoft.ManagedIdentity/userAssignedIdentities/$IDENTITY_NAME" \ --network-dataplane cilium \ --network-plugin azure \ --network-plugin-mode overlay \ --vnet-subnet-id "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RG_NAME/providers/Microsoft.Network/virtualNetworks/$CUSTOM_VNET_NAME/subnets/$SUBNET_NAME" \ --node-provisioning-mode AutoNach wenigen Minuten ist die Ausführung des Befehls abgeschlossen, und es werden Informationen zum Cluster im JSON-Format zurückgegeben.
Mit dem Befehl
kubectlkönnen Sieaz aks get-credentialsfür die Verbindungsherstellung mit Ihrem Kubernetes-Cluster konfigurieren. Mit diesem Befehl werden die Anmeldeinformationen heruntergeladen, und die Kubernetes-Befehlszeilenschnittstelle wird für deren Verwendung konfiguriert.az aks get-credentials \ --resource-group $RG_NAME \ --name $CLUSTER_NAMEÜberprüfen Sie die Verbindung mit dem Cluster mithilfe des Befehls
kubectl get. Dieser Befehl gibt eine Liste der Clusterknoten zurück.kubectl get nodes
Nächste Schritte
Weitere Informationen zur automatischen Bereitstellung von Knoten in AKS finden Sie in den folgenden Artikeln: