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.
Aktualisierung eines Amazon ECS Express Mode-Service
Der Expressmodus-Service vereinfacht den Service-Aktualisierungsprozess, indem er konfigurierbare Optionen für Netzwerke, Lastenausgleich und Application Auto Scaling bereitstellt und Änderungen in diesen Diensten orchestriert.
Sie können Ihren Expressmodus-Dienst aktualisieren, um Container-Images zu ändern, die Ressourcenzuweisung anzupassen oder die Konfigurationseinstellungen zu ändern. Updates werden mithilfe von Canary-Implementierungen mit alarmbasierten Rollback-Alarmen bereitgestellt, um die Verfügbarkeit aufrechtzuerhalten.
Verhalten bei der Bereitstellung
Ein Expressmodus-Dienst verwendet standardmäßig kanarische Bereitstellungen, um sichere Updates und schnelle Rollbacks zu gewährleisten:
-
Eine neue Umgebung wird erstellt und Aufgaben werden zusammen mit Ihren Änderungen bereitgestellt
-
5% des Datenverkehrs werden in die neue Umgebung verlagert
-
Alarmbasierte Rollbacks werden ausgelöst, wenn die Summe der Fehlerquoten 4xx und 5xx bei 2 Datenpunkten innerhalb von 3 Minuten > 1 ist
-
Gesundheitschecks stellen sicher, dass die neuen Aufgaben fehlerfrei sind
-
Nach 3 Minuten Backzeit werden 100% des Datenverkehrs in eine neue Umgebung verlagert
-
Nach 3 Minuten Backzeit für die Überwachung werden alte Aufgaben schrittweise gestoppt und ersetzt
Weitere Informationen finden Sie unter Amazon ECS Canary-Bereitstellungen
Verfahren
Öffnen Sie die Konsole unter. https://console.aws.amazon.com/ecs/v2
-
Klicken Sie im Navigationsbereich auf Cluster.
-
Wählen Sie auf der Seite Cluster den Namen des Clusters aus, der Ihren Express-Modus-Dienst enthält.
-
Wählen Sie auf der Seite mit den Cluster-Details die Registerkarte Dienste aus.
-
Konfigurieren Sie einen Filter, um Ihre Expressmodus-Dienste anzuzeigen. Wählen Sie als Ressourcenverwaltungstyp „Filter“ die Option ECS aus.
Bei einem Express-Modus-Dienst steht neben dem Namen ein Express-Badge.
-
Unter Konfiguration:
-
Geben Sie das Bild an, das für Ihre Anwendung verwendet werden soll. Geben Sie unter Bild-URI den URI für Ihr Bild ein. Um Ihre Amazon ECR-Bilder zu durchsuchen, wählen Sie ECR-Bilder durchsuchen und gehen Sie dann wie folgt vor:
-
Wählen Sie für Privates Repository das private Amazon ECR-Repository aus.
Wählen Sie für Bild Ihr Bild aus.
Wählen Sie aus, wie das Bild identifiziert werden soll. Wählen Sie für Bild auswählen von eine der folgenden Optionen aus:
-
AWS empfiehlt, dass Sie Image Digest wählen.
-
Um das Tag zu verwenden, wählen Sie Image-Tag und dann das Tag aus.
-
-
-
Um eine private Registrierung zu verwenden, wählen Sie Private Registrierung aus. Geben Sie dann für Secrets Manager ARN oder Name den Secrets Manager ARN ein, den Sie in den Voraussetzungen erstellt haben.
-
Wählen Sie für die Rolle zur Aufgabenausführung die Rollen aus, oder erstellen Sie eine neue Rolle und aktualisieren Sie sie. Sie können die Rolle zur Aufgabenausführung aktualisieren, wenn Sie zusätzliche Berechtigungen hinzufügen müssen.
-
-
Passen Sie Ihren Service unter Zusätzliche Konfigurationen an.
-
Unter Container:
-
Aktualisieren Sie für den Container-Port den Port, auf dem Ihre Anwendung lauscht (Standard ist 80).
-
Aktualisieren Sie für den Pfad zur Integritätsprüfung den Pfad für Integritätsprüfungen (z. B.
/health).
-
-
Fügen Sie unter Umgebungsvariablen Schlüssel-Wert-Paare für Umgebungsvariablen hinzu, die Ihre Anwendung benötigt:
-
Geben Sie unter Schlüssel den Namen der Umgebungsvariablen ein.
-
Wählen Sie als Wertetyp die Option Umgebungsvariable oder Geheim aus.
-
Geben Sie für Wert oder Wert von den Wert oder die Referenz ein.
-
Wählen Sie Umgebungsvariable hinzufügen, um nach Bedarf weitere Variablen hinzuzufügen.
-
-
Geben Sie als Befehl optional einen benutzerdefinierten Befehl ein, um die Docker-CMD-Anweisung zu überschreiben.
-
Fügen Sie für die Aufgabenrolle eine IAM-Rolle hinzu, die Ihrer Anwendung, die in Ihren Containern ausgeführt wird, Berechtigungen gewährt. Dadurch kann Ihre Anwendung API-Aufrufe an AWS Dienste tätigen.
-
Unter Compute:
-
Aktualisieren Sie für CPU die vCPU-Zuweisung für Ihre Aufgaben (z. B. 1 vCPU).
-
Aktualisieren Sie unter Arbeitsspeicher die Speicherzuweisung für Ihre Aufgaben (z. B. 2 GB).
-
-
Unter Auto Scaling:
-
Wählen Sie für die ECS-Servicemetrik die Metrik aus, nach der skaliert werden soll (z. B. durchschnittliche Speicherauslastung des ECS-Service oder Anzahl der Anfragen pro Ziel).
-
Geben Sie als Zielwert das Ziel für die Skalierung ein (z. B. 60 oder 1000).
-
Aktualisieren Sie für Minimale Anzahl von Aufgaben und Maximale Anzahl von Aufgaben die Skalierungsgrenzen.
-
-
Unter Protokolle:
-
Aktualisieren Sie für CloudWatch Amazon-Protokollgruppen den Namen der Protokollgruppe für Ihre Anwendungsprotokolle. Beachten Sie, dass dadurch keine vorhandenen Protokolle verschoben werden, sondern mit dem Schreiben von Protokollen aus der neuen Service-Revision begonnen wird.
-
Geben Sie für Amazon CloudWatch Log Stream Prefix ein neues Präfix für Log-Streams ein.
-
-
-
Wählen Sie Update, um Ihren Expressmodus-Service zu aktualisieren.
Aktualisierung mit einer benutzerdefinierten Aufgabendefinition
Sie können Ihren Expressmodus-Dienst mit einer benutzerdefinierten Aufgabendefinition aktualisieren, indem Sie den taskDefinitionArn Parameter angeben. Der Expressmodus verwendet Ihre Aufgabendefinition unverändert und verwaltet weiterhin den Rest der Infrastruktur.
Bei nachfolgenden Updates können Sie entweder:
Erstellen Sie eine neue Version Ihrer Aufgabendefinition und aktualisieren Sie die
taskDefinitionArn. Der Expressmodus verwendet die neue Version für die nächste Servicebereitstellung.Aktualisieren Sie die Expressmodus-Parameter direkt:
Bei Parametern, die nichts mit der Aufgabendefinition zu tun haben (wie
healthCheckPath, oderscalingTarget)networkConfiguration, wendet der Expressmodus die Änderungen an, ohne die Aufgabendefinition zu ändern.Für Parameter, die sich auf die Aufgabendefinition beziehen (wie Bild, CPU oder Speicher mithilfe von
primaryContainerodercpu/memory), erstellt der Expressmodus eine neue verwaltete Aufgabendefinition mit Ihren Änderungen, wobei Ihre andere Konfiguration auf Aufgabenebene beibehalten wird.
Um mit einer benutzerdefinierten Aufgabendefinition zu aktualisieren (Amazon ECS-Konsole)
Öffnen Sie die Amazon ECS-Konsole und navigieren Sie zu Ihrem Express-Modus-Service.
Wählen Sie den Dropdown-Pfeil neben Service aktualisieren und wählen Sie dann Mit benutzerdefinierter Aufgabendefinition aktualisieren aus.
Wählen Sie unter Aufgabendefinitionsfamilie eine bestehende Aufgabendefinitionsfamilie aus. Um eine neue Aufgabendefinition zu erstellen, wählen Sie den Link Aufgabendefinitionen.
Wählen Sie unter Revision der Aufgabendefinition die Version aus, die Sie verwenden möchten, oder lassen Sie das Feld leer, um die neueste Version zu verwenden.
(Optional) Erweitern Sie Zusätzliche Konfigurationen, um die Einstellungen für den Integritätsprüfpfad, das Netzwerk oder die Auto Scaling-Einstellungen zu aktualisieren.
Wählen Sie Aktualisieren aus.
Der folgende AWS AWS CLI Befehl aktualisiert Ihren Expressmodus-Dienst mit einer benutzerdefinierten Aufgabendefinition:
aws ecs update-express-gateway-service \ --service-arn arn:aws:ecs:us-west-2:123456789012:service/default/my-service \ --task-definition-arn arn:aws:ecs:us-west-2:123456789012:task-definition/my-td:4
Anmerkung
Wenn Sie Ihren Expressmodus-Dienst taskDefinitionArn zum ersten Mal verwenden CloudFormation und ihn erweitern, stellen Sie Ihren Stack zunächst erneut bereit. Dadurch wird die Rollback-Kompatibilität gewährleistet.