Schnellstart: Erstellen eines Azure Kubernetes Service (AKS) automatischen Clusters

Gilt für: ✔️ AKS Automatic

Azure Kubernetes Service (AKS) Automatic ist eine verwaltete Kubernetes-Erfahrung, die AKS-Clustereinrichtung und -vorgänge automatisiert und Best Practice-Konfigurationen einbettet. AKS Automatic enthält auch ein [Pod-Bereitschafts-SLA][azure-sla], das garantiert, dass 99,9 % der qualifizierenden Pod-Bereitschaftsvorgänge innerhalb von 5 Minuten abgeschlossen werden und somit eine zuverlässige, selbstheilende Infrastruktur für Ihre Anwendungen gewährleistet. In dieser Schnellstartanleitung wird Folgendes vermittelt:

  • Stellen Sie einen AKS Automatic-Cluster bereit.
  • Führen Sie eine Beispielanwendung mit mehreren Containern mit einer Gruppe von Microservices und Web-Front-Ends aus, die ein Einzelhandelsszenario simulieren.

Bevor Sie anfangen

  • Azure CLI Version 2.86.0 oder höher. Um die Version zu finden, führen Sie den Befehl aus az --version . Wenn Sie eine Installation oder ein Upgrade durchführen müssen, finden Sie weitere Informationen unter Azure CLI installieren.
  • Wenn Sie mehrere Azure-Abonnements haben, wählen Sie mit dem Befehl az account set die entsprechende Abonnement-ID für die Abrechnung von Ressourcen aus.
  • Zum Bereitstellen einer Bicep-Datei benötigen Sie Schreibzugriff auf die Ressourcen, die Sie erstellen, sowie Zugriff auf alle Vorgänge des Ressourcentyps Microsoft.Resources/deployments. Um beispielsweise einen virtuellen Computer (VM) zu erstellen, benötigen Sie Microsoft.Compute/virtualMachines/write und Microsoft.Resources/deployments/* Berechtigungen. Eine Liste der Rollen und Berechtigungen finden Sie unter Azure integrierte Rollen.

Von Bedeutung

Ab AKS 1.36 aktivieren neue automatische AKS-Cluster standardmäßig die Kubernetes-Gateway-API über das Anwendungsrouting-Add-On anstelle des verwalteten NGINX-Eingangs mit dem Anwendungsrouting-Add-On aufgrund des vorgelagerten Ausfalls von Ingress NGINX.

Vorhandene automatische Cluster sind nicht betroffen, sollten aber mit der Migration zur Kubernetes-Gateway-API über das Anwendungsrouting-Add-On beginnen.

Einschränkungen

Die folgenden Einschränkungen gelten für automatische AKS-Cluster:

  • AKS Automatic ist in den folgenden Regionen allgemein verfügbar: australiaeast, austriaeast, belgiumcentral, brazilsouth, canadacentral, centralindia, centralus, chilecentral, denmarkeast, eastasia, eastus, eastus2, francecentral, germanywestcentral, indonesiacentral, israelcentral, italynorth, japaneast, japanwest, koreacentral, malaysiawest, mexicocentral, newzealandnorth, northeurope, norwayeast, polandcentral, southafricanorth, southcentralus, southeastasia, spaincentral, swedencentral, switzerlandnorth, uaenorth, uksouth, westeurope, westus2, westus3.
    • Neue automatische AKS-Cluster aktivieren standardmäßig verwaltete Systemknotenpools und LocalDNS. Sie können keine automatischen AKS-Cluster ohne verwaltete Systemknotenpools in einer beliebigen Region erstellen.
  • AKS Automatic ist mit node resource group lockdown vorkonfiguriert, wodurch keine Änderungen an der Ressourcengruppe MC_ zulässig sind und virtuelle Netzwerkverknüpfungen in der standardmäßigen privaten DNS-Zone verhindert werden. Für VNet-übergreifende oder benutzerdefinierte DNS-Szenarien verwenden Sie ein benutzerdefiniertes Netzwerk und einen privaten DNS gemäß den Anweisungen unter Erstellen eines privaten Azure Kubernetes Service (AKS) automatischen Clusters in einem benutzerdefinierten virtuellen Netzwerk.
  • Azure CLI Version 2.86.0 oder höher ist erforderlich. Um die Version zu finden, führen Sie den Befehl aus az --version . Wenn Sie eine Installation oder ein Upgrade durchführen müssen, finden Sie weitere Informationen unter Azure CLI installieren.
  • Die folgenden Erweiterungen werden nicht unterstützt:
  • Windows-Knoten werden nicht unterstützt.
  • Das Istio-basierte Dienstgitter-Add-On für AKS wird nicht unterstützt.
  • Die Migration zwischen AKS-Basis-SKU und automatischer SKU wird nicht unterstützt.
  • Migrationen zwischen automatischen AKS-Clustern ohne verwaltete Systemknotenpools und AKS Automatische Cluster mit verwalteten Systemknotenpools werden nicht unterstützt.
  • Die Konfiguration von benutzerdefiniertem Scraping von Prometheus-Metriken und Protokollerfassung wird nicht unterstützt.
  • Das Aktivieren von ACNS observability während der automatischen Clustererstellung wird nicht unterstützt. Sie können ACNS-Observability aktivieren, nachdem der Cluster erstellt wurde.

Erstellen einer Ressourcengruppe

Eine Azure-Ressourcengruppe ist eine logische Gruppe, in der Azure Ressourcen bereitgestellt und verwaltet werden.

Erstellen Sie eine Ressourcengruppe mit dem Befehl az group create. Im folgenden Beispiel wird eine Ressourcengruppe mit dem Namen myResourceGroup am Standort canadacentral erstellt:

az group create --name myResourceGroup --location canadacentral

Die folgende Beispielausgabe ähnelt der Ausgabe bei der erfolgreichen Erstellung der Ressourcengruppe:

{
  "id": "/subscriptions/<guid>/resourceGroups/myResourceGroup",
  "location": "canadacentral",
  "managedBy": null,
  "name": "myResourceGroup",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null
}

Erstellen eines AKS Automatic-Clusters

Erstellen Sie einen automatischen AKS-Cluster mit dem az aks create-Befehl, wobei der --sku-Parameter auf automatic festgelegt wird. Im folgenden Beispiel wird ein Cluster mit dem Namen myAKSAutomaticCluster mit verwaltetem Prometheus und aktivierter Container Insights-Integration erstellt:

az aks create \
    --resource-group myResourceGroup \
    --name myAKSAutomaticCluster \
    --sku automatic
    --enable-hosted-system

Nach Abschluss der Bereitstellung zeigt die Ausgabe eine hostedSystemProfile-Eigenschaft mit der auf true gesetzten enabled-Eigenschaft an. Sie können auch den folgenden Befehl ausführen, um die hostedSystemProfile Eigenschaften anzuzeigen:

az aks show \
  --resource-group myResourceGroup \
  --name myAKSAutomaticCluster \
  --query hostedSystemProfile
{
  "enabled": true,
  "nodeSubnetId": null,
  "systemNodeSubnetId": null
}

Erstellen eines Automatic Kubernetes-Clusters

  1. Um einen automatischen AKS-Cluster zu erstellen, suchen und wählen Sie Kubernetes-Dienste aus. Dadurch gelangen Sie zur Kubernetes Center -Seite (Vorschau ).

  2. Wählen Sie auf der Kubernetes Center-Seite (Vorschau) die Option"Automatische Kubernetes-Cluster>" aus.

    Die Screenshot der Schaltfläche

  3. Füllen Sie auf der Registerkarte " Grundlagen " alle erforderlichen Felder aus (Abonnement, Ressourcengruppe, Kubernetes-Clustername und Region), und wählen Sie dann "Weiter" aus.

    Die Screenshot der Registerkarte

  4. Wählen Sie auf der Registerkarte Monitoring Ihre gewünschten Überwachungskonfigurationen aus Azure Monitor (Containereinblicke), verwaltete Prometheus- und Grafana-Dashboards und Benachrichtigungen aus, und wählen Sie dann Next aus.

     Der Screenshot der Registerkarte

  5. Wählen Sie auf der Registerkarte Advanced Ihre gewünschten erweiterten Konfigurationen für den privaten Zugriff aus, Azure Virtual Networking, Managed Identity, Container Network Security (ACNS) und Verwaltete Kubernetes-Namespaces, und wählen Sie dann Review + create aus.

    Der Screenshot der Registerkarte

  6. Überprüfen Sie die Konfigurationen auf der Registerkarte " Überprüfen+ Erstellen ", und wählen Sie dann "Erstellen" aus, um den automatischen AKS-Cluster bereitzustellen.

  7. Starten Sie mit der Konfiguration Ihrer ersten Anwendung aus GitHub und mit dem Einrichten einer automatisierten Deployment-Pipeline.

    Screenshot: Registerkarte „Erste Schritte“ auf dem Blatt „Übersicht“ nach dem Erstellen eines AKS Automatic-Clusters im Azure-Portal

Überprüfen Sie die Bicep-Datei

Die folgende Bicep Datei definiert einen automatischen AKS-Cluster:

@description('The name of the managed cluster resource.')
param clusterName string = 'myAKSAutomaticCluster'

@description('The location of the managed cluster resource.')
param location string = resourceGroup().location

resource aks 'Microsoft.ContainerService/managedClusters@2026-02-01' ' = {
  name: clusterName
  location: location
  sku: {
    name: 'Automatic'
  }
  identity: {
    type: 'SystemAssigned'
  }
}

Weitere Informationen zur in der datei Bicep definierten Ressource finden Sie im Microsoft. ContainerService/managedClusters Reference.

Bereitstellen der Bicep Datei

  1. Speichern Sie die Bicep Datei als main.bicep auf Ihren lokalen Computer.

    Von Bedeutung

    Die Bicep-Datei legt den clusterName Parameter auf die Zeichenfolge myAKSAutomaticCluster fest. Wenn Sie einen anderen Clusternamen wünschen, ändern Sie die Zeichenfolge in den gewünschten Clusternamen, ehe Sie die Datei auf Ihrem Computer speichern.

  2. Stellen Sie die Bicep Datei mithilfe des Befehls [az deployment group create][az-deployment-group-create] bereit.

    az deployment group create --resource-group myResourceGroup --template-file main.bicep
    

    Die Erstellung des AKS-Clusters dauert einige Minuten. Warten Sie, bis der Cluster erfolgreich bereitgestellt wurde, bevor Sie mit dem nächsten Schritt fortfahren.

Herstellen einer Verbindung mit dem Cluster

Um einen Kubernetes-Cluster zu verwalten, verwenden Sie den Kubernetes-Befehlszeilenclient kubectl. kubectl ist bereits installiert, wenn Sie Azure Cloud Shell verwenden. Sie können kubectl lokal installieren, indem Sie den Befehl az aks install-cli verwenden. AKS Automatic-Cluster sind mit Microsoft Entra ID für Kubernetes rollenbasierte Zugriffskontrolle (RBAC) konfiguriert.

Hinweis

Wenn Sie einen Cluster mithilfe des Azure CLI erstellen, werden Ihrem Benutzer integrierte Rollen zugewiesen für Azure Kubernetes Service RBAC Cluster Admin.

  1. Mit dem Befehl kubectl können Sie az aks get-credentials fü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 myResourceGroup --name myAKSAutomaticCluster
    
  2. Ü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
    

    Die folgende Beispielausgabe zeigt, wie Sie aufgefordert werden, sich anzumelden:

    To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAAA to authenticate.
    

    Nach der Anmeldung zeigt die folgende Beispielausgabe die verwalteten Systemknotenpools an. Stellen Sie sicher, dass der Knotenstatus Bereit lautet.

    NAME                           STATUS   ROLES    AGE   VERSION
    aks-hostedpool-16652789-vms1   Ready    <none>   19m   v1.34.7
    aks-hostedpool-16652789-vms2   Ready    <none>   19m   v1.34.7
    aks-hostedpool-16652789-vms3   Ready    <none>   19m   v1.34.7
    aks-system-surge-zq4d2         Ready    <none>   19m   v1.34.7
    

Bereitstellen der Anwendung

Zum Bereitstellen der Anwendung verwenden Sie eine Manifestdatei, um alle Objekte zu erstellen, die zum Ausführen der AKS Store-Anwendung erforderlich sind. Eine Kubernetes-Manifestdatei definiert den gewünschten Zustand (Desired State) eines Clusters – also beispielsweise, welche Containerimages ausgeführt werden sollen. Das Manifest umfasst die folgenden Kubernetes-Bereitstellungen und -Dienste:

Screenshot der Azure Store-Beispielarchitektur.

  • Store Front: Webanwendung für Kunden zum Anzeigen von Produkten und Aufgeben von Bestellungen
  • Product Service: Zum Anzeigen von Produktinformationen
  • Order Service: dient der Aufgabe von Bestellungen.
  • Rabbit MQ: Nachrichtenwarteschlange für eine Auftragswarteschlange.

Hinweis

Zustandsbehaftete Container wie Rabbit MQ sollten nicht ohne permanenten Speicher für die Produktion ausgeführt werden. Diese werden hier zur Einfachheit verwendet, es wird jedoch empfohlen, verwaltete Dienste wie Azure Cosmos DB oder Azure Service Bus zu verwenden.

  1. Erstellen Sie einen Namespace aks-store-demo, in dem die Kubernetes-Ressourcen bereitgestellt werden.

    kubectl create ns aks-store-demo
    
  2. Stellen Sie die Anwendung mithilfe des kubectl apply-Befehls im aks-store-demo-Namespace bereit. Die YAML-Datei, die die Bereitstellung definiert, befindet sich auf GitHub.

    kubectl apply -n aks-store-demo -f https://raw.githubusercontent.com/Azure-Samples/aks-store-demo/main/aks-store-ingress-quickstart.yaml
    

    Die folgende Beispielausgabe zeigt die Bereitstellungen und Dienste:

    statefulset.apps/rabbitmq created
    configmap/rabbitmq-enabled-plugins created
    service/rabbitmq created
    deployment.apps/order-service created
    service/order-service created
    deployment.apps/product-service created
    service/product-service created
    deployment.apps/store-front created
    service/store-front created
    ingress/store-front created
    

Testen der App

Wenn die Anwendung ausgeführt wird, macht ein Kubernetes-Dienst das Anwendungs-Front-End im Internet verfügbar. Dieser Vorgang kann einige Minuten dauern.

  1. Sehen Sie sich den Status der bereitgestellten Pods mithilfe des Befehls kubectl get pods an. Stellen Sie sicher, dass alle Pods den Status Running haben, bevor Sie fortfahren. Wenn Sie diese Workload zum ersten Mal bereitstellen, kann es einige Minuten dauern, bis die automatische Knotenbereitstellung einen Knotenpool erstellt, auf dem die Pods ausgeführt werden können.

    kubectl get pods -n aks-store-demo
    
  2. Suchen Sie nach einer öffentlichen IP-Adresse für die Store-Front-Anwendung. Verwenden Sie zum Überwachen des Fortschritts den Befehl kubectl get service mit dem Argument --watch:

    kubectl get ingress store-front -n aks-store-demo --watch
    

    Die Ausgabe von ADDRESS für den store-front-Dienst ist anfangs leer:

    NAME          CLASS                                HOSTS   ADDRESS        PORTS   AGE
    store-front   webapprouting.kubernetes.azure.com   *                      80      12m
    
  3. Nachdem ADDRESS in eine tatsächliche öffentliche IP-Adresse geändert wurde, verwenden Sie CTRL-C, um die kubectl-Überwachung zu beenden.

    Die folgende Beispielausgabe zeigt eine gültige öffentliche IP-Adresse, die dem Dienst zugewiesen ist:

    NAME          CLASS                                HOSTS   ADDRESS        PORTS   AGE
    store-front   webapprouting.kubernetes.azure.com   *       4.255.22.196   80      12m
    
  4. Öffnen Sie einen Webbrowser mit der externen IP-Adresse Ihres Eingangs, um die Azure Store-App in Aktion zu sehen.

    Screenshot: Beispielanwendung für einen AKS-Store.

Löschen des Clusters

Wenn Sie nicht planen, das Lernprogramm AKS zu durchlaufen, bereinigen Sie unnötige Ressourcen, um Azure Gebühren zu vermeiden.

Entfernen Sie die Ressourcengruppe, den Containerdienst und alle zugehörigen Ressourcen mithilfe des Befehls az group delete.

az group delete --name myResourceGroup --yes --no-wait

Hinweis

Der AKS-Cluster wurde mit einer systemseitig zugewiesenen verwalteten Identität erstellt. Dies ist die Standardidentitätsoption, die in dieser Schnellstartanleitung verwendet wird. Die Plattform verwaltet diese Identität, sodass Sie sie nicht manuell entfernen müssen.

In diesem Schnellstart haben Sie einen Kubernetes-Cluster mit AKS Automatic und anschließend eine einfache Anwendung mit mehreren Containern in diesem Cluster bereitgestellt. Diese Beispielanwendung dient nur zu Demozwecken und stellt nicht alle bewährten Methoden für Kubernetes-Anwendungen dar. Anleitungen zum Erstellen vollständiger Lösungen mit AKS für die Produktion finden Sie unter AKS-Lösungsleitfaden.

Weitere Informationen zu AKS Automatic finden Sie unter Introduction to Azure Kubernetes Service (AKS) Automatic