Aktualisieren eines Canary-Releases - Amazon API Gateway

Aktualisieren eines Canary-Releases

Nach der Bereitstellung eines Canary-Releases können Sie den prozentualen Anteil des Canary-Verkehrs anpassen oder die Verwendung eines Stage-Caches aktivieren oder deaktivieren, um die Testperformance zu optimieren. Sie können außerdem Stufenvariablen modifizieren, die im Canary-Release verwendet werden, wenn der Ausführungskontext aktualisiert wird. Um solche Aktualisierungen vorzunehmen, rufen Sie die Operation stage:update mit neuen Werten für canarySettings auf.

Sie können eine Canary-Release mithilfe der API-Gateway-Konsole, dem AWS CLI-Befehl update-stage oder einem AWS SDK aktualisieren.

Aktualisieren eines Canary-Releases mit der API Gateway-Konsole

Um die API Gateway-Konsole zur Aktualisierung der vorhandenen Canary-Einstellungen einer Stufe zu nutzen, führen Sie die folgenden Schritte aus:

Aktualisieren bestehender Canary-Einstellungen
  1. Melden Sie sich bei der API Gateway-Konsole an und wählen Sie eine bestehende REST API aus.

  2. Wählen Sie im Hauptnavigationsbereich Stages (Stufen) und anschließend eine bestehende Stufe aus.

  3. Wählen Sie die Registerkarte Canary und anschließend Edit (Bearbeiten) aus. Möglicherweise müssen Sie die rechte Pfeiltaste wählen, um die Registerkarte Canary anzuzeigen.

  4. Aktualisieren Sie Request distribution (Verteilung anfordern), indem Sie den Prozentsatz auf einen Wert zwischen 0,0 und 100,0 (inklusive) erhöhen oder verringern.

  5. Aktivieren oder deaktivieren Sie das Kontrollkästchen unter Stage cache (Stage-Cache).

  6. Fügen Sie Canary stage variables (Canary-Stufenvariablen) hinzu, entfernen oder ändern Sie sie.

  7. Wählen Sie Speichern.

Aktualisieren eines Canary-Releases mit der AWS CLI

Um mit der AWS CLI ein Canary zu aktualisieren, rufen Sie den Befehl update-stage auf.

Um die Verwendung eines Stufen-Caches für das Canary zu aktivieren oder zu deaktivieren, rufen Sie den Befehl update-stage wie folgt auf:

aws apigateway update-stage \ --rest-api-id {rest-api-id} \ --stage-name '{stage-name}' \ --patch-operations op=replace,path=/canarySettings/useStageCache,value=true

Um den Prozentsatz des Canary-Verkehrs anzupassen, rufen Sie update-stage auf, um den Wert /canarySettings/percentTraffic für die Stufe zu ersetzen.

aws apigateway update-stage \ --rest-api-id {rest-api-id} \ --stage-name '{stage-name}' \ --patch-operations op=replace,path=/canarySettings/percentTraffic,value=25.0

Um Canary-Stufenvariablen zu aktualisieren, einschließlich Hinzufügen, Ersetzen oder Entfernen von Canary-Stufenvariablen:

aws apigateway update-stage \ --rest-api-id {rest-api-id} \ --stage-name '{stage-name}' \ --patch-operations '[{ "op": "replace", "path": "/canarySettings/stageVariableOverrides/newVar", "value": "newVal" }, { "op": "replace", "path": "/canarySettings/stageVariableOverrides/var2", "value": "val4" }, { "op": "remove", "path": "/canarySettings/stageVariableOverrides/var1" }]'

Sie können das oben Genannte aktualisieren, indem Sie die Operationen zu einem einzigen patch-operations-Wert zusammenfassen:

aws apigateway update-stage \ --rest-api-id {rest-api-id} \ --stage-name '{stage-name}' \ --patch-operations '[{ "op": "replace", "path": "/canarySettings/percentTraffic", "value": "20.0" }, { "op": "replace", "path": "/canarySettings/useStageCache", "value": "true" }, { "op": "remove", "path": "/canarySettings/stageVariableOverrides/var1" }, { "op": "replace", "path": "/canarySettings/stageVariableOverrides/newVar", "value": "newVal" }, { "op": "replace", "path": "/canarySettings/stageVariableOverrides/val2", "value": "val4" }]'