Was ist AWS App Mesh? - AWS App Mesh

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Was ist AWS App Mesh?

Wichtig

Hinweis zum Ende des Supports: Am 30. September 2026 AWS wird der Support für eingestellt. AWS App Mesh Nach dem 30. September 2026 können Sie nicht mehr auf die AWS App Mesh Konsole oder die Ressourcen zugreifen. AWS App Mesh Weitere Informationen finden Sie in diesem Blogbeitrag Migration von AWS App Mesh zu Amazon ECS Service Connect.

AWS App Mesh ist ein Service Mesh, das die Überwachung und Steuerung von Diensten vereinfacht. Bei einem Service Mesh handelt es sich um eine Infrastrukturebene, die für die service-to-service Kommunikation zuständig ist, in der Regel über eine Reihe einfacher Netzwerk-Proxys, die zusammen mit dem Anwendungscode bereitgestellt werden. App Mesh standardisiert die Art und Weise, wie Ihre Dienste kommunizieren, bietet Ihnen end-to-end Transparenz und trägt dazu bei, die hohe Verfügbarkeit Ihrer Anwendungen sicherzustellen. App Mesh bietet Ihnen konsistente Transparenz und Kontrolle über den Netzwerkdatenverkehr eines jeden Service in einer Anwendung.

App Mesh zu einer Beispielanwendung hinzufügen

Wichtig

Hinweis zum Ende des Supports: Am 30. September 2026 AWS wird der Support für eingestellt. AWS App Mesh Nach dem 30. September 2026 können Sie nicht mehr auf die AWS App Mesh Konsole oder die Ressourcen zugreifen. AWS App Mesh Weitere Informationen finden Sie in diesem Blogbeitrag Migration von AWS App Mesh zu Amazon ECS Service Connect.

Betrachten Sie die folgende einfache Beispielanwendung, die App Mesh nicht verwendet. Die beiden Dienste können auf Amazon Elastic Container Service (Amazon) AWS Fargate, Amazon Elastic Kubernetes Service (AmazonECS), Kubernetes auf Amazon Elastic Compute Cloud (AmazonEKS) -Instances oder auf EC2 EC2 Amazon-Instances mit Docker ausgeführt werden.

Diagram showing client service connecting to servicea.apps.local, which connects to serviceb.apps.local.

In dieser Abbildung serviceB sind beide über den Namespace serviceA auffindbar. apps.local Nehmen wir zum Beispiel an, Sie entscheiden sich für die Bereitstellung einer neuen Version von serviceb.apps.local named. servicebv2.apps.local Als Nächstes möchten Sie einen Prozentsatz des Datenverkehrs von servicea.apps.local nach serviceb.apps.local und einen Prozentsatz nach leitenservicebv2.apps.local. Wenn Sie sicher sind, dass servicebv2 das Gerät gut funktioniert, möchten Sie 100 Prozent des Datenverkehrs dorthin weiterleiten.

App Mesh kann Ihnen dabei helfen, ohne den Anwendungscode oder die registrierten Dienstnamen zu ändern. Wenn Sie App Mesh mit dieser Beispielanwendung verwenden, könnte Ihr Mesh wie in der folgenden Abbildung aussehen.

Diagram showing App Mesh architecture with virtual services, nodes, and router in a mesh network.

In dieser Konfiguration kommunizieren die Dienste nicht mehr direkt miteinander. Stattdessen kommunizieren sie über einen Proxy miteinander. Der mit dem servicea.apps.local Dienst bereitgestellte Proxy liest die App Mesh Mesh-Konfiguration und sendet Datenverkehr an serviceb.apps.local oder servicebv2.apps.local basierend auf der Konfiguration.

Komponenten von App Mesh

App Mesh besteht aus den folgenden Komponenten, die im vorherigen Beispiel veranschaulicht wurden:

  • Service Mesh — Ein Service Mesh ist eine logische Grenze für den Netzwerkverkehr zwischen den darin enthaltenen Diensten. In dem Beispiel hat das Mesh einen Namen apps und es enthält alle anderen Ressourcen für das Mesh. Weitere Informationen finden Sie unter Servicenetze.

  • Virtuelle Dienste — Ein virtueller Dienst ist eine Abstraktion eines tatsächlichen Dienstes, der von einem virtuellen Knoten direkt oder indirekt über einen virtuellen Router bereitgestellt wird. In der Abbildung stellen zwei virtuelle Dienste die beiden tatsächlichen Dienste dar. Die Namen der virtuellen Dienste sind die auffindbaren Namen der tatsächlichen Dienste. Wenn ein virtueller Dienst und ein aktueller Dienst denselben Namen haben, können mehrere Dienste unter denselben Namen miteinander kommunizieren, die sie vor der Implementierung von App Mesh verwendet haben. Weitere Informationen finden Sie unter Virtuelle Dienste.

  • Virtuelle Knoten — Ein virtueller Knoten fungiert als logischer Zeiger auf einen auffindbaren Service, z. B. einen Amazon ECS - oder Kubernetes-Service. Für jeden virtuellen Dienst verfügen Sie über mindestens einen virtuellen Knoten. In der Abbildung ruft der servicea.apps.local virtuelle Dienst Konfigurationsinformationen für den genannten virtuellen Knoten abserviceA. Der serviceA virtuelle Knoten ist mit dem servicea.apps.local Namen für die Diensterkennung konfiguriert. Der serviceb.apps.local virtuelle Dienst ist so konfiguriert, dass er den Datenverkehr zu den serviceB serviceBv2 virtuellen Knoten über einen virtuellen Router mit dem Namen weiterleitetserviceB. Weitere Informationen finden Sie unter Virtuelle Knoten.

  • Virtuelle Router und Routen — Virtuelle Router verarbeiten den Verkehr für einen oder mehrere virtuelle Dienste in Ihrem Mesh. Eine Route ist einem virtuellen Router zugeordnet. Die Route wird verwendet, um Anfragen für den virtuellen Router abzugleichen und den Verkehr an die zugehörigen virtuellen Knoten zu verteilen. In der vorherigen Abbildung verfügt der serviceB virtuelle Router über eine Route, die einen Prozentsatz des Datenverkehrs an den serviceB virtuellen Knoten und einen Prozentsatz des Datenverkehrs an den serviceBv2 virtuellen Knoten weiterleitet. Sie können den Prozentsatz des Datenverkehrs festlegen, der zu einem bestimmten virtuellen Knoten geleitet wird, und ihn im Laufe der Zeit ändern. Sie können den Datenverkehr anhand von Kriterien wie HTTP Headern, URL Pfaden oder RPC G-Dienst- und Methodennamen weiterleiten. Sie können Richtlinien für Wiederholungsversuche so konfigurieren, dass eine Verbindung erneut versucht wird, falls in der Antwort ein Fehler auftritt. In der Abbildung kann die Wiederholungsrichtlinie für die Route beispielsweise angeben, dass eine Verbindung zu fünfmal wiederholt serviceb.apps.local wird, wobei zwischen den Wiederholungsversuchen zehn Sekunden liegen, wenn bestimmte Fehlertypen serviceb.apps.local zurückgegeben werden. Weitere Informationen erhalten Sie unter Virtuelle Router und Routen.

  • Proxy — Sie konfigurieren Ihre Services so, dass sie den Proxy verwenden, nachdem Sie Ihr Mesh und die zugehörigen Ressourcen erstellt haben. Der Proxy liest die App Mesh Mesh-Konfiguration und leitet den Verkehr entsprechend weiter. In der Abbildung erfolgt die gesamte Kommunikation von servicea.apps.local bis über serviceb.apps.local den Proxy, der mit jedem Dienst bereitgestellt wird. Die Dienste kommunizieren miteinander unter Verwendung derselben Diensterkennungsnamen, die sie vor der Einführung von App Mesh verwendet haben. Da der Proxy die App Mesh Mesh-Konfiguration liest, können Sie steuern, wie die beiden Dienste miteinander kommunizieren. Wenn Sie die App Mesh Mesh-Konfiguration ändern möchten, müssen Sie die Dienste selbst oder die Proxys nicht ändern oder erneut bereitstellen. Weitere Informationen finden Sie unter Bild des Gesandten.

Erste Schritte

Um App Mesh verwenden zu können, muss ein vorhandener Service auf Amazon AWS Fargate, Amazon ECSEKS, Kubernetes on Amazon oder Amazon EC2 mit EC2 Docker laufen.

Informationen zu den ersten Schritten mit App Mesh finden Sie in einer der folgenden Anleitungen:

Zugreifen auf App Mesh

Sie können auf folgende Weise mit App Mesh arbeiten:

AWS Management Console

Die Konsole ist eine browserbasierte Oberfläche, mit der Sie App Mesh Mesh-Ressourcen verwalten können. Sie können die App Mesh Mesh-Konsole unter öffnen https://console.aws.amazon.com/appmesh/.

AWS CLI

Stellt Befehle für eine Vielzahl von AWS Produkten bereit und wird unter Windows, Mac und Linux unterstützt. Informationen zu den ersten Schritten finden Sie im AWS Command Line Interface -Benutzerhandbuch. Weitere Informationen zu den Befehlen für App Mesh finden Sie unter appmesh in der AWS CLI Befehlsreferenz.

AWS Tools for Windows PowerShell

Stellt Befehle für eine breite Palette von AWS Produkten für Benutzer bereit, die in der PowerShell Umgebung Skripts erstellen. Informationen zu den ersten Schritten finden Sie im AWS Tools for Windows PowerShell -Benutzerhandbuch. Weitere Informationen zu den Cmdlets für App Mesh finden Sie unter App Mesh in der Referenz zu AWS Tools for PowerShell Cmdlets.

AWS CloudFormation

Ermöglicht es Ihnen, eine Vorlage zu erstellen, die alle gewünschten AWS Ressourcen beschreibt. Mithilfe der Vorlage werden AWS CloudFormation die Ressourcen für Sie bereitgestellt und konfiguriert. Informationen zu den ersten Schritten finden Sie im AWS CloudFormation -Benutzerhandbuch. Weitere Informationen zu den App Mesh Mesh-Ressourcentypen finden Sie unter App Mesh Mesh-Ressourcentyp-Referenz in der AWS CloudFormation Vorlagenreferenz.

AWS SDKs

Wir bieten auch anSDKs, dass Sie von einer Vielzahl von Programmiersprachen aus auf App Mesh zugreifen können. Sie kümmern sich SDKs automatisch um Aufgaben wie:

  • Kryptographisches Signieren Ihrer Serviceanfragen

  • Wiederholen von Anfragen

  • Umgang mit Fehlerreaktionen

Weitere Informationen zu den verfügbaren SDKs Tools finden Sie unter Tools für Amazon Web Services.

Weitere Informationen zum App Mesh APIs finden Sie in der AWS App Mesh APIReferenz.