Bewährte Methoden für die Architektur für Azure Kubernetes Service (AKS)

Azure Kubernetes Service (AKS) ist ein verwalteter Kubernetes-Dienst, mit dem Sie containerisierte Anwendungen bereitstellen und verwalten können. Wie andere verwaltete Dienste überlastet AKS einen großteil des betriebstechnischen Aufwands auf Azure und bietet gleichzeitig hohe Verfügbarkeits-, Skalierbarkeits- und Portabilitätsfunktionen für die Workload.

Dieser Artikel geht davon aus, dass Sie als Architekt den Berechnungs-Entscheidungsbaum überprüft und AKS als Berechnung für Ihre Arbeitslast gewählt haben. Die Anleitung in diesem Artikel enthält Architekturempfehlungen, die den Prinzipien der Azure Well-Architected Framework-Säulenzugeordnet sind.

Technologieumfang

Diese Überprüfung konzentriert sich auf die miteinander verbundenen Entscheidungen für die folgenden Azure-Ressourcen:

  • AKS

Wenn Sie die bewährten Methoden der Well-Architected Framework-Säulen für AKS besprechen, ist es wichtig, zwischen folgendem zu unterscheiden:

  • Clusterarchitektur, die eine gemeinsame Verantwortung zwischen dem Plattformteam und Azure ist.

    Azure betreibt die Steuerungsebene und verwaltete Laufzeitkomponenten. Ihr Plattformteam konfiguriert Dinge wie Knotenpools, Skalierung und Netzwerk. Das Plattformteam überwacht auch die Clusterinfrastruktur.

  • Workload-Architektur , die im Besitz von Anwendungsteams ist.

    Workload-Teams besitzen Manifeste, Anwendungsidentitäten, Pod-Sicherheit, Netzwerkrichtlinien und sind für die Workloadüberwachung verantwortlich.

Dieser Artikel enthält Überlegungen und Empfehlungen für jede dieser Rollen.

Note

Verwenden Sie separate AKS-Cluster für nicht verknüpfte Workloads, die die stärkste Isolationsgrenze bieten. Die gemeinsame Ausführung von Workloads in einem gemeinsam genutzten Cluster kann den Betriebsaufwand verringern, erfordert jedoch zusätzliche Maßnahmen wie Namespaces, dedizierte Knotenpools und Netzwerkrichtlinien, um eine angemessene Isolation aufrechtzuerhalten. Bewerten Sie die Kompromisse bei der Workloadisolation, bevor Sie sich für ein Shared-Cluster-Modell entscheiden.

Auswählen von AKS Automatic oder AKS Standard

AKS bietet zwei Clustermodi: AKS Automatic und AKS Standard. AKS Automatic bietet einen produktionsbereiten Basisplan mit vorkonfigurierten Clustervorgängen, integrierten Schutzmaßnahmen, gehärteten Standardkonfigurationen und verwalteter Skalierung. Viele der in den folgenden Säulen beschriebenen Empfehlungen werden standardmäßig in AKS Automatic implementiert. Wenn Sie AKS Standard verwenden, müssen Sie diese Empfehlungen selbst implementieren. Wählen Sie für die meisten neuen Produktionsworkloads AKS Automatic aus, es sei denn, Ihre Workload erfordert spezielle Plattformanpassungen oder eine Steuerungsebene, die über die Funktionen von AKS Automatic hinausgeht. Treffen Sie diese Entscheidung frühzeitig im Entwurfsprozess, damit Sie Zuverlässigkeit, Sicherheit, Kosten und Betriebsleitlinien konsistent anwenden können.

Wählen Sie AKS Automatic, wenn Ihre Ziele sind:

  • Schnellerer Weg zur Produktion mit einer gehärteten Standardbasislinie.
  • Reduzierter Verwaltungsaufwand für Cluster.
  • Vorkonfigurierte Skalierungs- und Knotenvorgänge.
  • Integrierte betriebliche Sicherheitsvorkehrungen und verwaltetes Lebenszyklusverhalten.
  • Einheitliche Produktionslage in allen Teams.

Wählen Sie AKS Standard aus, wenn Sie Plattformentscheidungen besitzen und optimieren müssen, z. B.:

  • Ihre Workload erfordert Windows Knotenpools.
  • Sie möchten die langfristige Supportoption verwenden.
  • Spezielle Netzwerkkonfigurationen, z. B. „Bring-Your-Own-CNI“, und Muster zur Plattformkomposition.
  • Explizite Lebenszyklus- und Verwaltungssteuerung für Clusterkomponenten.
  • Workload- oder Organisationseinschränkungen, die ein vollständig benutzerdefiniertes AKS-Plattformmodell erfordern.

Wenn unsicher, beginnen Sie mit AKS Automatic und validieren Sie anforderungen anhand bekannter Lücken, bevor Sie zu AKS Standard wechseln.

Note

Die folgenden Säulen enthalten eine Entwurfsprüfliste und eine Liste von Empfehlungen , die angeben, ob jede Auswahl auf Clusterarchitektur , Workloadarchitektur oder beides zutrifft.

Reliability

Der Zweck der Säule „Zuverlässigkeit“ besteht darin, durch genügend Resilienz und schnelles Wiederherstellen nach Fehlern eine kontinuierliche Funktionalität zu gewährleisten.

Entwurfsprinzipien für Zuverlässigkeit bieten eine allgemeine Designstrategie, die für einzelne Komponenten, Systemflüsse und das gesamte System angewendet wird.

Checkliste für die Arbeitsauslastungsgestaltung

Beginnen Sie Ihre Entwurfsstrategie auf der Grundlage der Checkliste für die Entwurfsprüfung von Reliability. Bestimmen Sie ihre Relevanz für Ihre Geschäftlichen Anforderungen, und berücksichtigen Sie dabei die Features von AKS und deren Abhängigkeiten. Erweitern Sie die Strategie, um bei Bedarf weitere Ansätze einzuschließen.

  • (Cluster) Erstellen Sie Redundanz, um die Resilienz zu verbessern. Verwenden Sie Verfügbarkeitszonen für Ihre AKS-Cluster als Teil Ihrer Resilienzstrategie, um die Verfügbarkeit bei der Bereitstellung in einer einzelnen Region zu erhöhen. Viele Azure-Regionen bieten Verfügbarkeitszonen. Die Zonen sind nahe genug, um zwischen ihnen Verbindungen mit geringer Latenz zu haben, aber weit genug auseinander, um die Wahrscheinlichkeit zu verringern, dass lokale Ausfälle mehr als eine Zone betreffen.

    Stellen Sie für kritische Workloads mehrere Cluster in verschiedenen Azure-Regionen bereit. Durch die geografische Verteilung von AKS-Clustern können Sie eine höhere Resilienz erzielen und die Auswirkungen regionaler Fehler minimieren. Eine Multiregionsstrategie trägt dazu bei, die Verfügbarkeit zu maximieren und Geschäftskontinuität bereitzustellen.

    Internetorientierte Workloads sollten Azure Front Door oder Azure Traffic Manager verwenden, um den Datenverkehr global über AKS-Cluster zu leiten. Weitere Informationen finden Sie unter Multiregion-Strategie.

    Planen Sie den IP-Adressraum, um sicherzustellen, dass Ihr Cluster Failoverdatenverkehr in mehreren Clustertopologien zuverlässig skalieren und verarbeiten kann.

  • (Cluster und Workloads) Überwachen Sie Zuverlässigkeits- und allgemeine Zustandsindikatoren des Clusters und der Workloads. Sammeln Sie Protokolle und Metriken, um den Workloadstatus zu überwachen, Leistungs- und Zuverlässigkeitstrends zu identifizieren und Probleme zu beheben.

    Lesen Sie Bewährte Methoden für die Überwachung von Kubernetes mit Azure Monitor und den Well-Architected Leitfaden zur Integritätsmodellierung für Workloads, um Ihre Lösung zur Zuverlässigkeits- und Gesundheitsüberwachung für Ihre AKS-Lösung zu entwerfen.

    Stellen Sie sicher, dass Workloads so erstellt werden, dass sie die horizontale Skalierung unterstützen und Informationen zur Anwendungsbereitschaft sowie Integrität bereitstellen.

  • (Cluster und Workload) Pods für Hostanwendungen in Nodepools für Benutzer hosten. Durch das Isolieren von System pods aus Anwendungsworkloads können Sie sicherstellen, dass die wichtigsten AKS-Dienste nicht von den Ressourcenanforderungen oder potenziellen Problemen betroffen sind, die durch eine Workload verursacht werden, die Benutzerknotenpools ausführt.

    Stellen Sie sicher, dass Ihre Workload in Benutzerknotenpools ausgeführt wird, und wählen Sie die richtige SKU aus. Schließen Sie mindestens zwei Knoten für Benutzerknotenpools und drei Knoten für den Systemknotenpool ein.

    Überprüfen Sie das Handbuch für die automatische Bereitstellung von Node , um die optimale VM-Konfiguration für Ihre Workloads automatisch bereitzustellen und zu verwalten.

  • (Cluster und Workload) Pod-Unterbrechungsbudgets (PDBs) definieren Geben Sie die Mindestanzahl von Replikaten an, die verfügbar bleiben müssen, damit freiwillige Unterbrechungen nicht dazu führen, dass zu viele Pods gleichzeitig ausfallen. Wenn AKS einen Cluster- oder Knotenpool aktualisiert, verschiebt es Pods von den Knoten, die aktualisiert werden, und berücksichtigt Ihre PDBs vor und während des Upgrades. Dadurch bleiben Arbeitslasten während geplanter Unterbrechungen verfügbar. Weitere Informationen finden Sie in den Community-Links unter Pod Disruption Budgets.

  • (Cluster und Workload) Berücksichtigen Sie den AKS-Servicelevelvertrag (SLA) in Ihre Verfügbarkeits- und Wiederherstellungsziele. Um die Zuverlässigkeits- und Wiederherstellungsziele für Ihren Cluster und Ihre Workload zu definieren, befolgen Sie die Anleitungen in den Empfehlungen zum Definieren von Zuverlässigkeitszielen. Formulieren Sie dann ein Design, das diesen Zielen entspricht. Berücksichtigen Sie die Verfügbarkeit von AKS-Clustern und gegebenenfalls das Verhalten von AKS Automatic pod readiness in Ihren Zuverlässigkeitszielen.

  • (Cluster und Workload) Schützen Sie den AKS-Clusterdienst mithilfe von Azure Backup, um Wiederherstellungspunkte in einem Sicherungstresor zu speichern und während bestimmter Arten von Notfallszenarien wiederherzustellen. Um die containerisierten Anwendungen und Daten, die in AKS-Clustern ausgeführt werden, zu sichern und wiederherzustellen, befolgen Sie die Anleitungen in der AKS-Sicherungsübersicht zum Konfigurieren des Schutzes.

Konfigurationsempfehlungen

Recommendation Benefit
(Cluster und Workload) Reservieren Sie Knotenselektoren und Affinität für Workloads, die bestimmte Knotenfunktionen benötigen, z. B. GPU-fähige oder hochspeicherfähige Knoten.

Vermeiden Sie die Verwendung von Knotenselektoren für die allgemeine Workloadisolation. Ihre übermäßige Verwendung führt zu Knotenabhängigkeiten, die die Planung anfällig machen und die Flexibilität bei der Platzierung verringern.
Der Scheduler kann allgemeine Workloads auf jedem geeigneten Knoten platzieren, sodass Ihre Workloads robust und betriebsbereit bleiben.
(Cluster) Wählen Sie das entsprechende Netzwerk-Plug-In basierend auf Netzwerkanforderungen und Clustergröße aus.

Verschiedene Netzwerk-Plug-Ins bieten unterschiedliche Funktionalitätsebenen. Azure Container Networking Interface (Azure CNI) ist für bestimmte Szenarien wie Windows-basierte Knotenpools, einige Netzwerkanforderungen und Kubernetes-Netzwerkrichtlinien erforderlich.

Verwenden Sie Azure CNI-Überlagerung als Standardnetzwerkmodell für AKS-Cluster. Überlagerungsnetzwerke vereinfachen die IP-Adressverwaltung, reduzieren die Anforderungen an die Subnetzgröße und skalieren effizient, ohne VNet-IP-Adressen für Pods zu verwenden. Berücksichtigen Sie bei Clustern, die sehr viele Pod-IPs oder eine hohe Poddichte erfordern, Azure CNI mit statischer Blockzuordnung. Vermeiden Sie Kubenet für neue Bereitstellungen.
Das richtige Netzwerk-Plug-In kann dazu beitragen, eine bessere Kompatibilität und Leistung sicherzustellen. Die Zuweisung statischer Blocke ermöglicht konsistente IP-Bereiche für eine bessere Konfiguration und Kapazitätsplanung von Sicherheitsrichtlinien.
(Cluster und Workload) Verwenden Sie das AKS-Uptime-SLA für produktionsfähige Cluster. Die Workload kann höhere Verfügbarkeitsziele aufgrund der höheren Verfügbarkeitsgarantien des Kubernetes-API-Serverendpunkts für AKS-Cluster unterstützen.
(Cluster) Verwenden Sie Verfügbarkeitszonen , um die Resilienz innerhalb einer Azure-Region zu maximieren, indem Sie AKS-Agent-Knoten über physisch getrennte Rechenzentren verteilen.

Wenn eine parallele Anordnung erforderlich ist, verwenden Sie entweder eine reguläre VMSS-basierte (Virtual Machine Scale Sets) AKS-Bereitstellung in einer einzelnen Zone, oder verwenden Sie Näherungsplatzierungsgruppen, um die Latenz auf Zwischenknoten zu minimieren.
Durch die Verteilung von Knotenpools über mehrere Zonen bleiben Knoten in einem Knotenpool auch dann in Betrieb, wenn eine andere Zone ausfällt.
(Cluster und Workload) Definieren Sie in Anwendungsbereitstellungsmanifesten Ressourcenanforderungen und -limits für Pods. Erzwingen Sie diese Grenzwerte mithilfe integrierter Definitionen für AKS in Azure Policy Container-CPU- und Speicherressourcengrenzwerte sind erforderlich, um die Ressourcenauslastung in Ihrem Kubernetes-Cluster zu verhindern.
(Cluster und Workload) Lassen Sie den Systemknotenpool von Anwendungsworkloads isoliert.

Systemknotenpools erfordern eine VM-SKU mit mindestens 4 vCPUs und 4 GB Arbeitsspeicher. Es wird empfohlen, 4 vCPU oder mehr zu verwenden. Weitere Informationen finden Sie unter System- und Benutzerknotenpools.
Der Systemknotenpool hostet kritische System-Pods, die für die Steuerungsebene Ihres Clusters unerlässlich sind. Indem Sie diese System pods von Anwendungsworkloads isolieren, stellen Sie sicher, dass die wesentlichen Dienste von den Ressourcenanforderungen oder potenziellen Problemen, die durch eine Workload verursacht werden, nicht betroffen sind.
(Cluster und Workload) Halten Sie das Substrat für Ihre Anwendungen so flexibel und robust wie möglich. Reservieren Sie dedizierte Knotenpools für Fälle, in denen sie tatsächlich erforderlich sind, wie etwa für einen bestimmten SKU-Typ oder für Sicherheitsanforderungen (z. B. das Bereitstellen von FIPS-konformen Workloads auf FIPS-konformen Knoten).

Vermeiden Sie eine große Anzahl von Knotenpools, um den Verwaltungsaufwand zu reduzieren.
Ein flexibles Substrat bietet dem Planer mehr Platzierungsoptionen, sodass Ihre Workloads robust bleiben und Sie spröde Knotenabhängigkeiten vermeiden. Indem das Anheften von Knoten auf echte Hardware- oder Sicherheitsanforderungen beschränkt wird, kann sichergestellt werden, dass jede Anwendung die benötigten Ressourcen erhält, ohne dass es zu einer Überbereitstellung oder Unterauslastung der Ressourcen kommt.
(Cluster) Verwenden Sie ein NAT-Gateway für Cluster, die Workloads ausführen, die viele gleichzeitige ausgehende Verbindungen herstellen. Azure NAT Gateway unterstützt zuverlässigen Ausgehenden Datenverkehr im großen Maßstab und hilft Ihnen, Zuverlässigkeitsprobleme zu vermeiden, indem Sie Azure Load Balancer-Einschränkungen auf hohen gleichzeitigen ausgehenden Datenverkehr anwenden.
(Cluster und Workload) Verwenden Sie Azure Backup, um AKS-Cluster zu schützen und während einer Katastrophe in alternative Regionen wiederherzustellen. Azure Backup unterstützt die Sicherungs- und Wiederherstellungsvorgänge von containerisierten Anwendungen und Daten, die sowohl für Clusterstatus- als auch anwendungsdaten ausgeführt werden.

Sie können die Sicherungen in einem regionalen Notfallszenario verwenden und Sicherungenwiederherstellen.
Azure Backup mit Azure Kubernetes Service (AKS) bietet eine verwaltete, skalierbare, sichere und kostengünstige Lösung. Ihr Team konfiguriert die Lösung so, dass Sicherungsbereiche, Aufbewahrung und Testwiederherstellungen ausgewählt werden, ohne die Sicherungsinfrastruktur erstellen zu müssen.
(Cluster) Verwenden Sie geplante Wartung, um Cluster- und Knotenimageupgrades in Azure Kubernetes Service (AKS) zu planen und zu steuern. Geplante Wartung trägt dazu bei, dass Upgrades automatisch auf kontrollierte Weise angewendet werden, wodurch Ausfallzeiten und Unterbrechungen für Ihre Workloads minimiert werden.

Security

Die Sicherheitssäule bietet Vertraulichkeits-, Integritäts- und Verfügbarkeitsgarantien für die Arbeitsauslastung.

Die Grundsätze des Sicherheitsdesigns bieten eine übergeordnete Designstrategie zur Erreichung dieser Ziele, indem sie Ansätze für das technische Design von AKS anwenden.

Checkliste für die Arbeitsauslastungsgestaltung

Starten Sie Ihre Designstrategie basierend auf der Prüfliste für die Designüberprüfung für Sicherheit und identifizieren Sie Sicherheitsrisiken und Kontrollen, um den Sicherheitsstatus zu verbessern. Machen Sie sich mit AKS-Sicherheitskonzepten vertraut und bewerten Sie die Empfehlungen zur Sicherheitshärtung basierend auf dem CIS Kubernetes Benchmark. Erweitern Sie die Strategie, um bei Bedarf weitere Ansätze einzuschließen.

  • (Cluster) Integration in Microsoft Entra ID für die Identitäts- und Zugriffsverwaltung. Zentrale Identitätsverwaltung für Ihren Cluster mithilfe von Microsoft Entra ID. Jede Änderung des Benutzerkonto- oder Gruppenstatus aktualisiert automatisch den Zugriff auf den AKS-Cluster. Identität als primären Sicherheitsperimetereinrichten. Die Entwickler und Anwendungsbesitzer Ihres Kubernetes-Clusters benötigen Zugriff auf verschiedene Ressourcen.

    Verwenden Sie die rollenbasierte Zugriffssteuerung (RBAC) von Kubernetes mit Microsoft Entra ID für den Zugriff mit geringsten Rechten. Schützen Sie Die Konfiguration und geheime Schlüssel, indem Sie die Zuweisung von Administratorrechten minimieren.

  • (Cluster) Integration in Sicherheitsüberwachungs- und Sicherheitsinformations- und Ereignisverwaltungstools. Verwenden Sie Microsoft Defender für Container mit Microsoft Sentinel, um Bedrohungen in Ihren Clustern und den darauf ausgeführten Workloads schnell zu erkennen und schnell zu reagieren. Aktivieren Sie AKS-Connector für Microsoft Sentinel, um Ihre AKS-Diagnoseprotokolle in Microsoft Sentinel zu streamen.

  • (Cluster und Workloads) Segmentierung und Netzwerkkontrollen implementieren. Um Datenexfiltration zu verhindern, stellen Sie sicher, dass nur autorisierter und sicherer Datenverkehr zugelassen wird und die Auswirkungen einer Sicherheitsverletzung begrenzt werden.

    Erwägen Sie die Verwendung eines privaten AKS-Clusters, um sicherzustellen, dass der Clusterverwaltungsdatenverkehr zu Ihrem API-Server in Ihrem privaten Netzwerk verbleibt. Oder verwenden Sie die API-Server-Zulassungsliste für öffentliche Cluster.

  • (Workload) Verwenden Sie eine Webanwendungsfirewall (WAF), um eingehenden Datenverkehr auf potenzielle Angriffe zu überprüfen. WAF kann Bedrohungen in Echtzeit erkennen und mindern, um schädlichen Datenverkehr zu blockieren, bevor sie Ihre Anwendungen erreicht. Es bietet einen robusten Schutz vor gängigen webbasierten Angriffen wie SQL-Einfügung, websiteübergreifendes Skripting und anderen Sicherheitsanfälligkeiten von Open Web Application Security Project. Einige Lastverteiler, wie z.B. das Azure Application Gateway oder Azure Front Door, verfügen über eine integrierte WAF.

  • (Workload) mTLS zwischen Ingress- und Mesh-Diensten automatisieren. Wenn Ihre Workload ein Service Mesh wie Istio verwendet, nutzen Sie Application Gateway for Containers mit Istio-Integration, um mTLS-Konnektivität, Vertrauen und Zertifikatrotation zwischen der gemeinsamen Ingress-Ebene und meshfähigen Diensten zu automatisieren. Dies reduziert die sich wiederholende MTLS-Konfiguration und erweitert verschlüsselte Datenverkehrspfade für Containerplattformen. Stellen Sie wie bei jeder Integration sicher, dass Sie die Funktionalität vor der Bereitstellung testen.

  • (Workload) Die Softwarelieferkette einer gehärteten Workload aufrechterhalten. Sorgen Sie dafür, dass Ihre Pipeline für kontinuierliche Integration und kontinuierliche Bereitstellung durch containerorientierte Scans gefestigt ist. Verwenden Sie den Ansatz DevSecOps on AKS.

  • (Cluster und Workload) Implementieren Sie zusätzlichen Schutz für spezielle sichere Workloads. Wenn auf Ihrem Cluster eine sensible Workload ausgeführt werden soll, müssen Sie möglicherweise einen privaten Cluster bereitstellen. Hier sind einige Beispiele:

  • (Cluster) Steuern von Clustererweiterungen als Teil der Clustersicherheitsgrenze. Clustererweiterungen installieren und verwalten Dienste auf Ihrem AKS-Cluster. Bevor Sie eine Erweiterung aktivieren, bewerten Sie ihre In-Cluster-Komponenten, verwaltete Identitäten, RBAC-Berechtigungen, Netzwerkzugriff und Lebenszyklusanforderungen. Aktivieren Sie nur Erweiterungen, die die Workload benötigt, und halten Sie sie auf dem neuesten Stand.

Konfigurationsempfehlungen

Recommendation Benefit
(Cluster) Verwenden Sie verwaltete Identitäten im Cluster. Sie können den Aufwand für die Verwaltung und Rotation von Service Principals vermeiden.
(Workload) Verwenden Sie Microsoft Entra Workload ID mit AKS-, um von Ihrer Workload aus auf geschützte Microsoft Entra-Ressourcen zuzugreifen, z. B. Azure Key Vault und Microsoft Graph. Verwenden Sie AKS Workload-IDs, um den Zugriff auf Azure-Ressourcen mithilfe von Microsoft Entra ID RBAC zu schützen, ohne anmeldeinformationen direkt in Ihrem Code verwalten zu müssen.
(Cluster) Verwenden Sie Microsoft Entra ID, um sich über AKS mit Azure Container Registry zu authentifizieren. Mithilfe der Microsoft Entra-ID kann AKS sich bei der Container Registry authentifizieren, ohne dass imagePullSecrets geheime Schlüssel verwendet werden.
(Cluster) Sichern Sie den Netzwerkdatenverkehr zu Ihrem API-Server, indem Sie einen privaten AKS-Cluster verwenden, wenn die Workloadanforderungen höhere Segmentierungsebenen erfordern. Standardmäßig wird der Netzwerkdatenverkehr zwischen Ihren Knotenpools und dem API-Server in das Microsoft-Backbone-Netzwerk übertragen. Mithilfe eines privaten Clusters können Sie sicherstellen, dass der Netzwerkdatenverkehr mit Ihrem API-Server nur im privaten Netzwerk verbleibt.
(Cluster) Verwenden Sie für öffentliche AKS-Cluster API-serverautorisierte IP-Adressbereiche. Schließen Sie Quellen wie die öffentlichen IP-Adressen Ihrer Bereitstellungs-Build-Agents, Ihr Operations Management und den Ausgangspunkt der Knotenpools ein, wie beispielsweise die Azure-Firewall. Wenn Sie öffentliche Cluster verwenden, können Sie die Angriffsfläche Ihres AKS-Clusters erheblich reduzieren, indem Sie den Datenverkehr einschränken, der den API-Server Ihrer Cluster erreichen kann.
(Cluster) Schützen Sie den API-Server mithilfe von Microsoft Entra ID RBAC.

Deaktivieren Sie lokale Konten, um den gesamten Clusterzugriff mithilfe von Microsoft Entra ID-basierten Identitäten zu erzwingen.
Das Sichern des Zugriffs auf den Kubernetes-API-Server ist eine der wichtigsten Dinge, die Sie tun können, um Ihren Cluster zu sichern. Integrieren Sie Kubernetes RBAC mit Microsoft Entra ID, um den Zugriff auf den API-Server zu steuern.
(Cluster und Workload) Sichern Sie den Netzwerkdatenverkehr zwischen Pods in einem Cluster mit Azure CNI, unterstützt von Cilium. Es kombiniert die Steuerungsebene von Azure Container Networking Interface (CNI) mit der Datenebene von Cilium, um leistungsstarke Netzwerke und Sicherheit zu bieten. Advanced Container Networking Services fügt viele zusätzliche nützliche Features zusätzlich zu Cilium hinzu. Azure CNI Powered by Cilium verbessert das Dienstrouting, ermöglicht eine effizientere Durchsetzung von Netzwerkrichtlinien, bietet eine bessere Observability des Clusterdatenverkehrs und unterstützt größere Cluster.
(Cluster) Sichern Sie Cluster und Pods mithilfe der Azure-Richtlinie. Verwenden Sie Bereitstellungsschutzmechanismen, um bewährte Methoden für Richtlinien zu erzwingen. Azure Policy kann dazu beitragen, bedarfsgesteuerte Erzwingung und Schutzmaßnahmen zentral und einheitlich auf die Cluster anzuwenden. Außerdem können Sie damit steuern, welche Funktionen den Pods gewährt werden, und erkennen, ob Verstöße gegen die Unternehmensrichtlinie vorliegen.
(Cluster) Sicherer Containerzugriff auf Ressourcen. Begrenzen Sie den Zugriff auf Aktionen, die von Containern ausgeführt werden können. Geben Sie die niedrigste Anzahl an Berechtigungen an, und vermeiden Sie die Verwendung von Stamm- oder Rechteausweitung.

Informationen zu Linux-basierten Containern finden Sie unter Sicherheitscontainerzugriff auf Ressourcen mithilfe integrierter Linux-Sicherheitsfeatures.
Indem Sie Berechtigungen einschränken und die Verwendung von Stamm- oder privilegierter Eskalation vermeiden, tragen Sie dazu bei, das Risiko von Sicherheitsverletzungen zu verringern. Sie können sicherstellen, dass auch dann, wenn ein Container kompromittiert wird, der potenzielle Schaden minimiert wird.
(Cluster) Steuern Sie den Clusterausgangsdatenverkehr, indem Sie sicherstellen, dass der ausgehende Datenverkehr Ihres Clusters über einen Netzwerksicherheitspunkt wie azure Firewall oder einen HTTP-Proxy durchläuft. Indem Sie ausgehenden Datenverkehr über die Azure-Firewall oder einen HTTP-Proxy weiterleiten, können Sie Sicherheitsrichtlinien erzwingen, die nicht autorisierten Zugriff und Datenexfiltration verhindern. Dieser Ansatz vereinfacht auch die Verwaltung von Sicherheitsrichtlinien und erleichtert die Durchsetzung konsistenter Regeln in Ihrem gesamten AKS-Cluster.
(Cluster) Konfigurieren sie die HTTP-Proxyunterstützung für vorhandene AKS-Cluster in proxyabhängigen Umgebungen.

Aktivieren Sie die HTTP-Proxykonfiguration für AKS-Knoten und Pods, um in vorhandene Sicherheitsarchitekturen und Complianceanforderungen des Unternehmensnetzwerks zu integrieren.
Kritisch für Finanzdienstleistungen und andere regulierte Branchen, für die der gesamte Internetdatenverkehr über HTTP-Proxys des Unternehmens zur Sicherheitsüberprüfung und Complianceüberwachung fließen muss. Ermöglicht eine nahtlose Integration in die vorhandene Unternehmensnetzwerksicherheitsinfrastruktur.
(Cluster) Implementieren Sie die Unterstützung einer benutzerdefinierten Zertifizierungsstelle nur, wenn Ihre Workload bestimmte interne Anforderungen hat, um Vertrauensstellungen zwischen AKS-Clustern und der PKI-Infrastruktur für Unternehmen einzurichten.

Konfigurieren Sie eine benutzerdefinierte Zertifizierungsstelle, um Vertrauen für private Registrys, Proxys und Firewalls innerhalb der vorhandenen Frameworks zur Organisationszertifikatverwaltung zu aktivieren.
Wesentlich für Unternehmen mit interner Zertifizierungsstelle-Infrastruktur. Ermöglicht AKS-Clustern, privaten Registrierungsstellen und internen Diensten der Organisation zu vertrauen und gleichzeitig Unternehmenssicherheitsrichtlinien und Complianceanforderungen beizubehalten.
(Cluster) Verwenden Sie die Open-Source Microsoft Entra Workload ID und den Secrets Store CSI-Treiber mit Key Vault. Diese Features helfen Ihnen, geheime Schlüssel, Zertifikate und Verbindungszeichenfolgen in Key Vault mithilfe einer starken Verschlüsselung zu schützen und zu drehen. Sie bieten ein Zugriffsüberwachungsprotokoll und halten Kerngeheimnisse aus der Bereitstellungspipeline heraus.
(Cluster) Verwenden Sie Microsoft Defender for Containers. Microsoft Defender für Container hilft Ihnen, die Sicherheit Ihrer Cluster, Container und deren Anwendungen zu überwachen und zu verwalten.

Kostenoptimierung

Bei der Kostenoptimierung geht es darum, Ausgabenmuster zu erkennen, Investitionen in kritischen Bereichen zu priorisieren und in anderen Bereichen zu optimieren, um das Budget der Organisation einzuhalten und gleichzeitig die geschäftlichen Anforderungen zu erfüllen.

Die Designprinzipien für die Kostenoptimierung bieten eine allgemeine Designstrategie, um diese Ziele zu erreichen und die notwendigen Kompromisse bei der technischen Gestaltung im Zusammenhang mit AKS und seiner Umgebung einzugehen.

Checkliste für die Arbeitsauslastungsgestaltung

Erstellen Sie Ihre Entwurfsstrategie basierend auf der Checkliste zur Entwurfsüberprüfung in Bezug auf „Kostenoptimierung“ für Investitionen. Verfeinern Sie den Entwurf so, dass die Arbeitslast mit dem Budget übereinstimmt, das für die Arbeitslast zugewiesen ist. Ihr Design sollte die richtigen Azure-Funktionen verwenden, Investitionen überwachen und Möglichkeiten zur Optimierung im Laufe der Zeit finden.

  • (Cluster) Fügen Sie die Preisniveaus für AKS in Ihr Kostenmodell ein. Verwenden Sie zum Schätzen der Kosten den Azure Preisrechner, und testen Sie verschiedene Konfigurations- und Zahlungspläne im Rechner.

  • (Cluster) Erhalten Sie die besten Tarife für Ihren Workload. Verwenden Sie die entsprechende VM-SKU für jeden Knotenpool, da sie sich direkt auf die Kosten für die Ausführung Ihrer Workloads auswirkt. Die Auswahl einer leistungsfähigen VM ohne ordnungsgemäße Auslastung kann zu verschwendeten Ausgaben führen. Die Auswahl einer weniger leistungsfähigen VM kann Leistungsprobleme und erhöhte Ausfallzeiten verursachen.

    Wenn Sie die Kapazität ordnungsgemäß planen und Ihre Workload vorhersehbar ist und für einen längeren Zeitraum vorhanden ist, registrieren Sie sich für Azure Reservierungen oder einen Sparplan, um Ihre Ressourcenkosten zu reduzieren.

    Wählen Sie virtuellen Azure Spot-Computer aus, um nicht genutzte Azure-Kapazität mit erheblichen Rabatten zu verwenden. Diese Rabatte können bis zu 90 % der nutzungsbasierten Preise erreichen. Wenn Azure die Kapazität wieder benötigt, entfernt die Azure-Infrastruktur die Spot-Knoten.

    Wenn Sie AKS lokal oder am Edge ausführen, können Sie auch Azure-Hybridvorteil verwenden, um Kosten zu senken, wenn Sie containerisierte Anwendungen in diesen Szenarien ausführen.

  • (Cluster und Workload) Optimieren Sie die Kosten von Workload-Komponenten. Wählen Sie die kostengünstigste Region für Ihre Workload aus. Bewerten Sie die Kosten-, Latenz- und Complianceanforderungen, um sicherzustellen, dass Ihre Workload kosteneffizient ausgeführt wird und dass sie sich nicht auf Ihre Kunden auswirkt oder zusätzliche Netzwerkgebühren erstellt. Die Region, in der Sie Ihre Workload in Azure bereitstellen, kann sich erheblich auf die Kosten auswirken. Aufgrund vieler Faktoren variieren die Ressourcenkosten für jede Region in Azure.

    Verwalten Sie kleine und optimierte Bilder, um Kosten zu senken, da neue Knoten diese Bilder herunterladen müssen. Benutzeranforderungsfehler oder Timeouts beim Starten der Anwendung können zu Überprovisionierung führen. Erstellen Sie Images auf eine Weise, mit der der Container so schnell wie möglich gestartet werden kann, um Fehler und Timeouts zu vermeiden.

    Überprüfen Sie die Empfehlungen zur Kostenoptimierung in Bewährte Methoden für die Überwachung von Kubernetes mit Azure Monitor, um die beste Überwachungsstrategie für Ihre Workloads zu ermitteln. Analysieren Sie Leistungsmetriken, beginnend mit CPU, Arbeitsspeicher, Speicher und Netzwerk, um Kostenoptimierungsmöglichkeiten nach Cluster, Knoten und Namespace zu identifizieren.

  • (Cluster und Workload) Kosten für die Skalierung von Workloads optimieren. Erwägen Sie alternative Konfigurationen für die vertikale und horizontale Skalierung, um die Skalierungskosten zu reduzieren und gleichzeitig alle Workloadanforderungen zu erfüllen. Verwenden Sie Autoskalierung, um abzuskalieren, wenn die Workloads weniger aktiv sind.

  • (Cluster und Workload) Sammeln und Analysieren von Kostendaten. Die Grundlage für die Aktivierung der Kostenoptimierung ist die Ausbreitung eines kostensparenden Clusters. Entwickeln Sie eine Kosteneffizienz-Denkweise, die die Zusammenarbeit zwischen Finanz-, Betriebs- und Entwicklungsteams umfasst, um die Ausrichtung auf kostensparende Ziele voranzutreiben und Transparenz zu Cloudkosten zu bringen.

  • (Cluster und Workload) Sorgen Sie dafür, dass Arbeitslasten nachhaltiger werden. Um Arbeitslasten nachhaltiger und cloudeffizienter zu machen, müssen Sie Anstrengungen rund um die Kostenoptimierung, die Reduzierung der Co2-Emissionen und die Optimierung des Energieverbrauchs kombinieren. Die Optimierung der Kosten der Anwendung ist der erste Schritt, um Workloads nachhaltiger zu gestalten.

    Weitere Informationen darüber, wie Sie nachhaltige und effiziente AKS-Workloads erstellen, finden Sie unter Nachhaltige Software-Engineering-Prinzipien in AKS.

Konfigurationsempfehlungen

Recommendation Benefit
(Cluster und Workload) Richten Sie die AKS-SKU-Auswahl und die Größe verwalteter Datenträger an den Workloadanforderungen aus. Wenn Sie Ihre Auswahl an Ihre Workloadanforderungen anpassen, können Sie sicherstellen, dass Sie nicht für nicht benötigte Ressourcen bezahlen.
(Cluster) Aktivieren Sie die automatische Bereitstellung von Knoten (Node Auto-Provisioning, NAP), um die richtigen VM-Instanzen für Ihre AKS-Knotenpools automatisch auszuwählen und zu skalieren. Der Typ der VM-Instanz wirkt sich direkt auf die Kosten für den Betrieb von Anwendungen auf AKS aus, sodass eine überdimensionierte SKU zu unnötigen Ausgaben führt und eine unterdimensionierte SKU zu Leistungsproblemen führt. NAP wählt die optimale VM-Konfiguration basierend auf ausstehenden Pod-Ressourcenanforderungen aus, sodass Workloads auf effizienteste und kostengünstige Weise ausgeführt werden.
(Cluster) Wählen Sie VMs basierend auf der energieeffizienteren ARM-Architektur aus. AKS unterstützt das Erstellen von Arm64-Knotenpools und eine Mischung aus Intel- und Arm64-Architekturknoten in einem Cluster. Die Arm64-Architektur bietet aufgrund der geringeren Leistungsauslastung und der effizienten Berechnungsleistung ein besseres Preis-leistungs-Verhältnis. Diese Funktionen können eine bessere Leistung zu niedrigeren Kosten erzielen.
(Cluster) Aktivieren Sie die Cluster-Autoskalierung , um die Anzahl der Agentknoten als Reaktion auf übermäßige Ressourcenkapazität automatisch zu reduzieren.

Die automatische Knotenbereitstellung (Node Auto-Provisioning, NAP) kann auch bei der Skalierung helfen und VMs (Knoten) in einem Cluster verwalten, wenn durch anstehende Pods Druck entsteht.
Durch das automatische Herunterskalieren der Anzahl der Knoten in Ihrem AKS-Cluster können Sie bei geringer Nachfrage einen effizienten Cluster betreiben und bei steigender Nachfrage hochskalieren.
(Workload) Verwenden Sie HorizontalPodAutoscaler , um die Anzahl der Pods in einer Bereitstellung abhängig von der CPU-Auslastung oder anderen Metriken anzupassen. Das automatisches Abskalieren der Anzahl von Pods, wenn die Nachfrage niedrig ist, und das Aufskalieren, wenn die Nachfrage steigt, führt zu einem kostengünstigeren Betrieb der Workload.
(Workload) Verwenden Sie VerticalPodAutoscaler, um Ihre Pods bedarfsgerecht zu dimensionieren und Ressourcenanforderungen und -limits auf Grundlage der bisherigen Nutzung dynamisch festzulegen. Durch festlegen von Ressourcenanforderungen und Grenzwerten für Container für jede Workload gibt VerticalPodAutoscaler CPU und Arbeitsspeicher für andere Pods frei und trägt dazu bei, eine effektive Nutzung Ihrer AKS-Cluster sicherzustellen.
(Cluster) Konfigurieren Sie das Add-On für die AKS-Kostenanalyse. Mit der Kostenanalyseclustererweiterung erhalten Sie detaillierte Einblicke in Kosten, die verschiedenen Kubernetes-Ressourcen in Ihren Clustern oder Namespaces zugeordnet sind.

Operative Exzellenz

Operational Excellence konzentriert sich in erster Linie auf Verfahren für Entwicklungspraktiken, Beobachtbarkeit und Release Management.

Die Designprinzipien Operational Excellence bieten eine allgemeine Designstrategie, um diese Ziele für die betrieblichen Anforderungen der Arbeitslast zu erreichen.

Checkliste für die Arbeitsauslastungsgestaltung

Beginnen Sie Ihre Design-Strategie auf der Grundlage der Checkliste zur Design-Überprüfung für Operational Excellence, um Prozesse für Einblicke, Tests und Bereitstellung zu definieren. Lesen Sie AKS bewährte Methoden und den Day-2-Betriebsleitfaden, um über wichtige Überlegungen zu erfahren und diese umzusetzen.

  • (Cluster) Implementieren Sie einen Bereitstellungsansatz für Infrastructure as Code (IaC). Verwenden Sie einen deklarativen, vorlagenbasierten Bereitstellungsansatz mithilfe von Bicep, Terraform oder ähnlichen Tools. Stellen Sie sicher, dass alle Bereitstellungen wiederholbar, nachverfolgbar und in einem Quellcode-Repository gespeichert sind. Weitere Informationen finden Sie in den Schnellstarts in der AKS-Produktdokumentation.

  • (Cluster und Workload) Automatisieren Sie Infrastruktur- und Workloadbereitstellungen. Verwenden Sie Standardsoftwarelösungen, um die Bereitstellung Ihres Clusters und Ihrer Workloads zu verwalten, zu integrieren und zu automatisieren. Integrieren Sie Bereitstellungspipelinen in Ihr Quellcodeverwaltungssystem und integrieren Sie automatisierte Tests.

    Erstellen Sie einen automatisierten Prozess, um sicherzustellen, dass Ihre Cluster mit den erforderlichen clusterweiten Konfigurationen und Bereitstellungen gestartet werden. Dieser Vorgang wird in der Regel mithilfe von GitOps durchgeführt.

    Verwenden Sie einen wiederholbaren und automatisierten Bereitstellungsprozess für Ihre Arbeitsauslastung innerhalb Ihres Softwareentwicklungslebenszyklus.

  • (Cluster und Workload) Verwenden Sie für Multiclusterumgebungen Azure Kubernetes Fleet Manager. Flottenmanager können Clustermanagementvorgänge koordinieren. Sie kann auch die Ressourcenplatzierung über Cluster hinweg bereitstellen, wenn Sie einen dedizierten Hubcluster bereitstellen.

  • (Cluster und Workload) Implementieren sie eine Überwachungsstrategie. Sammeln Sie Protokolle und Metriken, um die Integrität der Workload zu überwachen, Trends in Leistung und Zuverlässigkeit zu identifizieren und Probleme zu beheben. Überprüfen Sie die bewährten Methoden für die Überwachung von Kubernetes mit Azure Monitor und die Well-Architected Empfehlungen zum Entwerfen und Erstellen eines Überwachungssystems, um die beste Überwachungsstrategie für Ihre Workloads zu ermitteln.

    Aktivieren Sie Diagnoseeinstellungen, um sicherzustellen, dass Steuerungsebenen- oder Kern-API-Serverinteraktionen protokolliert werden. Sammeln Sie Metriken der AKS-Steuerungsebene mit dem verwalteten Azure Monitor-Dienst für Prometheus und definieren Sie Warnungen für Signale, die auf eine Beeinträchtigung von API-Server, Scheduler oder Controller hinweisen. Metriken stellen Trend- und Schwellenwertdaten bereit, behalten jedoch Steuerebenenprotokolle für Untersuchungen auf Ereignisebene bei.

    Die Workload sollte so entworfen werden, dass Telemetriedaten ausgegeben werden, die erfasst werden können und auch Live- und Bereitschaftsstatus umfassen.

    Ziehen Sie KI-gestützte Netzwerkdiagnose-Agenten wie den Container Network Insights Agent als schreibgeschützte Ergänzung zu Ihrer AKS-Überwachungsstrategie in Betracht, wenn Operatoren zeitweise auftretende Pod-zu-Service-, DNS- oder Paketverlustfehler untersuchen müssen. Diese Agenten können Problembeschreibungen in natürlicher Sprache verwenden, um Live-Telemetriedaten aus Clustern, Datenflüssen und Host-Netzwerken innerhalb eines einzigen Untersuchungspfads zu korrelieren, wodurch die manuelle Korrelation von Protokollen und Metriken bei Vorfällen reduziert wird. Der Preis dafür ist eine zusätzliche operative Komplexität. Setzen Sie sie daher ein, um etablierte Runbooks, Abfragen und Warnmeldungen zu ergänzen, anstatt grundlegende Praktiken der Observability zu ersetzen.

  • (Cluster und Workload) Strategien für Tests in der Produktion implementieren. Tests in der Produktion verwenden echte Bereitstellungen, um das Verhalten und die Leistung einer Anwendung in der Produktionsumgebung zu überprüfen und zu messen. Verwenden Sie Chaos-Engineering-Methoden, die auf Kubernetes abzielen, um Anwendungs- oder Plattformzuverlässigkeitsprobleme zu identifizieren.

    Azure Chaos Studio können Fehler simulieren, z. B. Zonenfehler von Knotenpools, und Notfallwiederherstellungssituationen auslösen.

  • (Cluster und Workload) Workload-Governance durchsetzen. Azure Policy hilft dabei, eine konsistente Einhaltung von Organisationsstandards sicherzustellen, die Richtlinienerzwingung zu automatisieren und eine zentrale Sichtbarkeit und Kontrolle über Ihre Clusterressourcen zu gewährleisten.

    Lesen Sie den Abschnitt Azure Policy, um mehr über die verfügbaren integrierten Richtlinien für AKS zu erfahren.

  • (Cluster und Workload) Verwenden Sie Blue-Green-Bereitstellungen auf Stempel-Ebene für geschäftskritische Workloads. Ein stempelbasierter Blue-Green-Bereitstellungsansatz kann das Vertrauen in die Bereitstellung von Änderungen erhöhen und Upgrades ohne Ausfallzeiten ermöglichen, da Kompatibilitäten mit nachgelagerten Abhängigkeiten wie der Azure-Plattform, Ressourcenanbietern und IaC-Modulen validiert werden können.

    Kubernetes und Ingress-Controller unterstützen viele erweiterte Bereitstellungsmuster für die Einbindung in Ihren Release-Engineering-Prozess. Berücksichtigen Sie Muster wie Blau-Grün-Bereitstellungen oder Canary-Releases.

AKS bietet auch Blue-Green-Upgrades für Knotenpools (Vorschau), mit denen Sie Ihre AKS-Knotenpools upgraden können, indem Sie dem vorhandenen Knotenpool neue grüne Knoten mit der aktualisierten Konfiguration hinzufügen, während die ursprünglichen blauen Knoten weiter ausgeführt werden.

Konfigurationsempfehlungen

Recommendation Benefit
(Cluster) Setzen Sie Cluster- und Podkonfigurationsstandards mithilfe von Azure-Richtlinien für AKS um. Verwenden Sie Bereitstellungsschutzmechanismen, um bewährte Methoden für Richtlinien zu erzwingen. Azure-Richtlinien für AKS können Ihnen dabei helfen, umfassende Durchsetzung und Sicherheitsvorkehrungen für Ihre Cluster auf eine zentralisierte und konsistente Weise anzuwenden. Verwenden Sie Richtlinien, um die Berechtigungen zu definieren, die Pods erteilt werden, und stellen Sie die Einhaltung von Unternehmensrichtlinien sicher.
(Cluster) Konfigurieren Sie die Azure CNI Static Block Allocation für vorhersagbare Pod-Subnetzzuordnung und verbesserte IP-Adressverwaltung in AKS-Clustern.

Implementieren Sie statische Blockzuordnung, um vorhersehbare IP-Adresszuweisungen für Kubernetes-Pods innerhalb definierter Subnetzbereiche bereitzustellen, wodurch die Integration mit vorhandenen Netzwerksicherheitsrichtlinien ermöglicht wird.
Wichtig für Entwicklungsteams, die mehrere AKS-Cluster ausführen, die vorhersagbare IP-Adresszuweisung benötigen, um in vorhandene Netzwerksicherheitsrichtlinien und Firewallregeln zu integrieren. Verbessert die operative Exzellenz durch vorhersehbare Netzwerkadressierung und vereinfachtes IP-Management.
(Cluster) Verwenden Sie die automatische Bereitstellung von Knoten (Node Auto-Provisioning, NAP) für die Knotenskalierung.

Verwenden Sie die Automatische Skalierung des Clusters, wenn Ihre Workload über feste, explizit verwaltete Knotenpools verfügt.
NAP trägt dazu bei, dass Ihr AKS-Cluster die Anzahl der Knoten basierend auf Ressourcenanforderungen automatisch anpassen kann, um die Ressourcenauslastung und die betriebliche Effizienz zu verbessern.
(Cluster) Verwenden Sie den KAITO AI Toolchain-Betreiber für eine effiziente Bereitstellung und Verwaltung von AI-Modell, die Workloads bedient. KAITO vereinfacht die Bereitstellung und Skalierung von KI-Modellen auf Kubernetes und bietet gleichzeitig eine optimierte Infrastruktur für Machine Learning-Ableitungsworkloads. Data Science-Teams können große Sprachmodelle oder andere KI-Modelle auf AKS mithilfe von KAITO bereitstellen und skalieren, wodurch GPU-Ressourcen, Modellbereitstellungsinfrastrukturen und Skalierungsrichtlinien ohne manuelle Kubernetes-Konfiguration automatisch verarbeitet und die Betriebskomplexität reduziert werden.
(Cluster) Aktivieren Sie AKS Automatic für verwaltete Kubernetes-Erfahrungen mit automatisierter Clusterverwaltung. AKS Automatic reduziert den Betriebsaufwand für die Kubernetes-Clusterverwaltung, indem Routineaufgaben automatisiert und gleichzeitig eine optimale Konfiguration und Sicherheitslage sichergestellt werden. Entwicklungsteams können Anwendungen auf AKS bereitstellen, ohne Die Clusterkonfiguration, Updates oder Optimierung zu verwalten, sodass sie sich auf die Anwendungsentwicklung konzentrieren können und gleichzeitig sicherstellen, dass ihre Kubernetes-Infrastruktur den bewährten Methoden automatisch folgt.
(Cluster) Verwenden Sie für private AKS-Cluster einen Azure Bastion Tunnel, um eine Verbindung mit dem privaten API-Server für Verwaltungsaufgaben herzustellen. Bastion macht es überflüssig, den Cluster-Endpunkt dem öffentlichen Internet auszusetzen oder eine Jump-Box-VM zu betreiben. Allerdings erhöht es die Servicekosten und schafft eine Abhängigkeit für den Zugriff durch Betreiber.
(Cluster) Aktivieren Sie automatische Upgrades , um sicherzustellen, dass Ihre Cluster auf dem neuesten Stand sind. Cluster-Autoupgrade bietet einen Mechanismus nach dem Prinzip „einmal konfigurieren und dann vergessen“, der spürbare Vorteile bei Zeit und Betriebskosten bietet.
(Cluster) Verwalten Sie Updates für mehrere Cluster mit Azure Kubernetes Fleet Manager. Die Ausführung der Fleet Manager-Aktualisierung kann Genehmigungsschranken mit Event Grid automatisieren, um mehr Kontrolle darüber zu ermöglichen, wann Updategruppen oder Stufen verarbeitet werden. Durch die Automatisierung von Updatetoren können konsistente und kontrollierte Updates über mehrere Cluster hinweg sichergestellt werden, wodurch das Risiko von Ausfallzeiten und Konfigurationsabweichungen reduziert wird.
(Cluster und Workload) Verwenden Sie für Multiclusterumgebungen Azure Kubernetes Fleet Manager-Ressourcenplatzierung, um Workloads über Mitgliedscluster hinweg über richtliniengesteuerte Platzierungsentscheidungen zu verteilen. Reduziert die manuelle Koordination, wenn Sie mehrere AKS-Cluster über Regionen oder Umgebungen hinweg betreiben und eine konsistente Bereitstellungsgovernance benötigen.
(Cluster und Workload) Verwenden Sie die Kubernetes-Gateway-API für Eintritt und Layer-7-Traffic-Verwaltung.

Erwägen Sie beispielsweise die Verwendung des AKS-Anwendungsrouting-Add-Ons, das auf der Gateway-API basiert.
Die Gateway-API stellt ein standardbasiertes Modell für das erweiterte Eingangs- und Datenverkehrsrouting bereit, ohne herstellerspezifische Konfiguration zu verwenden. Das Anwendungsrouting-Add-On kann die Datenverkehrsverteilung für Workloads verbessern, die eine Datenverkehrsteilung, headerbasiertes Routing oder ausdrucksvollere Regeln benötigen, ohne einen benutzerdefinierten Eingangscontroller auszuführen.

Leistungseffizienz

Bei der Leistungseffizienz geht es um Aufrechterhaltung der Benutzererfahrung, auch wenn durch die Verwaltung der Kapazität eine Zunahme der Last erfolgt. Die Strategie umfasst die Skalierung von Ressourcen, das Identifizieren und Optimieren potenzieller Engpässe und die Optimierung der Spitzenleistung.

Die Designprinzipien für Leistungseffizienz bieten eine allgemeine Entwurfsstrategie zur Erreichung der Kapazitätsziele im Hinblick auf die erwartete Nutzung.

Checkliste für die Arbeitsauslastungsgestaltung

Beginnen Sie Ihre Designstrategie basierend auf der Designüberprüfungs-Checkliste für die Leistungseffizienz, um einen Basisplan basierend auf wichtigen Leistungsindikatoren für AKS zu definieren.

  • (Cluster und Workload) Kapazitätsplanung durchführen. Führen Sie eine detaillierte Übung zur Kapazitätsplanung durch und verfeinern Sie sie iterativ; sie sollte SKU, Einstellungen für die automatische Skalierung, IP-Adressierung und Überlegungen zum Failover umfassen.

    Nachdem Sie Ihren Kapazitätsplan formalisiert haben, aktualisieren Sie den Plan häufig, indem Sie die Ressourcenauslastung des Clusters kontinuierlich beobachten.

  • (Cluster) Definieren Sie eine Skalierungsstrategie. Konfigurieren Sie die Skalierung so, dass Ressourcen effizient angepasst werden, um die Anforderungen der Workloads zu erfüllen, ohne dass es zu Überbereitstellung oder Verschwendung kommt. Verwenden Sie AKS-Features wie die Cluster-Autoskalierung und den HorizontalPodAutoscaler, um Ihre Workload-Anforderungen dynamisch zu erfüllen, mit weniger Aufwand für die Abläufe. Optimieren Sie Ihre Workload, um effizient in einem Container zu arbeiten und bereitzustellen.

    Lesen Sie die Skalierung und Partitionierung Anleitung, um die verschiedenen Aspekte der Skalierungskonfiguration zu verstehen.

  • (Cluster und Workload) Führen Sie Leistungstests durch. Führen Sie kontinuierliche Lasttests durch, die sowohl den Pod-Autoscaler als auch den Cluster-Autoscaler beanspruchen. Vergleichen Sie die Ergebnisse mit den Leistungszielen und den etablierten Basiswerten.

  • (Cluster und Workload) Skalieren Sie Workloads und Abläufe unabhängig voneinander. Teilen Sie Workloads und Abläufe in verschiedene Knotenpools auf, damit sie unabhängig skaliert werden können. Befolgen Sie die Leitlinien in Optimieren des Workloaddesigns mithilfe von Abläufen, um Ihre Abläufe zu identifizieren und zu priorisieren.

  • (Cluster) Optimieren Sie die DNS-Auflösung. Nutzen Sie LocalDNS mithilfe der automatischen Bereitstellung von Knoten. LocalDNS stellt einen DNS-Proxy auf Knotenebene bereit, der DNS-Abfragen auflöst, die Abfragelatenz reduziert und eine fortlaufende Namensauflösung gewährleistet, auch wenn bei übergeordneten DNS-Diensten Ausfälle auftreten. Die Integration der automatischen Bereitstellung von Knoten sorgt für eine optimale Netzwerkleistung, ohne auf die Funktionen der betrieblichen Automatisierung zu verzichten.

Konfigurationsempfehlungen

Recommendation Benefit
(Cluster) Aktivieren Sie die Cluster-Autoskalierung , um die Anzahl der Agentknoten als Reaktion auf Workloadanforderungen automatisch anzupassen.

Verwenden Sie den HorizontalPodAutoscaler , um die Anzahl der Pods in einer Bereitstellung abhängig von der CPU-Auslastung oder anderen Metriken anzupassen.

Verwenden Sie den VerticalPodAutoscaler (VPA) für die Pod-Ressourcenoptimierung, um dem Verwendungsmuster Ihrer Workload zu entsprechen.
Mit der Möglichkeit, die Anzahl der Knoten automatisch zu skalieren oder zu verkleinern, und mit der Anzahl der Pods in Ihrem AKS-Cluster können Sie einen effizienten, kostengünstigen Cluster ausführen.
(Cluster) Bei unterstützten Clustern mit latenzempfindlichem oder hohem Durchsatz-Pod-Datenverkehr bewerten Sie das eBPF-Hostrouting in Advanced Container Networking Services. Testen Sie Netzwerkrichtlinien, Knotenimages und Netzwerkabhängigkeiten auf Hostebene, bevor Sie sie aktivieren. Das eBPF-Hostrouting umgeht iptables-basiertes Hostrouting, um Latenz, Netzwerkhüpfungen und CPU-Auslastung zu reduzieren. Das Aktivieren dieser Option rotiert Knoten, gilt clusterweit und verhindert Hostnetzwerk-iptables-Regeln. Prüfen Sie daher die Kompatibilität und berücksichtigen Sie die zusätzlichen Dienstkosten.
(Cluster und Workload) Teilen Sie Workloads in unterschiedliche Knotenpools auf, und ziehen Sie die Skalierung von Benutzerknotenpools in Erwägung. Im Unterschied zu Systemknotenpools, die immer betriebsbereite Knoten erfordern, ermöglichen benutzerdefinierte Knotenpools das Auf- und Abskalieren.
(Workload) Verwenden Sie die erweiterten Schedulerfunktionen von AKS, um den erweiterten Ausgleich von Ressourcen für Workloads zu implementieren, die sie benötigen. Beim Verwalten von AKS-Clustern müssen Sie häufig Teams und Workloads isolieren. Erweiterte Features, die der Kubernetes-Scheduler bereitstellt, ermöglichen Ihnen die Steuerung, welche Pods auf bestimmten Knoten geplant werden können. Außerdem können Sie steuern, wie Multipod-Anwendungen angemessen über den Cluster verteilt werden.
(Workload) Verwenden Sie Kubernetes Event Driven Autoscaler KEDA , um ein aussagekräftiges Autoscale-Regelset basierend auf Signalen zu erstellen, die für Ihre Workload spezifisch sind. Nicht alle Skalierungsentscheidungen können von CPU- oder Arbeitsspeichermetriken abgeleitet werden. Skalierungsüberlegungen kommen häufig aus komplexeren oder sogar externen Datenpunkten. KEDA ermöglicht Es Ihren Anwendungen, basierend auf Ereignissen zu skalieren, z. B. die Anzahl der Nachrichten in einer Warteschlange oder die Länge eines Themenabstands.
(Cluster) Aktivieren Sie den Modus "Hoher Maßstab" von Azure Monitor für Containereinblicke für umfangreiche Kubernetes-Bereitstellungen mit Hunderten von Knoten. Dadurch wird der Ressourcenverbrauch reduziert und gleichzeitig die Observierbarkeit beibehalten. Ermöglicht die Überwachung und reduziert den Ressourcenaufwand des Agents und verbessert die Leistung der Datensammlung. Diese Optimierung ist von Vorteil für Unternehmensumgebungen, in denen Hunderte von Knoten ausgeführt werden, in denen Standardüberwachungsansätze die Clusterleistung beeinträchtigen und die Kosten erhöhen können.

Azure-Richtlinie

Azure bietet einen umfassenden Satz integrierter Richtlinien im Zusammenhang mit AKS, die für die Azure-Ressource gelten, z. B. typische Azure-Richtlinien und das Azure-Richtlinien-Add-On für Kubernetes und innerhalb des Clusters. Viele der Azure Ressourcenrichtlinien sind sowohl in den Varianten "Audit/Deny" als auch "Deploy If Not Exists" enthalten. Zusätzlich zu den integrierten Azure-Richtliniendefinitionen können Sie benutzerdefinierte Richtlinien sowohl für die AKS-Ressource als auch für das Azure-Richtlinien-Add-On für Kubernetes erstellen.

Sie können einige der Empfehlungen in diesem Artikel über Azure Policy überprüfen. Sie können beispielsweise die folgenden Clusterrichtlinien überprüfen:

  • Cluster verfügen über Bereitschafts- oder Liveintegritätstests, die für Ihre Pod-Spezifikation konfiguriert sind.
  • Microsoft Defender for Cloud Richtlinien.
  • Authentifizierungsmodus und Konfigurationsrichtlinien, z. B. Microsoft Entra ID, RBAC und Deaktivieren der lokalen Authentifizierung.
  • API-Server-Netzwerkzugriffsrichtlinien, einschließlich privater Cluster.
  • GitOps-Konfigurationsrichtlinien.
  • Richtlinien für Diagnoseeinstellungen.
  • AKS-Versionsbeschränkungen.
  • Befehlsaufruf verhindern.

Sie können auch die folgenden Cluster- und Workloadrichtlinien überprüfen:

  • Kubernetes-Cluster-Pod-Sicherheitsinitiativen für Linux-basierte Workloads.
  • Schließen Sie Pod- und Containerfunktionsrichtlinien ein, z. B. AppArmor, sysctl, Sicherheitskappen, SELinux, Seccomp, privilegierte Container und AutoMount-Cluster-API-Anmeldeinformationen.
  • Einbindungs-, Volumetreiber- und Dateisystemrichtlinien.
  • Pod- und Containernetzwerkrichtlinien, z. B. Hostnetzwerk, Port, zulässige externe IPs, HTTPs und interne Lastenausgleichsgeräte.
  • Einschränkungen für die Bereitstellung von Namespaces.
  • CPU- und Arbeitsspeicherressourcenbeschränkungen.

Überprüfen Sie zur Governance die integrierten Azure-Richtliniendefinitionen für Kubernetes und andere Richtlinien, die sich auf die Sicherheit der Computeebene auswirken können.

Empfehlungen für Azure Advisor

Verwenden Sie Azure Advisor, um personalisierte Empfehlungen für Ihre AKS-Ressourcen zu überprüfen. Advisor analysiert Ressourcenkonfigurations- und Nutzungs-Telemetrie und organisiert entsprechende Empfehlungen. Bewerten Sie jede Empfehlung vor der Implementierung anhand Ihrer Workloadanforderungen und architektonischen Kompromisse.

Für AKS-spezifische Kostenleitfaden überprüfen Sie die AKS-Kostenempfehlungen in Azure Advisor. Je nach Clusterkonfiguration und historischer Verwendung kann Advisor Anpassungen an Ihrem Cluster empfehlen, um Geld zu sparen.

Beispielarchitektur

Grundlegende Architektur, die die wichtigsten Empfehlungen veranschaulicht: AKS-Basisarchitektur.

Betrachten Sie die folgenden Artikel als Ressourcen, die die in diesem Artikel hervorgehobenen Empfehlungen veranschaulichen.

Erstellen Sie das Know-how der Implementierung mithilfe der folgenden Produktdokumentation: