In einem unseren letzten AWS Bits haben wir Amazon ECS Service Connect vorgestellt. Diesmal möchten wir zeigen, wie einfach die Migration von Amazon ECS Service Discovery nach Amazon ECS Service Connect gelingt.
Die Migration von Service Discovery nach Amazon ECS Service Connect
Bevor man die Services seiner Anwendung auf Amazon ECS Service Connect aktualisieren kann, muss man einen Namespace für ECS Service Connect in AWS Cloud Map anlegen. Danach können die Services von Service Discovery nach Service Connect umgestellt werden.
Dazu verwendet man am Besten das AWS Command Line Interface (AWS CLI) und den Befehl ecs update-service
mit dem Parameter --service-connect-configuration
. Wie man der AWS CLI-Dokumentation entnehmen kann, erwartet der Parameter eine JSON-Struktur. Hier ein Beispiel einer solchen Struktur:
{ "enabled": true, "namespace": "application.sc.internal", "services": [ { "portName": "db-service", "clientAliases": [ { "port": 5432, "dnsName": "db-service.applcation.cloudmap.internal" } ] } ], "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-group": "ecs/serviceconnect", "awslogs-region": "eu-central-1", "awslogs-stream-prefix": "db-envoy" } } }
Wie in Zeile 2 zu sehen, wird der Schlüssel enabled
auf true
gesetzt, womit Amazon ECS Service Connect für diesen Service aktiviert wird. Achtet man im obigen Beispielcode auch auf den Schlüssel dnsName
in Zeile 10, merkt man, dass er immer noch auf die Service Discovery ID des Load Balancers verweist. Um Änderungen an der Client-Anwendung zu vermeiden, sollte man diesen auf denselben Namen setzen, den die Client-Anwendung standardmäßig verwendet. In diesem Fall wird db-service.applcation.cloudmap.internal
verwendet.
Eine Anleitung mit Beispiel-Anwendung und weiterreichenden Informationen gibt es im offiziellen Blogartikel.
Schreibe einen Kommentar