Freigeben über


Schnellstart: Bereitstellen eines Azure Kubernetes Service (AKS) Automatic-Clusters (Vorschau)

Gilt für: ✔️ AKS Automatic (Vorschau)

Azure Kubernetes Service (AKS) Automatic (Vorschau) bietet die einfachste verwaltete Kubernetes-Erfahrung für Entwickler, DevOps-Techniker und Plattformtechniker. AKS Automatic automatisiert die Einrichtung von AKS-Clustern sowie Clustervorgänge und bettet Konfigurationen mit bewährten Methoden ein, wodurch es sich ideal für moderne Anwendungen und KI-Anwendungen (künstliche Intelligenz) eignet. Unabhängig von ihren Kenntnissen und Qualifikationen können alle Benutzer von der Sicherheit, Leistung und Zuverlässigkeit profitieren, die AKS Automatic für ihre Anwendungen bietet.

In dieser Schnellstartanleitung lernen Sie Folgendes:

  • 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.

Voraussetzungen

Für diese Schnellstartanleitung werden Grundkenntnisse in Bezug auf die Kubernetes-Konzepte vorausgesetzt. Weitere Informationen finden Sie unter Grundlegende Kubernetes-Konzepte für Azure Kubernetes Service (AKS).

  • Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Schnellstart für Bash in Azure Cloud Shell.

  • Wenn Sie CLI-Referenzbefehle lieber lokal ausführen, installieren Sie die Azure CLI. Wenn Sie Windows oder macOS ausführen, sollten Sie die Azure CLI in einem Docker-Container ausführen. Weitere Informationen finden Sie unter Ausführen der Azure CLI in einem Docker-Container.

    • Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen. Informationen zu anderen Anmeldeoptionen finden Sie unter Anmelden mit der Azure CLI.

    • Installieren Sie die Azure CLI-Erweiterung beim ersten Einsatz, wenn Sie dazu aufgefordert werden. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden von Erweiterungen mit der Azure CLI.

    • Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.

  • Für diesen Artikel ist Version 2.57.0 oder höher der Azure-Befehlszeilenschnittstelle (Command Line Interface, CLI) erforderlich. Bei Verwendung von Azure Cloud Shell ist die aktuelle Version bereits installiert.
  • Für diesen Artikel ist mindestens Version 9.0.0b4 der Azure CLI-Erweiterung aks-preview erforderlich.
  • Wenn Sie über mehrere Azure-Abonnements verfügen, wählen Sie mithilfe des Befehls az account set die ID des Abonnements aus, in dem die Ressourcen fakturiert werden sollen.
  • Registrieren Sie die AutomaticSKUPreview-Funktion in Ihrem Azure-Abonnement.
  • Die Identität, die den Cluster erstellt, sollte auch über die folgenden Berechtigungen für die Ressourcengruppe verfügen:
    • Microsoft.Authorization/policyAssignments/write
    • Microsoft.Authorization/policyAssignments/read
  • AKS Automatic-Clusters erfordern eine Bereitstellung in Azure-Regionen, die mindestens drei Verfügbarkeitszonen unterstützen.
  • Zum Bereitstellen einer Bicep-Datei benötigen Sie Schreibzugriff auf die Ressourcen, die Sie erstellen, und Zugriff auf alle Vorgänge für den Ressourcentyp Microsoft.Resources/deployments. Um eine VM zu erstellen, benötigen Sie beispielsweise die Berechtigungen Microsoft.Compute/virtualMachines/write und Microsoft.Resources/deployments/*. Eine Liste der Rollen und Berechtigungen finden Sie unter Integrierte Azure-Rollen.

Wichtig

AKS Automatic versucht, dynamisch eine SKU des virtuellen Computers für den system-Knotenpool basierend auf der im Abonnement verfügbaren Kapazität auszuwählen. Stellen Sie sicher, dass Ihr Abonnement über ein Kontingent für 16 vCPUs einer der folgenden SKUs in der Region verfügt, in der Sie den Cluster bereitstellen: Standard_D4pds_v5, Standard_D4lds_v5, Standard_D4ads_v5, Standard_D4ds_v5, Standard_D4d_v5, Standard_D4d_v4, Standard_DS3_v2, Standard_DS12_v2. Über das Azure-Portal können Sie Kontingente für bestimmte VM-Familien anzeigen und Anforderungen zur Kontingenterhöhung übermitteln.

Installieren der Azure CLI-Erweiterung „aks-preview“

Wichtig

AKS-Previewfunktionen stehen gemäß dem Self-Service- und Aktivierungsprinzip zur Verfügung. Vorschauversionen werden „wie besehen“ und „wie verfügbar“ bereitgestellt und sind von Service Level Agreements und der Herstellergarantie ausgeschlossen. AKS-Vorschauversionen werden teilweise vom Kundensupport auf Grundlage der bestmöglichen Leistung abgedeckt. Daher sind diese Funktionen nicht für die Verwendung in der Produktion vorgesehen. Weitere Informationen finden Sie in den folgenden Supportartikeln:

Führen Sie den folgenden Befehl aus, um die Erweiterung „aks-preview“ zu installieren:

az extension add --name aks-preview

Führen Sie den folgenden Befehl aus, um ein Update auf die neueste veröffentlichte Version der Erweiterung durchzuführen:

az extension update --name aks-preview

Registrieren der Featureflags

Um AKS Automatic in der Vorschauversion zu verwenden, registrieren Sie das folgende Featureflag mit dem Befehl az feature register.

az feature register --namespace Microsoft.ContainerService --name AutomaticSKUPreview

Überprüfen Sie den Registrierungsstatus mithilfe des Befehls az feature show. Es dauert einige Minuten, bis der Status Registriert angezeigt wird:

az feature show --namespace Microsoft.ContainerService --name AutomaticSKUPreview

Wenn der Zustand Registered (Registriert) lautet, aktualisieren Sie die Registrierung des Ressourcenanbieters Microsoft.ContainerService mithilfe des Befehls az provider register:

az provider register --namespace Microsoft.ContainerService

Erstellen einer Ressourcengruppe

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

Das folgende Beispiel erstellt eine Ressourcengruppe mit dem Namen myResourceGroup am Standort eastus.

Erstellen Sie mit dem Befehl az group create eine Ressourcengruppe.

az group create --name myResourceGroup --location eastus

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

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

Erstellen eines AKS Automatic-Clusters

Verwenden Sie zum Erstellen eines AKS Automatic-Clusters den Befehl az aks create. Im folgenden Beispiel wird ein Cluster mit dem Namen myAKSAutomaticCluster erstellt, für den die Integration von Managed Prometheus und Container Insights aktiviert ist.

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

Nach wenigen Minuten ist die Ausführung des Befehls abgeschlossen, und es werden Informationen zum Cluster im JSON-Format zurückgegeben.

Herstellen einer Verbindung mit dem Cluster

Verwenden Sie zum Verwalten eines Kubernetes-Clusters den Kubernetes-Befehlszeilenclient kubectl. kubectl ist bei Verwendung von Azure Cloud Shell bereits installiert. Führen Sie für die lokale Installation von kubectl den Befehl az aks install-cli aus. AKS Automatic-Cluster sind mit Microsoft Entra ID für die rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC) in Kubernetes konfiguriert. Wenn Sie einen Cluster mithilfe der Azure CLI erstellen, werden Ihrem Benutzer integrierte Rollen für Azure Kubernetes Service RBAC Cluster Admin zugewiesen.

Mit dem Befehl az aks get-credentials können Sie kubectl 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

Ü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 zur Anmeldung aufgefordert werden.

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

Nachdem Sie sich angemeldet haben, werden wie in der folgenden Beispielausgabe die verwalteten Systemknotenpools angezeigt. Stellen Sie sicher, dass der Knotenstatus Bereit lautet.

NAME                                STATUS   ROLES   AGE     VERSION
aks-nodepool1-13213685-vmss000000   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000001   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000002   Ready    agent   2m26s   v1.28.5

Erstellen eines Automatic-Kubernetes-Clusters

  1. Um einen AKS Automatic-Cluster zu erstellen, suchen Sie nach Kubernetes-Dienste, und wählen Sie in den Dropdownoptionen Automatic-Kubernetes-Cluster aus.

    Screenshot: Einstiegspunkt zum Erstellen eines AKS Automatic-Clusters im Azure-Portal

  2. Füllen Sie auf der Registerkarte Grundlagen alle Pflichtfelder aus, die für die ersten Schritte erforderlich sind: „Abonnement“, „Ressourcengruppe“, „Clustername“ und „Region“

    Screenshot: Registerkarte „Grundlagen“ beim Erstellen eines AKS Automatic-Clusters im Azure-Portal

    Wenn die Voraussetzungen nicht erfüllt sind und für das Abonnement die Vorschauflags registriert werden müssen, wird unter dem Feld „Abonnement“ ein Fehler angezeigt:

    Screenshot: Fehler, der beim Erstellen eines AKS Automatic-Clusters im Azure-Portal angezeigt wird, wenn für ein Abonnement keine Vorschauflags registriert sind

  3. Wählen Sie auf der Registerkarte Überwachung Ihre Überwachungskonfigurationen aus: Azure Monitor, Managed Prometheus, Managed Grafana und/oder Konfigurieren von Warnungen. Fügen Sie Tags (optional) hinzu, und fahren Sie mit dem Erstellen des Clusters fort.

    Screenshot: Registerkarte „Überwachung“ beim Erstellen eines AKS Automatic-Clusters im Azure-Portal

  4. Führen Sie die ersten Schritte zum Konfigurieren Ihrer ersten Anwendung über GitHub und Einrichten einer automatisierten Bereitstellungspipeline aus.

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

Herstellen einer Verbindung mit dem Cluster

Verwenden Sie zum Verwalten eines Kubernetes-Clusters den Kubernetes-Befehlszeilenclient kubectl. kubectl ist bei Verwendung von Azure Cloud Shell bereits installiert. Führen Sie für die lokale Installation von kubectl den Befehl az aks install-cli aus. AKS Automatic-Cluster sind mit Microsoft Entra ID für die rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC) in Kubernetes konfiguriert. Wenn Sie einen Cluster im Azure-Portal erstellen, werden Ihrem Benutzer integrierte Rollen für Azure Kubernetes Service RBAC Cluster Admin zugewiesen.

Mit dem Befehl az aks get-credentials können Sie kubectl 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

Ü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 zur Anmeldung aufgefordert werden.

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

Nachdem Sie sich angemeldet haben, werden wie in der folgenden Beispielausgabe die verwalteten Systemknotenpools angezeigt. Stellen Sie sicher, dass der Knotenstatus Bereit lautet.

NAME                                STATUS   ROLES   AGE     VERSION
aks-nodepool1-13213685-vmss000000   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000001   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000002   Ready    agent   2m26s   v1.28.5

Erstellen einer Ressourcengruppe

Eine Azure-Ressourcengruppe ist eine logische Gruppe, in der Azure-Ressourcen bereitgestellt und verwaltet werden. Wenn Sie eine Ressourcengruppe erstellen, werden Sie zur Angabe eines Speicherorts aufgefordert. An diesem Speicherort werden die Metadaten Ihrer Ressourcengruppe gespeichert. Darüber hinaus werden dort die Ressourcen in Azure ausgeführt, wenn Sie während der Ressourcenerstellung keine andere Region angeben.

Das folgende Beispiel erstellt eine Ressourcengruppe mit dem Namen myResourceGroup am Standort eastus.

Erstellen Sie mit dem Befehl az group create eine Ressourcengruppe.

az group create --name myResourceGroup --location eastus

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

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

Überprüfen der Bicep-Datei

Diese Bicep-Datei definiert einen AKS Automatic-Cluster. In der Vorschau müssen Sie das Agentpoolprofil Systemknotenpool angeben.

@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@2024-03-02-preview' = {
  name: clusterName
  location: location  
  sku: {
	name: 'Automatic'
  }
  properties: {
    agentPoolProfiles: [
      {
        name: 'systempool'
        mode: 'System'
	count: 3
      }
    ]
  }
  identity: {
    type: 'SystemAssigned'
  }
}

Weitere Information zu der in der Bicep-Datei definierten Ressource finden Sie in der Referenz zu Microsoft.ContainerService/managedClusters.

Bereitstellen der Bicep-Datei

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

    Wichtig

    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 der Azure CLI 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

Verwenden Sie zum Verwalten eines Kubernetes-Clusters den Kubernetes-Befehlszeilenclient kubectl. kubectl ist bei Verwendung von Azure Cloud Shell bereits installiert. Führen Sie für die lokale Installation von kubectl den Befehl az aks install-cli aus. AKS Automatic-Cluster sind mit Microsoft Entra ID für die rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC) in Kubernetes konfiguriert. Wenn Sie einen Cluster mit Bicep erstellen, müssen Sie Ihren Benutzern für den Bereich des Clusters oder eines bestimmten Namespaces eine der integrierten Rollen zuweisen (z. B. Azure Kubernetes Service RBAC Reader, Azure Kubernetes Service RBAC Writer, Azure Kubernetes Service RBAC Admin oder Azure Kubernetes Service RBAC Cluster Admin). Stellen Sie auch sicher, dass Ihre Benutzer über die integrierte Rolle Azure Kubernetes Service Cluster User verfügen, damit sie az aks get-credentials ausführen können, und rufen Sie dann mithilfe des Befehls az aks get-credentials die kubeconfig-Datei Ihres AKS-Clusters ab.

Mit dem Befehl az aks get-credentials können Sie kubectl 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

Ü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 zur Anmeldung aufgefordert werden.

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

Nachdem Sie sich angemeldet haben, werden wie in der folgenden Beispielausgabe die verwalteten Systemknotenpools angezeigt. Stellen Sie sicher, dass der Knotenstatus Bereit lautet.

NAME                                STATUS   ROLES   AGE     VERSION
aks-nodepool1-13213685-vmss000000   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000001   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000002   Ready    agent   2m26s   v1.28.5

Bereitstellen der Anwendung

Zum Bereitstellen der Anwendung verwenden Sie eine Manifestdatei, um alle Objekte zu erstellen, die für die Ausführung der AKS Store-Anwendungerforderlich 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: Beispielarchitektur für einen Azure-Store.

  • Store Front: Webanwendung für Kund*innen zum Anzeigen von Produkten und Aufgeben von Bestellungen
  • Product Service: zeigt Produktinformationen an.
  • Order Service: dient der Aufgabe von Bestellungen.
  • Rabbit MQ: Nachrichtenwarteschlange für eine Bestellwarteschlange

Hinweis

Zustandsbehaftete Container wie Rabbit MQ sollten nicht ohne permanenten Speicher für die Produktion ausgeführt werden. Sie werden hier der Einfachheit halber verwendet, jedoch sollten verwaltete Dienste wie Azure Cosmos DB oder Azure Service Bus verwendet werden.

  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 mit dem Befehl kubectl apply im Namespace aks-store-demo bereit. Die YAML-Datei, die die Bereitstellung definiert, finden Sie 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 Anwendung

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 dies die erste Workload ist, die Sie bereitstellen, kann es einige Minuten dauern, bis die automatische Knotenbereitstellung einen Knotenpool erstellt und die Pods ausführt.

    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 die externe IP-Adresse Ihres Eingangsdatencontrollers in einem Webbrowser, 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 AKS-Tutorial zu durchlaufen, bereinigen Sie unnötige Ressourcen, um Azure-Gebühren zu vermeiden. Führen Sie den Befehl az group delete aus, um die Ressourcengruppe, den Containerdienst und alle dazugehörigen Ressourcen zu entfernen.

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.

Nächste Schritte

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 in der Einführung.