Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
AWS::CodeDeploy::BlueGreensintassi hook
La sintassi seguente descrive la struttura di un AWS::CodeDeploy::BlueGreen hook per le distribuzioni ECS. blue/green
Sintassi
"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)" ] } } } ] } } }
Proprietà
- ID logico (chiamato anche nome logico)
-
L'ID logico di un hook dichiarato nella
Hookssezione del modello. L'ID logico deve essere un valore alfanumerico (A-Z, a-z, 0-9) univoco all'interno del modello.Campo obbligatorio: sì
Type-
Il tipo di hook.
AWS::CodeDeploy::BlueGreenCampo obbligatorio: sì
Properties-
Proprietà dell'hook.
Campo obbligatorio: sì
TrafficRoutingConfig-
Impostazioni di configurazione dell'instradamento del traffico.
Required: No
La configurazione predefinita è lo spostamento del traffico canary basato sul tempo, con una percentuale di fasi del 15% e un tempo di cottura di cinque minuti.
Type-
Tipo di spostamento del traffico utilizzato dalla configurazione di distribuzione.
Valori validi: AllAtOnce | TimeBasedCanary | TimeBasedLinear
Campo obbligatorio: sì
TimeBasedCanary-
Specifica una configurazione che sposta il traffico da una versione della distribuzione a un'altra con due incrementi.
Obbligatorio: condizionale: se si specifica
TimeBasedCanarycome tipo di instradamento del traffico, è necessario includere il parametroTimeBasedCanary.StepPercentage-
Percentuale di traffico da spostare nel primo incremento di una distribuzione
TimeBasedCanary. La percentuale di fasi deve essere pari o superiore al 14%.Required: No
BakeTimeMins-
Numero di minuti tra il primo e il secondo spostamento di traffico di una distribuzione
TimeBasedCanary.Required: No
TimeBasedLinear-
Specifica una configurazione che sposta il traffico da una versione della distribuzione a un'altra con incrementi uguali, con un numero uguale di minuti tra ciascun incremento.
Obbligatorio: condizionale: se si specifica
TimeBasedLinearcome tipo di instradamento del traffico, è necessario includere il parametroTimeBasedLinear.StepPercentage-
Percentuale di traffico spostata all'inizio di ogni incremento di una distribuzione
TimeBasedLinear. La percentuale di fasi deve essere pari o superiore al 14%.Required: No
BakeTimeMins-
Numero di minuti tra ogni spostamento incrementale del traffico di una distribuzione
TimeBasedLinear.Required: No
AdditionalOptions-
Opzioni aggiuntive per la blue/green distribuzione.
Required: No
TerminationWaitTimeInMinutes-
Specifica il tempo di attesa, in minuti, prima di terminare le risorse blu.
Required: No
LifecycleEventHooks-
Usa gli hook degli eventi del ciclo di vita per specificare una funzione Lambda che CodeDeploy può chiamare per convalidare una distribuzione. Puoi utilizzare la stessa funzione o un'altra per gli eventi del ciclo di vita di distribuzione. Dopo il completamento dei test di convalida, la funzione
AfterAllowTrafficLambda CodeDeploy richiama e fornisce il risultatoSucceededdi o.FailedPer ulteriori informazioni, consulta la sezione AppSpec 'hook' nella Guida per l'AWS CodeDeploy utente.Required: No
BeforeInstall-
Funzione utilizzata per eseguire attività prima della creazione del set di attività di sostituzione.
Required: No
AfterInstall-
Funzione utilizzata per eseguire attività dopo che il set di attività di sostituzione è stato creato e a esso è stato associato uno dei gruppi target.
Required: No
AfterAllowTestTraffic-
Funzione utilizzata per eseguire attività dopo che il listener di test ha indirizzato il traffico verso il set di attività di sostituzione.
Required: No
BeforeAllowTraffic-
Funzione utilizzata per eseguire attività dopo che il secondo gruppo target è stato associato al set di attività di sostituzione, ma prima che il traffico venga reindirizzato al set di attività di sostituzione.
Required: No
AfterAllowTraffic-
Funzione utilizzata per eseguire attività dopo che il secondo gruppo target ha indirizzato il traffico verso il set di attività di sostituzione.
Required: No
ServiceRole-
Il ruolo di esecuzione CloudFormation da utilizzare per eseguire le distribuzioni blu-verdi. Per un elenco delle autorizzazioni necessarie, vedere. Autorizzazioni IAM per le distribuzioni blue/green
Required: No
Applications-
Specifica le proprietà dell'applicazione Amazon ECS.
Campo obbligatorio: sì
Target-
Campo obbligatorio: sì
Type-
Il tipo di risorsa.
Campo obbligatorio: sì
LogicalID-
L'ID logico della risorsa.
Campo obbligatorio: sì
ECSAttributes-
Le risorse che rappresentano i vari requisiti della distribuzione dell'applicazione Amazon ECS.
Campo obbligatorio: sì
TaskDefinitions-
ID logico della risorsa AWS::ECS::TaskDefinition per eseguire il container Docker che contiene l'applicazione Amazon ECS.
Campo obbligatorio: sì
TaskSets-
La logica IDs delle AWS::ECS::TaskSetrisorse da utilizzare come set di attività per l'applicazione.
Campo obbligatorio: sì
TrafficRouting-
Specifica le risorse utilizzate per l'instradamento del traffico.
Campo obbligatorio: sì
ProdTrafficRoute-
Il listener che viene utilizzato dal load balancer per indirizzare il traffico verso i gruppi target.
Campo obbligatorio: sì
Type-
Il tipo di risorsa.
AWS::ElasticLoadBalancingV2::ListenerCampo obbligatorio: sì
LogicalID-
L'ID logico della risorsa.
Campo obbligatorio: sì
TestTrafficRoute-
Il listener che viene utilizzato dal load balancer per indirizzare il traffico verso i gruppi target.
Campo obbligatorio: sì
Type-
Il tipo di risorsa.
AWS::ElasticLoadBalancingV2::ListenerCampo obbligatorio: sì
LogicalID-
L'ID logico della risorsa.
Required: No
TargetGroups-
ID logico delle risorse da utilizzare come target per instradare il traffico al target registrato.
Campo obbligatorio: sì