Anthos – Überblick

Anthos ist eine moderne Plattform zur Verwaltung von Anwendungen, die eine einheitliche Entwicklungs- und Betriebserfahrung für Cloud- und lokale Umgebungen bietet. Diese Seite bietet einen Überblick über die einzelnen Ebenen der Anthos-Infrastruktur und zeigt, wie Sie deren Funktionen nutzen können. Einige der hier verlinkten Ressourcen sind ggf. nur auf Englisch verfügbar.

Im folgenden Diagramm sind die verschiedenen Komponenten von Anthos und ihre Interaktion in einer typischen Unternehmensumgebung dargestellt:

Diagramm zu Anthos-Komponenten
Die Komponenten von Anthos (zum Vergrößern anklicken)

Anthos besteht aus verschiedenen Produkten und Funktionen. Die einzelnen Komponenten und ihre Verfügbarkeit sind im Folgenden aufgeführt:

  • Google Kubernetes Engine (GA)
  • GKE On-Prem (Beta)
  • Google Cloud Platform Marketplace (Beta)
  • Anthos Config Management (Beta)
  • GKE Hub (Alpha)
  • Cloud Service Mesh (Alpha)

Rechenumgebung

Die primäre Rechenumgebung für Anthos basiert auf Google Kubernetes Engine (GKE) und GKE On-Prem zur Verwaltung von Kubernetes-Installationen in Umgebungen, in denen Sie Anwendungen bereitstellen möchten. Diese Angebote bündeln vorgelagerte Kubernetes-Releases und stellen Verwaltungsfunktionen zum Erstellen, Skalieren und Aktualisieren von konformen Kubernetes-Clustern bereit.

Kubernetes besteht aus zwei Hauptteilen: der Steuerebene und den Knotenkomponenten. Mit GKE hostet Google Cloud Platform die Steuerebene und der Kubernetes API-Server ist als einzige Steuerebenenkomponente für Kunden zugänglich. GKE verwaltet die Knotenkomponenten im Kundenprojekt mithilfe von Instanzen in Compute Engine. Mit GKE On-Prem werden alle Komponenten in der lokalen Virtualisierungsumgebung des Kunden gehostet.

Wenn Kubernetes installiert ist und ausgeführt wird, haben Sie Zugriff auf eine gemeinsame Orchestrierungsschicht, die die Bereitstellung, Konfiguration, Aktualisierung und Skalierung von Anwendungen verwaltet.

Netzwerkumgebung

Damit Sie die volle Funktionalität von Anthos nutzen können, müssen die GKE- und GKE On-Prem-Cluster per IP-Konnektivität miteinander verbunden sein. Darüber hinaus muss Ihre GKE On-Prem-Umgebung die API-Endpunkte von Google erreichen können. Dies gilt insbesondere für Stackdriver zur Überwachung und Benachrichtigung sowie für GKE Hub zur Registrierung von Clustern bei Google Cloud Platform Console.

Sie können Ihre lokalen und GCP-Umgebungen auf verschiedene Weisen verbinden. Am einfachsten ist der Einstieg mit der Implementierung einer standortübergreifenden VPN-Verbindung zwischen den Umgebungen mithilfe von Cloud VPN. Wenn Sie höhere Latenz- und Durchsatzanforderungen haben, können Sie zwischen Dedicated und Partner Cloud Interconnect wählen. Weitere Informationen zum Auswählen einer Verbindungsart finden Sie unter Cloud VPN und andere Verbindungsarten.

Mit Kubernetes können Layer 4- und Layer 7-Load-Balancer bereitgestellt werden. GKE verwendet Netzwerk-Load-Balancing für Layer 4 und HTTP(S)-Load-Balancing für Layer 7. Beide sind verwaltete Dienste und benötigen keine zusätzliche Konfiguration oder Bereitstellung von Ihrer Seite. GKE On-Prem hingegen verwendet eine lokale Load-Balancing-Appliance.

Dienstverwaltung

In Kubernetes bestehen Dienste aus vielen Pods, die Container ausführen. In einer Microservices-Architektur kann eine einzelne Anwendung aus zahlreichen Diensten bestehen und für jeden Dienst können mehrere Versionen gleichzeitig bereitgestellt werden.

Bei einer monolithischen Anwendung gibt es keine netzwerkbezogenen Probleme, da die Kommunikation über Funktionsaufrufe erfolgt, die innerhalb des Monolithen isoliert sind. In einer Microservices-Architektur erfolgt die Kommunikation zwischen den Diensten über das Netzwerk.

Netzwerke können unzuverlässig und unsicher sein, daher müssen Dienste Netzwerkbesonderheiten identifizieren und mit diesen umgehen können. Wenn beispielsweise Dienst A Dienst B aufruft, das Netzwerk aber ausgefallen ist, was soll Dienst A tun, wenn er keine Antwort erhält? Soll er den Aufruf wiederholen? Und wenn ja, wie oft? Oder woher weiß Dienst A, dass es Dienst B ist, der auf den Aufruf reagiert?

Sie können auf verschiedene Art mit solchen Netzwerkproblemen umgehen. Beispiel:

  • Sie können Clientbibliotheken in Ihrer Anwendung nutzen, um einige Netzwerkinkonsistenzen zu verringern. Die Verwaltung mehrerer Bibliotheksversionen in einer mehrsprachigen Umgebung verlangt Sorgfalt, Genauigkeit und gelegentlich auch doppelten Aufwand.

  • Sie können Istio verwenden, eine Open-Source-Implementierung des Service-Mesh-Modells. Istio verwendet Sidecar-Proxys zur Verbesserung der Netzwerksicherheit, -zuverlässigkeit und -sichtbarkeit. Bei einem Service Mesh wie Istio werden diese Funktionen vom primären Container der Anwendung abstrahiert und in einem gemeinsamen Out-of-Process-Proxy implementiert, der als separater Container im selben Pod bereitgestellt wird.

    Funktionen von Istio sind unter anderem:

    • Detaillierte Steuerung des Traffics mit umfangreichen Routing-Regeln für HTTP-, gRPC-, WebSocket- und TCP-Traffic

    • Anforderung von Resilienzfunktionen wie Wiederholungsversuche, Failovers, Unterbrechungen der Netzwerkverbindung und Fehlerinjektion

    • Eine modulare Richtlinienschicht und Konfigurations-API, die Zugriffssteuerung und Ratenbegrenzung unterstützt

    • Automatische Messwerte, Protokolle und Traces für den gesamten Traffic innerhalb eines Clusters, einschließlich des ein- und ausgehenden Traffics des Clusters

    • Sichere Dienst-zu-Dienst-Kommunikation mit Authentifizierung und Autorisierung auf Basis von Dienstkonten

    • Unterstützung von Aufgaben wie A/B-Tests, Canary-Einführungen, Fehlerinjektion und Ratenbegrenzung

Cloud Service Mesh (CSM) verwaltet Istio sowohl in GKE als auch in GKE On-Prem und bietet alle Vorteile von Open-Source-Istio, ohne die Komplexität der Konfiguration, Installation, Aktualisierung und Einrichtung von Zertifizierungsstellen.

CSM bietet außerdem die folgenden Integrationen mit GCP-Funktionen:

Zentrales Konfigurationsmanagement

Diagramm zur Anthos Config Management-Architektur
Anthos Config Management-Architektur (zum Vergrößern anklicken)

Werden mehrere Umgebungen zusammengefasst, erhöht sich die Komplexität in Bezug auf Ressourcenmanagement und Konsistenz. Anthos bietet ein cloud- und rechenzentrenübergreifendes einheitliches Modell für Computing, Netzwerk und sogar Dienstverwaltung.

Konfiguration als Code ist ein gängiger Ansatz zum Bewältigen dieser Komplexität. Anthos stellt Konfiguration als Code über Anthos Config Management bereit, wodurch der Anthos Config Management Operator für Ihre GKE- oder GKE On-Prem-Cluster bereitgestellt wird. Somit können Sie alle in einem Git-Repository erkannten Konfigurationsänderungen überwachen und anwenden.

Bei diesem Ansatz werden die wichtigsten Kubernetes-Konzepte wie Namespaces, Labels und Annotations genutzt, um zu bestimmen, wie und wo die Konfigurationsänderungen auf alle Kubernetes-Cluster angewendet werden sollen, unabhängig davon, wo sie sich befinden. Das Repository bietet eine versionierte, gesicherte und kontrollierte Single Source Of Truth für alle Kubernetes-Konfigurationen. Jegliches YAML oder JSON, das mit kubectl-Befehlen angewendet werden kann, lässt sich mit dem Anthos Config Management Operator verwalten und mit Anthos Config Management auf alle Kubernetes-Cluster anwenden.

Anthos Config Management bietet die folgenden Vorteile für Kubernetes Engine-Cluster:

  • Eine Single Source of Truth sowie zentrale Kontrolle und Verwaltung

    • Ermöglicht die Verwendung von Codeüberprüfungen, Validierung und Rollback-Workflows

    • Vermeidet Schattenvorgänge, bei denen Kubernetes-Cluster aufgrund manueller Änderungen nicht mehr synchron sind

    • Ermöglicht die Verwendung von CI/CD-Pipelines für automatisierte Tests und Rollouts

  • Einstufige Bereitstellung in allen Clustern

    • Anthos Config Management wandelt ein einzelnes Git-Commit in mehrere kubectl-Befehle in allen Clustern um

    • Rollback durch einfaches Zurücksetzen der Änderung in Git; das Zurücksetzen wird dann automatisch skaliert eingesetzt

  • Umfangreiches Vererbungsmodell zum Anwenden von Änderungen

    • Mithilfe von Namespaces können Sie eine Konfiguration für alle Cluster, einige Cluster, einige Namespaces oder sogar für benutzerdefinierte Ressourcen erstellen

    • Mithilfe der Namespace-Vererbung können Sie ein mehrschichtiges Namespace-Modell erstellen, das Konfigurationsvererbung über die gesamte Ordnerstruktur des Repositorys ermöglicht

Einheitliche Benutzeroberfläche

Mit zunehmender Anzahl von Kubernetes-Clustern in einer Organisation kann es schwierig werden, zu verstehen, was in den einzelnen Umgebungen ausgeführt wird. Das GKE-Dashboard ist eine sichere Konsole zur Anzeige von Kubernetes-Clustern und Kubernetes-Workloads. Mit GKE Hub können Sie GKE On-Prem-Cluster sicher bei der GCP registrieren und dieselben Informationen ansehen, die für GKE-Cluster über das GKE-Dashboard verfügbar sind.

Zum Verbinden eines Clusters stellen Sie den GKE Connect-Agent bereit, der einen sicheren Tunnel einrichtet, durch den die GCP Console die Ressourcen im Cluster verwalten kann. Alle Anfragen über den GKE Connect-Agenten werden in die Überwachungsprotokolle für den Cluster aufgenommen. Sie können die Funktionen des Agenten einschränken, indem Sie die systemeigene RBAC-Funktionalität Ihres Clusters verwenden.

Vorteile

Anthos ist eine Plattform mit verschiedenen Diensten, deren Kombination im gesamten Unternehmen einen Mehrwert erzeugt. In diesem Abschnitt wird beschrieben, wie Anthos von den verschiedenen Rollen in einer Organisation verwendet werden kann und welche Vorteile es jeder Gruppe bietet.

Anthos für die Entwicklung

Für den Entwickler bietet Anthos eine hochmoderne Plattform zur Containerverwaltung auf der Basis von Kubernetes. Entwickler können diese Plattform zum schnellen und einfachen Erstellen und Bereitstellen vorhandener containergestützter Anwendungen und Microservices-basierter Architekturen verwenden.

Zu den wichtigsten Vorteilen gehören:

  • Git-konforme Verwaltungs- und CI/CD-Workflows für die Konfiguration sowie Code, der Anthos Config Management nutzt

  • Codefreie Instrumentierung von Code mit Istio und Stackdriver für eine einheitliche Sichtbarkeit

  • Codefreier Schutz von Diensten mit mTLS und Drosselung mit CSM (Istio)

  • Unterstützung für den Google Cloud Platform Marketplace zum schnellen und einfachen Bereitstellen von Standardprodukten in Clustern

Anthos für den Betrieb

Für den Betrieb bietet Anthos eine zentrale, effiziente und vorlagenbasierte Bereitstellung und Verwaltung von Clustern, sodass das operative Team schnell eine Infrastruktur bereitstellen und verwalten kann, die den Unternehmensstandards entspricht.

Zu den wichtigsten Vorteilen gehören:

  • Bereitstellung neuer Cluster mit GKE und GKE On-Prem (gkectl) mit einem einzigen Befehl

  • Zentrales Konfigurationsmanagement und Compliance mit Konfiguration als Code und Anthos Config Management

  • Vereinfachtes Deployment und Rollback mit Git-Check-Ins und Anthos Config Management

  • Übersicht über alle Cluster von der Infrastruktur bis zur Anwendungsleistung und -topologie mit Stackdriver und CSM (Istio)

Anthos für die Sicherheit

Für die Sicherheit bietet Anthos die Möglichkeit, durch die Verwendung eines Konfiguration-als-Code-Ansatzes und eine zentrale Verwaltung Sicherheitsstandards für Cluster, bereitgestellte Anwendungen und sogar den Konfigurationsverwaltungs-Workflow zu erzwingen.

Zu den wichtigsten Vorteilen gehören:

  • Zentralisierter, überprüfbarer und sicherer Workflow mit Git-kompatiblen Konfigurations-Repositories mit Anthos Config Management

  • Erzwingung der Compliance von Cluster-Konfigurationen mithilfe von Namespaces und übernommener Konfiguration mit Anthos Config Management

  • Code-freies Sichern von Microservices mit Istio und Bereitstellung von mTLS im Cluster und Zertifikatsverwaltung

  • Integrierter Diensteschutz durch Istio-Drosselung und -Routing

Weitere Informationen

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...