Freigeben über


Grundlegende Konzepte für Azure Kubernetes Service (AKS)

In diesem Artikel werden die grundlegenden Konzepte von Azure Kubernetes Service (AKS) beschrieben, einem verwalteten Kubernetes-Dienst, mit dem Sie containerisierte Anwendungen im großen Stil in Azure bereitstellen und betreiben können.

Was ist Kubernetes?

Kubernetes ist eine Open-Source-Containerorchestrierungsplattform zum Automatisieren der Bereitstellung, Skalierung und Verwaltung von containerisierten Anwendungen. Weitere Informationen finden Sie in der offiziellen Kubernetes-Dokumentation.

Was ist AKS?

AKS ist ein verwalteter Kubernetes-Dienst, der die Bereitstellung, Verwaltung und Skalierung von containerisierten Anwendungen vereinfacht, die Kubernetes verwenden. Weitere Informationen finden Sie unter Was ist Azure Kubernetes Service (AKS)?.

Komponenten eines Clusters

Ein AKS-Cluster ist in zwei Hauptkomponenten unterteilt:

  • Steuerungsebene: Die Steuerungsebene stellt die grundlegenden Kubernetes-Dienste und Orchestrierungsfunktionen für Anwendungsworkloads bereit.
  • Knoten: Knoten sind die zugrunde liegenden virtuellen Computer (VMs), die Ihre Anwendungen ausführen.

Screenshot der Kubernetes-Steuerungsebene und Knotenkomponenten.

Hinweis

Verwaltete AKS-Komponenten haben die Bezeichnung kubernetes.azure.com/managedby: aks.

AKS verwaltet die Helm-Releases mit dem Präfix aks-managed. Kontinuierlich wachsende Überarbeitungen dieser Versionen sind zu erwarten und sicher.

Steuerungsebene

Die azure managed control plane besteht aus mehreren Komponenten, die beim Verwalten des Clusters helfen:

Komponente BESCHREIBUNG
kube-apiserver Der API-Server (kube-apiserver) macht die Kubernetes-API verfügbar, um Anforderungen an den Cluster von innerhalb und außerhalb des Clusters zu ermöglichen.
etcd Der hochverfügbare Schlüsselwertspeicher etcd hilft dabei, den Zustand Ihres Kubernetes-Clusters und Ihrer Konfiguration zu verwalten.
kube-scheduler Der Scheduler (kube-scheduler) hilft bei der Entscheidungsfindung. Es sucht nach neuen Pods ohne zugewiesenen Knoten und wählt einen Knoten aus, auf dem sie ausgeführt werden sollen.
kube-controller-manager Der Controller-Manager (kube-controller-manager) führt Controllerprozesse aus, z. B. notieren und reagieren, wenn Knoten heruntergehen.
cloud-controller-manager Der Cloudcontrollermanager (cloud-controller-manager) bettet cloudspezifische Steuerelementlogik ein, um Controller auszuführen, die für den Cloudanbieter spezifisch sind.

Knoten

Jeder AKS-Cluster verfügt über mindestens einen Knoten, bei dem es sich um eine Azure-VM handelt, auf der Kubernetes-Knotenkomponenten ausgeführt werden. Die folgenden Komponenten werden auf dem jeweiligen Knoten ausgeführt:

Komponente BESCHREIBUNG
kubelet Das kubelet stellt sicher, dass Container in einem Pod ausgeführt werden.
kube-proxy Der kube-proxy ist ein Netzwerkproxy, der Netzwerkregeln auf Knoten verwaltet.
container runtime Die container runtime verwaltet die Ausführung und den Lebenszyklus von Containern.

Screenshot des virtuellen Azure-Computers und der unterstützenden Ressourcen für einen Kubernetes-Knoten.

Knotenkonfiguration

Konfigurieren Sie die folgenden Einstellungen für Knoten.

VM-Größe und -Image

Die Azure VM-Größe für Ihre Knoten definiert CPUs, Arbeitsspeicher, Größe und den verfügbaren Speichertyp, z. B. ein hochleistungsfähiges Festkörperlaufwerk oder ein normales Festplattenlaufwerk. Die gewählte VM-Größe hängt von den Workloadanforderungen und der Anzahl der Pods ab, die Sie für jeden Knoten ausführen möchten. Ab Mai 2025 wird die standardmäßige VM-SKU und -Größe dynamisch von AKS basierend auf verfügbarer Kapazität und Kontingent ausgewählt, wenn der Parameter während der Bereitstellung leer bleibt. Weitere Informationen finden Sie unter Unterstützte VM-Größen in Azure Kubernetes Service (AKS).

In AKS basiert das VM-Image für die Knoten in Ihrem Cluster auf Ubuntu Linux, Azure Linux oder Windows Server 2022. Wenn Sie einen AKS-Cluster erstellen oder die Anzahl von Knoten aufskalieren, erstellt und konfiguriert die Azure-Plattform automatisch die angeforderte Anzahl von VMs. Agent-Instanzen werden wie Standard-VMs abgerechnet. Alle VM-Größenrabatte, einschließlich Azure Reservations, werden automatisch angewendet.

Betriebssystem-Datenträger

Die Standardgröße des Betriebssystemdatenträgers wird nur für neue Cluster oder Knotenpools verwendet, wenn keine Standardmäßige Betriebssystemdatenträgergröße angegeben ist. Dieses Verhalten gilt sowohl für verwaltete als auch für kurzlebige Betriebssystemdatenträger. Weitere Informationen finden Sie unter Standardmäßige Festplattengröße des Betriebssystems.

Ressourcenreservierungen

AKS verwendet Knotenressourcen, damit die Knoten als Teil des Clusters fungieren können. Diese Verwendung kann zu einer Abweichung zwischen den Gesamtressourcen des Knotens und den Ressourcen führen, die in AKS zugewiesen werden können. Um die Leistung und Funktionalität des Knotens zu gewährleisten, reserviert AKS zwei Ressourcentypen auf jedem Knoten, CPU und Arbeitsspeicher. Weitere Informationen finden Sie unter Ressourcenreservierungen in AKS.

Betriebssystem

AKS unterstützt zwei Linux-Distros: Ubuntu und Azure Linux. Ubuntu ist die Standard-Linux-Distro auf AKS. Windows-Knotenpools werden auch auf AKS mit dem Long Term Servicing Channel (LTSC) als Standardkanal auf AKS unterstützt. Weitere Informationen zu Standardbetriebssystemversionen finden Sie in der Dokumentation zu Node-Images.

Containerruntime

Eine Containerruntime ist eine Software, die Container ausführt und Containerimages auf einem Knoten verwaltet. Die Laufzeit hilft beim Abstrahieren von Systemaufrufen oder betriebssystemspezifischen Funktionen zum Ausführen von Containern unter Linux oder Windows. Für Linux-Knotenpools wird containerd auf Kubernetes Version 1.19 und höher verwendet. Für Windows Server 2019- und 2022-Knotenpools ist containerd allgemein verfügbar und ist die einzige Laufzeitoption für Kubernetes, Version 1.23 und höher.

Pods

Ein Pod ist eine Gruppe von einem oder mehreren Containern, die sich dieselben Netzwerk- und Speicherressourcen sowie eine Spezifikation für den Betrieb der Container teilen. Pods weisen in der Regel eine 1:1-Zuordnung mit einem Container auf, aber Sie können mehrere Container in einem Pod ausführen.

Knotenpools

In AKS werden Knoten mit der gleichen Konfiguration in Knotenpools gruppiert. Diese Knotenpools enthalten die zugrunde liegenden Skalierungsgruppen für virtuelle Computer und die eigentlichen virtuelle Computer (VMs), die Ihre Anwendungen ausführen.

Wenn Sie einen AKS-Cluster erstellen, definieren Sie die anfängliche Anzahl von Knoten und deren Größe (Version), wodurch ein Systemknotenpool erstellt wird. Systemknotenpools dienen dem primären Zweck, kritische Systempods wie CoreDNS und konnectivity zu hosten.

Sie können Benutzerknotenpools erstellen, um Anwendungen mit unterschiedlichen Compute- oder Speicheranforderungen zu unterstützen. Benutzerknotenpools dienen dem primären Zweck, Ihre Anwendungspods zu hosten.

Weitere Informationen finden Sie unter Erstellen von Knotenpools in AKS und Verwalten von Knotenpools in AKS.

Knotenressourcengruppe

Wenn Sie einen AKS-Cluster in einer Azure-Ressourcengruppe erstellen, erstellt der AKS-Ressourcenanbieter automatisch eine zweite Ressourcengruppe, die als Knotenressourcengruppebezeichnet wird. Diese Ressourcengruppe enthält alle dem Cluster zugeordneten Infrastrukturressourcen, einschließlich VMs, VM-Skalierungsgruppen und Speicher.

Weitere Informationen finden Sie in den folgenden Ressourcen:

Namespaces

Kubernetes-Ressourcen wie Pods und Bereitstellungen werden logisch in einem Namespace gruppiert, um einen AKS-Cluster zu unterteilen und den Zugriff auf Ressourcen zu erstellen, anzuzeigen oder zu verwalten.

Die folgenden Namespaces werden standardmäßig in einem AKS-Cluster erstellt:

Namespace BESCHREIBUNG
default Mit dem Namespace default können Sie mit der Verwendung von Clusterressourcen beginnen, ohne einen neuen Namespace zu erstellen.
kube-node-lease Der Namespace kube-node-lease ermöglicht es den Knoten, ihre Verfügbarkeit an die Steuerungsebene zu kommunizieren.
kube-public Der kube-public-Namespace wird in der Regel nicht verwendet, Sie können ihn jedoch verwenden, damit Ressourcen für den gesamten Cluster von jedem Benutzer sichtbar sind.
kube-system Der Namespace kube-system wird von Kubernetes zum Verwalten von Clusterressourcen verwendet, z. B. coredns, konnectivity-agent und metrics-server. Es wird nicht empfohlen, Ihre eigenen Anwendungen in diesem Namespace bereitzustellen. In seltenen Fällen, in denen die Bereitstellung Ihrer eigenen Anwendungen für diesen Namespace erforderlich ist, finden Sie in den häufig gestellten Fragen weitere Informationen dazu.

Screenshot, der Kubernetes-Namespaces zeigt, um Ressourcen und Anwendungen logisch aufzuteilen.

Clustermodi

In AKS können Sie einen Cluster mit dem Automatischen Modus (Vorschau) oder dem Standardmodus erstellen. AKS Automatic bietet eine vollständig verwaltete Oberfläche. Sie können die Clusterkonfiguration verwalten, einschließlich Knoten, Skalierung, Sicherheit und anderen vorkonfigurierten Einstellungen. AKS Standard bietet mehr Kontrolle über die Clusterkonfiguration, einschließlich der Möglichkeit, Knotenpools, Skalierung und andere Einstellungen zu verwalten.

Weitere Informationen finden Sie unter Funktionsvergleich AKS Automatic und Standard.

Tarife

AKS bietet drei Preisstufen für die Clusterverwaltung: Kostenlos, Standard und Premium. Das von Ihnen ausgewählte Preisniveau bestimmt die Features, die für die Verwaltung Ihres Clusters verfügbar sind.

Weitere Informationen finden Sie unter Preisstufen für die AKS-Clusterverwaltung.

Unterstützte Kubernetes-Versionen

Weitere Informationen finden Sie unter Unterstützte Kubernetes-Versionen in AKS.

Weitere Informationen zu weiteren grundlegenden Konzepten für AKS finden Sie in den folgenden Ressourcen: