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.
Verwenden Sie Service Discovery, um ECS Amazon-Services mit DNS Namen zu verbinden
Ihr ECS Amazon-Dienst kann optional so konfiguriert werden, dass er Amazon ECS Service Discovery verwendet. Service Discovery verwendet AWS Cloud Map API Aktionen zur Verwaltung HTTP und DNS Namespaces für Ihre Amazon-Services. ECS Weitere Informationen finden Sie unter Was ist AWS Cloud Map? im AWS Cloud Map -Entwicklerhandbuch.
Service Discovery ist in den folgenden AWS -Regionen verfügbar:
Name der Region | Region |
---|---|
USA Ost (Nord-Virginia) |
us-east-1 |
USA Ost (Ohio) |
us-east-2 |
USA West (Nordkalifornien) |
us-west-1 |
USA West (Oregon) |
us-west-2 |
Afrika (Kapstadt) |
af-south-1 |
Asien-Pazifik (Hongkong) |
ap-east-1 |
Asien-Pazifik (Mumbai) |
ap-south-1 |
Asien-Pazifik (Hyderabad) |
ap-south-2 |
Asien-Pazifik (Tokio) |
ap-northeast-1 |
Asien-Pazifik (Seoul) |
ap-northeast-2 |
Asien-Pazifik (Osaka) |
ap-northeast-3 |
Asien-Pazifik (Singapur) |
ap-southeast-1 |
Asien-Pazifik (Sydney) |
ap-southeast-2 |
Asien-Pazifik (Jakarta) |
ap-southeast-3 |
Asien-Pazifik (Melbourne) |
ap-southeast-4 |
Kanada (Zentral) |
ca-central-1 |
Kanada West (Calgary) |
ca-west-1 |
China (Beijing) |
cn-north-1 |
China (Ningxia) |
cn-northwest-1 |
Europe (Frankfurt) |
eu-central-1 |
Europa (Zürich) |
eu-central-2 |
Europa (Irland) |
eu-west-1 |
Europa (London) |
eu-west-2 |
Europa (Paris) |
eu-west-3 |
Europa (Mailand) |
eu-south-1 |
Europa (Stockholm) |
eu-north-1 |
Israel (Tel Aviv) |
il-central-1 |
Europa (Spanien) |
eu-south-2 |
Naher Osten (UAE) |
me-central-1 |
Naher Osten (Bahrain) |
me-south-1 |
Südamerika (São Paulo) |
sa-east-1 |
AWS GovCloud (US-Ost) |
us-gov-east-1 |
AWS GovCloud (US-West) |
us-gov-west-1 |
Konzepte für Service Discovery
Die Serviceerkennung umfasst folgende Komponenten:
-
Service Discovery-Namespace: Eine logische Gruppe von Service Discovery-Services, die den gleichen Domain-Namen haben, zum Beispiel
example.com
. Dies ist der Domain-Name, an den Sie den Datenverkehr weiterleiten möchten. Sie können einen Namespace mit einem Aufruf desaws servicediscovery create-private-dns-namespace
Befehls oder in der ECS Amazon-Konsole erstellen. Sie können denaws servicediscovery list-namespaces
-Befehl zum Anzeigen der zusammenfassenden Informationen über die Namespaces, die vom aktuellen Konto erstellt wurden, verwenden. Weitere Informationen zu den Service Discovery-Befehlen finden Sie untercreate-private-dns-namespace
undlist-namespaces
im AWS CLI Referenzhandbuch AWS Cloud Map (Service Discovery). -
Service-Discovery Service: Ist im Service Discover-Namespace vorhanden und besteht aus dem Servicenamen und der DNS Konfiguration für den Namespace. Er stellt die folgende Kernkomponente bereit:
-
Dienstregistrierung: Ermöglicht es Ihnen, über DNS oder AWS Cloud Map API -Aktionen nach einem Dienst zu suchen und einen oder mehrere verfügbare Endpunkte wiederherzustellen, die für die Verbindung mit dem Dienst verwendet werden können.
-
-
Service Discovery-Instance: Existiert innerhalb des Service zur Service Discovery und besteht aus den Attributen, die mit jedem ECS Amazon-Service im Serviceverzeichnis zugeordnet sind.
-
Instance-Attribute: Die folgenden Metadaten werden als benutzerdefinierte Attribute für jeden ECS Amazon-Service hinzugefügt, der für die Verwendung von Service Discovery konfiguriert ist:
-
AWS_INSTANCE_IPV4
— Für einenA
Datensatz die IPv4 Adresse, die Route 53 als Antwort auf DNS Anfragen zurückgibt und die AWS Cloud Map zurückgibt, wenn Instance-Details gefunden werden, zum Beispiel192.0.2.44
. -
AWS_INSTANCE_PORT
: Der Port-Wert, der dem Service Disovery-Service zugeordnet ist. -
AVAILABILITY_ZONE
: Die Availability Zone, in der die Aufgabe gestartet wurde. Bei Aufgaben, die den EC2 Starttyp verwenden, ist dies die Availability Zone, in der die Container-Instance besteht. Bei Aufgaben, die den Starttyp Fargate verwenden, ist dies die Availability Zone, in der die Elastic-Network-Schnittstelle besteht. -
REGION
: Die Region, in der sich die Aufgabe befindet. -
ECS_SERVICE_NAME
— Der Name des ECS Amazon-Services, zu dem die Aufgabe gehört. -
ECS_CLUSTER_NAME
— Der Name des ECS Amazon-Clusters, zu dem die Aufgabe gehört. -
EC2_INSTANCE_ID
: Die ID der Container-Instance, in der die Aufgabe platziert wurde. Dieses benutzerdefinierte Attribut wird nicht hinzugefügt, wenn die Aufgabe den Starttyp Fargate verwendet. -
ECS_TASK_DEFINITION_FAMILY
: Die Aufgabendefinitionsfamilie, die die Aufgabe verwendet. -
ECS_TASK_SET_EXTERNAL_ID
: Wenn eine Aufgabe für eine externe Bereitstellung erstellt und einer Service Discovery-Registrierung zugeordnet wird, dann enthält das AttributECS_TASK_SET_EXTERNAL_ID
die externe ID des Aufgabensatzes.
-
-
-
ECSAmazon-Zustandsprüfungen: Amazon ECS führt regelmäßige Zustandsprüfungen auf Container-Ebene durch. Wenn ein Endpunkt die Zustandsprüfung nicht besteht, wird er aus dem DNS Routing entfernt und als fehlerhaft markiert.
Überlegungen zu Service Discovery
Bei der Verwendung der Serviceerkennung sollte Folgendes berücksichtigt werden:
-
Service Discovery wird für Aufgaben auf Fargate unterstützt, die Plattform-Version v1.1.0 oder höher verwenden. Weitere Informationen finden Sie unter Fargate-Linux-Plattformversionen ECS.
-
Services, die für die Verwendung von Service Discovery konfiguriert sind, haben ein Limit von 1000 Aufgaben pro Service. Dies ist auf eine Service-Quote der Route 53 zurückzuführen.
-
Der Create Service-Workflow in der ECS Amazon-Konsole unterstützt nur die Registrierung von Services in private DNS Namespaces. Wenn ein AWS Cloud Map privater DNS Namespace erstellt wird, wird automatisch eine private gehostete Zone Route 53 erstellt.
-
Die VPC DNS Attribute müssen für eine erfolgreiche DNS Lösung konfiguriert werden. Informationen zur Konfiguration der Attribute finden Sie unter DNSSupport VPC in Ihrem VPC Amazon-Benutzerhandbuch.
-
Die für einen Service Discovery-Service erstellten DNS Datensätze werden auch bei Verwendung von öffentlichen Namespaces immer mit der privaten IP-Adresse für die Aufgabe anstelle der öffentlichen IP-Adresse registriert.
-
Service Discovery erfordert, dass Aufgaben entweder Netzwerkmodus
awsvpc
,bridge
oderhost
angeben (none
wird nicht unterstützt). -
Wenn die Service-Aufgabendefinition den
awsvpc
-Netzwerkmodus verwendet, können Sie für jede Service-Aufgabe eine beliebige Kombination ausA
oder SRV -Datensätzen erstellen. Wenn Sie SRV Datensätze verwenden, ist ein Port erforderlich. -
Wenn die Service-Task-Definition den
host
Netzwerkmodusbridge
oder verwendet, ist der SRV Datensatz der einzige unterstützte DNS Datensatztyp. Erstellen Sie einen SRV Datensatz für jede Serviceaufgabe. Der SRV Datensatz muss eine Kombination aus Containername und Container-Port aus der Aufgabendefinition enthalten. -
DNSDatensätze für einen Service zur Serviceerkennung können in Ihrem abgefragt werden. VPC Sie verwenden das folgende Format:
<service discovery service name>.<service discovery namespace>
. -
Wenn Sie eine DNS Abfrage nach dem Namen des Services durchführen, geben
A
Datensätze eine Reihe von IP-Adressen zurück, die Ihren Aufgaben entsprechen. SRVDatensätze geben einen Satz von IP-Adressen und Ports für jede Aufgabe zurück. -
Wenn Sie über acht oder weniger fehlerfreie Datensätze verfügen, beantwortet Route 53 alle DNS Abfragen mit allen fehlerfreien Datensätzen.
-
Wenn alle Datensätze fehlerhaft sind, beantwortet Route 53 DNS Abfragen mit bis zu acht fehlerhaften Datensätzen.
-
Sie können die Serviceerkennung für einen Service konfigurieren, der sich hinter einem Load Balancer befindet, aber der Serviceerkennungsverkehr wird immer an die Aufgabe und nicht an den Load Balancer weitergeleitet.
-
Service Discovery unterstützt die Verwendung von Classic Load Balancers nicht.
-
Wir empfehlen Ihnen, Zustandsprüfungen auf Containerebene ECS für Ihren Service Discovery-Service zu verwenden, die von Amazon verwaltet werden.
-
HealthCheckCustomConfig—Amazon ECS verwaltet Gesundheitschecks in Ihrem Namen. Amazon ECS verwendet Informationen aus Container- und Zustandsprüfungen sowie Ihren Aufgabenstatus, um den Zustand in zu aktualisieren AWS Cloud Map. Dies wird beim Erstellen Ihres Service Discovery-Service mit dem Parameter
--health-check-custom-config
festgelegt. Weitere Informationen finden Sie HealthCheckCustomConfigin der AWS Cloud Map APIReferenz.
-
-
Die AWS Cloud Map -Ressourcen, die bei Verwendung von Service Discovery erstellt werden, müssen manuell bereinigt werden.
-
Aufgaben und Instanzen werden solange registriert,
UNHEALTHY
bis die Container-Integritätsprüfungen einen Wert zurückgeben. Wenn die Zustandsprüfung bestanden wurde, wird der Status auf aktualisiertHEALTHY
. Wenn die Container-Integritätsprüfungen fehlschlagen, wird die Registrierung der Service Discovery-Instance aufgehoben.
Service Discovery-Preisgestaltung
Den Kunden, die ECS Amazon-Service-Discovery nutzen, werden die Route 53-Ressourcen und die AWS Cloud Map -Discovery API Operationen berechnet. Dies umfasst die Kosten für das Erstellen der von Route 53 gehosteten Zonen und Abfragen der Service-Registry. Weitere Informationen finden Sie unter AWS Cloud Map -Preisgestaltung im AWS Cloud Map -Entwicklerhandbuch.
Amazon ECS führt Zustandsüberprüfungen auf Containerebene durch und stellt sie für AWS Cloud Map benutzerdefinierte Zustandsüberprüfungen bereitAPI. Dies wird den Kunden derzeit ohne Mehrkosten zur Verfügung gestellt. Wenn Sie zusätzliche Zustandsprüfungen für öffentlich zugängliche Aufgaben konfigurieren, werden Ihnen diese Zustandsprüfungen in Rechnung gestellt.