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.
AWS::CodeDeploy::BlueGreen-Hook-Syntax
Die folgende Syntax beschreibt die Struktur eines AWS::CodeDeploy::BlueGreen-Hooks für ECS blue/green Einsätze.
Syntax
"Hooks": { "Logical ID": { "Type": "AWS::CodeDeploy::BlueGreen", "Properties": { "TrafficRoutingConfig": { "Type": "Traffic routing type", "TimeBasedCanary": { "StepPercentage":Integer, "BakeTimeMins":Integer}, "TimeBasedLinear": { "StepPercentage":Integer, "BakeTimeMins":Integer} }, "AdditionalOptions": {"TerminationWaitTimeInMinutes":Integer}, "LifecycleEventHooks": { "BeforeInstall": "FunctionName", "AfterInstall": "FunctionName", "AfterAllowTestTraffic": "FunctionName", "BeforeAllowTraffic": "FunctionName", "AfterAllowTraffic": "FunctionName" }, "ServiceRole": "CodeDeployServiceRoleName", "Applications": [ { "Target": { "Type": "AWS::ECS::Service", "LogicalID": "Logical ID of AWS::ECS::Service" }, "ECSAttributes": { "TaskDefinitions": [ "Logical ID of AWS::ECS::TaskDefinition (Blue)", "Logical ID of AWS::ECS::TaskDefinition (Green)" ], "TaskSets": [ "Logical ID of AWS::ECS::TaskSet (Blue)", "Logical ID of AWS::ECS::TaskSet (Green)" ], "TrafficRouting": { "ProdTrafficRoute": { "Type": "AWS::ElasticLoadBalancingV2::Listener", "LogicalID": "Logical ID of AWS::ElasticLoadBalancingV2::Listener (Production)" }, "TestTrafficRoute": { "Type": "AWS::ElasticLoadBalancingV2::Listener", "LogicalID": "Logical ID of AWS::ElasticLoadBalancingV2::Listener (Test)" }, "TargetGroups": [ "Logical ID of AWS::ElasticLoadBalancingV2::TargetGroup (Blue)", "Logical ID of AWS::ElasticLoadBalancingV2::TargetGroup (Green)" ] } } } ] } } }
Eigenschaften
- Logische ID (auch logischer Namegenannt)
-
Die logische ID eines Hooks, der im Abschnitt
Hooksder Vorlage deklariert ist. Die logische ID muss alphanumerisch (A-Za-z0-9) und innerhalb der Vorlage eindeutig sein.Erforderlich: Ja
Type-
Der Typ des Hooks.
AWS::CodeDeploy::BlueGreenErforderlich: Ja
Properties-
Eigenschaften des Hooks.
Erforderlich: Ja
TrafficRoutingConfig-
Konfigurationseinstellungen für Datenverkehrsweiterleitungen
Required: No
Die Standardkonfiguration ist eine zeitbasierte Verschiebung des Canary-Verkehrs mit einem Schrittprozentsatz von 15 % und einer Bake-Zeit von fünf Minuten.
Type-
Der Typ des Datenverkehrs, der von der Bereitstellungskonfiguration verwendet wird.
Gültige Werte: AllAtOnce | TimeBasedCanary | TimeBasedLinear
Erforderlich: Ja
TimeBasedCanary-
Gibt eine Konfiguration an, die den Datenverkehr in zwei Schritten von einer Version der Bereitstellung auf eine andere verlagert.
Erforderlich: Bedingt: Wenn Sie
TimeBasedCanaryals Datenverkehrs-Weiterleitungstyp angeben, müssen Sie den ParameterTimeBasedCanaryeinschließen.StepPercentage-
Der Prozentsatz des Datenverkehrs, der im ersten Schritt einer
TimeBasedCanary-Bereitstellung verschoben werden soll. Der Schrittprozentsatz muss 14 % oder höher sein.Required: No
BakeTimeMins-
Die Anzahl der Minuten zwischen der ersten und zweiten Verkehrsverschiebung einer
TimeBasedCanary-Bereitstellung.Required: No
TimeBasedLinear-
Gibt eine Konfiguration an, die den Datenverkehr in gleichen Schritten von einer Version der Bereitstellung in ein anderes gleiches Inkrement verlagert, wobei zwischen jedem Inkrement eine gleiche Anzahl von Minuten liegt.
Erforderlich: Bedingt: Wenn Sie
TimeBasedLinearals Datenverkehrs-Weiterleitungstyp angeben, müssen Sie den ParameterTimeBasedLineareinschließen.StepPercentage-
Der Prozentsatz des Datenverkehrs, der zu Beginn jedes Inkrements einer
TimeBasedLinear-Bereitstellung verschoben wird. Der Schrittprozentsatz muss 14 % oder höher sein.Required: No
BakeTimeMins-
Die Anzahl der Minuten zwischen jeder inkrementellen Verkehrsverschiebung einer
TimeBasedLinear-Bereitstellung.Required: No
AdditionalOptions-
Zusätzliche Optionen für die Blau/Grün-Bereitstellung.
Required: No
TerminationWaitTimeInMinutes-
Gibt die Wartezeit in Minuten an, bevor die blauen Ressourcen beendet werden.
Required: No
LifecycleEventHooks-
Verwenden Sie Lifecycle-Ereignis-Hooks, um eine Lambda-Funktion anzugeben, die CodeDeploy zur Validierung einer Bereitstellung aufrufen kann. Sie können dieselbe Funktion oder eine andere für die Bereitstellungs-Lebenszyklusereignisse verwenden. Nach Abschluss der Validierungstests ruft die Lambda-Funktion
AfterAllowTrafficCodeDeploy zurück und liefert ein Ergebnis vonSucceededoderFailed. Weitere Informationen finden Sie im AppSpec-Abschnitt „hooks“ im AWS CodeDeploy-Benutzerhandbuch.Required: No
BeforeInstall-
Funktion zur Ausführung von Aufgaben, bevor der neue Aufgabensatz erstellt ist.
Required: No
AfterInstall-
Funktion zur Ausführung von Aufgaben nach Erstellung des neuen Aufgabensatzes und Zuordnung einer der Zielgruppen.
Required: No
AfterAllowTestTraffic-
Funktion zur Ausführung von Aufgaben, wenn der Test-Listener Datenverkehr an den neuen Aufgabensatz sendet.
Required: No
BeforeAllowTraffic-
Funktion zur Ausführung von Aufgaben, wenn die zweite Zielgruppe dem neuen Aufgabensatz zugeordnet ist, aber bevor Datenverkehr an den neuen Aufgabensatz umgeleitet wurde.
Required: No
AfterAllowTraffic-
Funktion zur Ausführung von Aufgaben, wenn die zweite Zielgruppe Datenverkehr an den neuen Aufgabensatz sendet.
Required: No
ServiceRole-
Die Ausführungsrolle, die CloudFormation zum Ausführen der Blau/Grün-Bereitstellungen verwendet. Eine Liste der erforderlichen Berechtigungen finden Sie unter IAM-Berechtigungen für blaue/grüne Bereitstellungen.
Required: No
Applications-
Gibt die Eigenschaften der Amazon ECS-Anwendung an.
Erforderlich: Ja
Target-
Erforderlich: Ja
Type-
Der Ressourcentyp.
Erforderlich: Ja
LogicalID-
Die logische ID der Ressource.
Erforderlich: Ja
ECSAttributes-
Die Ressourcen, die die verschiedenen Anforderungen Ihrer Amazon ECS-Anwendungsbereitstellung darstellen.
Erforderlich: Ja
TaskDefinitions-
Die logische ID der AWS::ECS::TaskDefinition-Ressource zur Ausführung des Docker-Containers, der Ihre Amazon ECS-Anwendung enthält.
Erforderlich: Ja
TaskSets-
Die logischen IDs der AWS::ECS::TaskSet-Ressourcen, die als Task-Sets für die Anwendung verwendet werden sollen.
Erforderlich: Ja
TrafficRouting-
Gibt Ressourcen an, die für das Weiterleiten des Datenverkehrs verwendet werden.
Erforderlich: Ja
ProdTrafficRoute-
Der Listener, der von Ihrem Load Balancer verwendet wird, um Datenverkehr an Ihre Zielgruppen weiterzuleiten.
Erforderlich: Ja
Type-
Der Ressourcentyp.
AWS::ElasticLoadBalancingV2::ListenerErforderlich: Ja
LogicalID-
Die logische ID der Ressource.
Erforderlich: Ja
TestTrafficRoute-
Der Listener, der von Ihrem Load Balancer verwendet wird, um Datenverkehr an Ihre Zielgruppen weiterzuleiten.
Erforderlich: Ja
Type-
Der Ressourcentyp.
AWS::ElasticLoadBalancingV2::ListenerErforderlich: Ja
LogicalID-
Die logische ID der Ressource.
Required: No
TargetGroups-
Logische ID der Ressourcen, die als Zielgruppen verwendet werden sollen, um den Datenverkehr an das registrierte Ziel weiterzuleiten.
Erforderlich: Ja