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.
Gilt für: ✔️ AKS Automatic
Verwenden Sie automatisierte Bereitstellungen , um eine Anwendung aus einem Code-Repository in einem neuen oder vorhandenen automatischen AKS-Cluster zu erstellen und bereitzustellen. Automatisierte Bereitstellungen vereinfachen den Prozess der Einrichtung eines GitHub Aktionsworkflows zum Erstellen und Bereitstellen ihres Codes. Sobald die Verbindung hergestellt ist, wird die Pipeline mit jedem neuen Commit, das Sie vornehmen, gestartet. Automatisierte Bereitstellungen basieren auf draft.sh. Wenn Sie einen neuen Bereitstellungsworkflow erstellen, können Sie eine vorhandene Dockerfile-Datei verwenden, eine Dockerfile generieren, vorhandene Kubernetes-Manifeste verwenden oder Kubernetes-Manifeste generieren. Die generierten Manifeste werden mit bewährten Methoden für Sicherheit und Resilienz erstellt. AKS Automatic umfasst auch eine Vereinbarung zur Betriebsbereitschaft der Pods, die garantiert, dass 99,9 % der qualifizierenden Pod-Bereitschaftsvorgänge innerhalb von 5 Minuten abgeschlossen werden, wodurch eine zuverlässige, selbstheilende Infrastruktur für Ihre Anwendungen sichergestellt wird.
In dieser Schnellstartanleitung lernen Sie Folgendes:
- Stellen Sie eine Verbindung mit einem Code-Repository her.
- Containerisieren Sie Ihre Anwendung.
- Konfigurieren Sie Kubernetes-Manifeste.
- Erstellen Sie einen automatischen AKS-Cluster.
- Stellen Sie die Anwendung über eine Pullanforderung bereit.
Bevor Sie anfangen
- Verfügen Sie über ein GitHub Konto mit der Anwendung, die bereitgestellt werden soll.
- AKS Automatic wird Azure Policy auf Ihrem AKS-Cluster aktivieren, Sie sollten jedoch den
Microsoft.PolicyInsights-Ressourcenanbieter in Ihrem Abonnement vorab registrieren, um eine reibungslosere Erfahrung zu erzielen. Weitere Informationen finden Sie unter Azure-Ressourcenanbieter und -typen.
Von Bedeutung
Ab AKS 1.36 werden neue AKS-Automatik-Cluster standardmäßig Kubernetes Gateway API über das Application Routing Add-on anstelle von Verwaltetem NGINX Ingress mit dem Application Routing Add-on aufgrund der Ablösung von Ingress NGINX durch das Upstream aktivieren.
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.
Bringen Sie den Quellcode Ihrer Anwendung mit
Um eine Anwendung aus einem Code-Repository bereitzustellen, beginnen Sie auf der Startseite Azure portal.
- Suchen Sie in der oberen Suchleiste nach Kubernetes-Diensten .
- Wählen Sie Kubernetes-Dienste in den Suchergebnissen aus.
- Wählen Sie die Schaltfläche " Erstellen " und dann "Anwendung bereitstellen" aus.
Herstellen einer Verbindung mit dem Quellcode-Repository
Erstellen und automatisieren Sie den Bereitstellungsworkflow, und autorisieren Sie ihn, eine Verbindung mit dem gewünschten Quellcode-Repository herzustellen.
- Wählen Sie auf der Registerkarte " Grundlagen " die Option "Anwendung bereitstellen" aus.
- Wählen Sie unter Project Details die option Subscription, Resource Group und Region aus.
- Geben Sie unter Repository-Details einen Namen für den Workflow ein, und wählen Sie dann Authorize access aus, um eine Verbindung mit dem gewünschten GitHub Repository herzustellen.
- Wählen Sie das Repository und den Branch aus.
- Wählen Sie die Schaltfläche Weiter aus.
Wählen Sie die Container-Image-Konfiguration
Um eine Anwendung für Kubernetes vorzubereiten, müssen Sie sie in ein Containerimage integrieren und in einer Containerregistrierung speichern. Sie verwenden eine Dockerfile-Datei, um Anweisungen zum Erstellen des Containerimages bereitzustellen. Wenn Ihr Quellcode-Repository noch nicht über eine Dockerfile-Datei verfügt, können automatisierte Bereitstellungen eine für Sie generieren, andernfalls können Sie eine vorhandene Dockerfile-Datei verwenden.
Verwenden Sie automatisierte Bereitstellungen, um eine Dockerfile für viele Sprachen und Frameworks wie Go, C#, Node.js, Python, Java, Gradle, Clojure, PHP, Ruby, Erlang, Swift und Rust zu generieren. Die Sprachunterstützung basiert auf den in draft.sh verfügbaren Sprachen.
- Wählen Sie "Automatisch containerisieren" (Dockerfile generieren) für die Containerkonfiguration aus.
- Wählen Sie den Speicherort aus, an dem die generierte Dockerfile-Datei im Repository gespeichert werden soll.
- Wählen Sie die Anwendungsumgebung aus der Liste der unterstützten Sprachen und Frameworks aus.
- Geben Sie den Anwendungsport ein.
- Wählen Sie eine vorhandene Azure Container Registry aus, oder erstellen Sie eine neue. Diese Registrierung wird verwendet, um das integrierte Anwendungsimage zu speichern. Die Kubelet-Identität des AKS-Clusters Automatic erhält
AcrPullBerechtigungen auf dieser Registrierung.
Auswählen der Kubernetes-Manifestkonfiguration
Eine Anwendung, die auf Kubernetes ausgeführt wird, besteht aus vielen Kubernetes-Grundtypenkomponenten. Diese Komponenten beschreiben, welches Containerimage verwendet werden soll, wie viele Replikate ausgeführt werden sollen, wenn eine öffentliche IP erforderlich ist, um die Anwendung verfügbar zu machen usw. Weitere Informationen finden Sie in der offiziellen Kubernetes-Dokumentation. Wenn Ihr Quellcode-Repository noch nicht über die grundlegenden Kubernetes-Manifeste für die Bereitstellung verfügt, können automatisierte Bereitstellungen diese für Sie generieren, andernfalls können Sie eine Reihe vorhandener Manifeste verwenden. Sie können auch ein vorhandenes Helmdiagramm auswählen.
Verwenden Sie automatisierte Bereitstellungen, um eine Reihe grundlegender Kubernetes-Manifestdateien zu generieren, damit Ihre Anwendung ausgeführt wird. Im Moment erstellt die Automatische Bereitstellung einen Deployment, einen Service und einen ConfigMap.
Die generierten Manifeste sind so konzipiert, dass Empfehlungen für Bereitstellungsvorkehrungen angewendet werden, z. B.:
- Automatisches Generieren von Probes für Liveness, Readiness und Startup.
- Bevorzugung von pod anti-affinity und topology spread constraints, die Repliken zur Verbesserung der Resilienz auf verschiedene Knoten verteilen.
- Durchsetzen des
RuntimeDefaultsicheren Computerprofils, das eine zusätzliche Schutzebene vor Schwachstellen bei Systemaufrufen bietet, die von böswilligen Akteuren ausgenutzt werden. - Drop aller Linux Funktionalitäten und Festlegen nur eines begrenzten Sets gemäß der Baseline Kubernetes Pod Security Standards.
So generieren Sie Kubernetes-Manifeste:
- Wählen Sie " Anwendungsbereitstellungsdateien generieren" für die Bereitstellungsoptionen aus.
- Geben Sie den Anwendungsport ein. Dieser Port wird auf der generierten
Serviceverwendet. - Wählen Sie den Speicherort aus, an dem die generierten Kubernetes-Manifeste im Repository gespeichert werden sollen.
- Wählen Sie die Schaltfläche Weiter aus.
Wählen Sie aus, wo die Anwendung bereitgestellt werden soll.
Wenn Sie noch keinen Cluster haben, können Sie im Rahmen dieser Bereitstellung einen neuen automatischen AKS-Cluster erstellen.
- Wählen Sie " Automatische Kubernetes-Cluster erstellen" für die Clusterkonfiguration aus.
- Geben Sie einen Clusternamen ein.
- Wählen Sie den Wartungszeitplan für automatische Upgrades aus, oder lassen Sie den Standardwert ausgewählt.
- Geben Sie den Kubernetes-Namespace ein, in dem die Anwendung bereitgestellt wird.
- Wählen Sie die Überwachungs- und Protokollierungsebene aus, oder lassen Sie die Standardeinstellung ausgewählt.
- Wählen Sie die Schaltfläche Weiter aus.
Überprüfen der Konfiguration und Bereitstellung
Überprüfen Sie die Konfiguration für die Manifeste Cluster, Anwendung und Kubernetes, und wählen Sie dann "Bereitstellen" aus. Das Erstellen eines Clusters dauert ein paar Minuten, navigieren Sie nicht von der Bereitstellungsseite weg.
- Ein neuer AKS Automatic Cluster wird erstellt oder ein vorhandener Cluster konfiguriert.
- Es wird eine Containerregistrierung erstellt oder eine vorhandene registrierung mit dem Cluster konfiguriert.
- Es werden Verbundanmeldeinformationen erstellt, damit der GitHub Action-Workflow im Cluster bereitgestellt werden kann.
- Eine Pullanforderung wird im Code-Repository mit allen generierten Dateien und dem Workflow erstellt.
Überprüfen und Zusammenführen einer Pullanforderung
Wenn die Bereitstellung erfolgreich ist, wählen Sie die Schaltfläche " Pullanforderung anzeigen" aus, um die Details der generierten Pullanforderung in Ihrem Code-Repository anzuzeigen.
- Überprüfen Sie die Änderungen unter "Dateien geändert ", und nehmen Sie alle gewünschten Änderungen vor.
- Wählen Sie "Zusammenführen"-Pullanforderung aus, um die Änderungen in Ihrem Code-Repository zusammenzuführen.
Beim Zusammenführen der Änderung wird der GitHub-Actions-Workflow ausgeführt, der Ihre Anwendung in einem Containerimage erstellt, es im Azure Container Registry speichert und im Cluster bereitstellt.
Überprüfen der bereitgestellten Ressourcen
Nachdem die Pipeline abgeschlossen ist, können Sie die erstellten Kubernetes Service auf dem Azure Portal überprüfen, indem Sie Services und Ingresses unter dem Menüpunkt Kubernetes Ressourcen auswählen.
Wenn Sie die externe IP auswählen, sollte eine neue Browserseite mit der ausgeführten Anwendung geöffnet werden.
Löschen von Ressourcen
Nachdem Sie mit Ihrem Cluster fertig sind, können Sie es löschen, um Azure Gebühren zu vermeiden.
- Navigieren Sie im Azure-Portal zu Ihrer Ressourcengruppe.
- Wählen Sie die Option Ressourcengruppe löschen.
- Geben Sie den Namen Ihrer Ressourcengruppe ein, um den Löschvorgang zu bestätigen, und wählen Sie "Löschen" aus.
- Wählen Sie im Dialogfeld " Bestätigung löschen " die Option "Löschen" aus.
Nächste Schritte
In dieser Schnellstartanleitung haben Sie eine Anwendung mithilfe von AKS Automatic auf einem Kubernetes-Cluster bereitgestellt und eine fortlaufende Integrations-/Fortlaufendbereitstellungspipeline (CI/CD) aus einem Code-Repository eingerichtet.
Um mehr über AKS Automatic zu erfahren, fahren Sie mit der Einführung fort.