

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# `AWS::CodeDeploy::BlueGreen`sintaks hook
<a name="blue-green-hook-syntax"></a>

Sintaks berikut menjelaskan struktur `AWS::CodeDeploy::BlueGreen` hook untuk penyebaran ECS. blue/green 

## Sintaksis
<a name="cfn-blue-green-hook-syntax"></a>

```
"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)}}"
              ]
            }
          }
        }
      ]
    }
  }
}
```

## Sifat-sifat
<a name="cfn-blue-green-hook-properties"></a>

Logical ID (juga disebut *nama logis*)  
ID logis dari hook dideklarasikan di `Hooks` bagian template. ID logis harus berupa alfanumerik (A-Za-z0-9) dan unik dalam templat.  
*Wajib*: Ya    
`Type`  
Jenis kait. `AWS::CodeDeploy::BlueGreen`  
*Wajib*: Ya  
`Properties`  
Properti kait.  
*Wajib*: Ya    
`TrafficRoutingConfig`  
Pengaturan konfigurasi perutean lalu lintas.  
*Wajib*: Tidak  
Konfigurasi default adalah pergeseran lalu lintas Canary berbasis waktu, dengan persentase langkah 15% dan waktu menanam lima menit.    
`Type`  
Jenis pergeseran lalu lintas yang digunakan oleh konfigurasi deployment.  
Nilai yang valid: AllAtOnce \| TimeBasedCanary \| TimeBasedLinear  
*Wajib*: Ya    
`TimeBasedCanary`  
Menentukan konfigurasi yang menggeser lalu lintas dari satu versi deployment ke versi lain dalam dua tambahan.  
*Wajib*: Bersyarat: Jika Anda menentukan `TimeBasedCanary` sebagai jenis perutean lalu lintas, Anda harus menyertakan parameter. `TimeBasedCanary`    
`StepPercentage`  
Persentase lalu lintas bergeser dalam tambahan pertama `TimeBasedCanary` deployment. Persentase langkah harus 14% atau lebih besar.  
*Wajib*: Tidak  
`BakeTimeMins`  
Jumlah menit antara pergeseran lalu lintas pertama dan kedua dari `TimeBasedCanary` deployment.  
*Wajib*: Tidak  
`TimeBasedLinear`  
Menentukan konfigurasi yang menggeser lalu lintas dari satu versi deployment ke versi lain dalam dua tambahan, dengan jumlah menit yang sama antara setiap tambahan.  
*Wajib*: Bersyarat: Jika Anda menentukan `TimeBasedLinear` sebagai jenis perutean lalu lintas, Anda harus menyertakan parameter. `TimeBasedLinear`    
`StepPercentage`  
Persentase lalu lintas yang bergeser pada awal setiap tambahan `TimeBasedLinear` deployment. Persentase langkah harus 14% atau lebih besar.  
*Wajib*: Tidak  
`BakeTimeMins`  
Jumlah menit antara setiap pergeseran lalu lintas tambahan `TimeBasedLinear` deployment.  
*Wajib*: Tidak  
`AdditionalOptions`  
Opsi tambahan untuk blue/green penyebaran.  
*Wajib*: Tidak    
`TerminationWaitTimeInMinutes`  
Menentukan waktu tunggu, dalam hitungan menit, sebelum mengakhiri sumber daya biru.  
*Wajib*: Tidak  
`LifecycleEventHooks`  
Gunakan kait peristiwa siklus hidup untuk menentukan fungsi Lambda yang CodeDeploy dapat memanggil untuk memvalidasi penerapan. Anda dapat menggunakan fungsi yang sama atau yang berbeda untuk peristiwa deployment siklus hidup. Setelah menyelesaikan tes validasi, fungsi `AfterAllowTraffic` Lambda memanggil CodeDeploy kembali dan memberikan hasil dari atau. `Succeeded` `Failed` Untuk informasi selengkapnya, lihat [bagian AppSpec 'kait'](https://docs.aws.amazon.com/codedeploy/latest/userguide/reference-appspec-file-structure-hooks.html) di *Panduan AWS CodeDeploy Pengguna*.  
*Wajib*: Tidak    
`BeforeInstall`  
Fungsi yang digunakan untuk menjalankan tugas sebelum set tugas pengganti dibuat.  
*Wajib*: Tidak  
`AfterInstall`  
Fungsi yang digunakan untuk menjalankan tugas setelah set tugas pengganti dibuat dan salah satu grup target terkait dengan itu.  
*Wajib*: Tidak  
`AfterAllowTestTraffic`  
Fungsi yang diigunakan untuk menjalankan tugas setelah listener tes melayani lalu lintas ke set tugas pengganti.  
*Wajib*: Tidak  
`BeforeAllowTraffic`  
Fungsi yang digunakan untuk menjalankan tugas setelah grup target kedua dikaitkan dengan set tugas pengganti, tapi sebelum lalu lintas bergeser ke set tugas pengganti.  
*Wajib*: Tidak  
`AfterAllowTraffic`  
Fungsi yang digunakan untuk menjalankan tugas setelah grup target kedua melayani lalu lintas ke set tugas pengganti.  
*Wajib*: Tidak  
`ServiceRole`  
Peran eksekusi untuk digunakan CloudFormation untuk melakukan penyebaran biru-hijau. Untuk daftar izin yang diperlukan, lihat[Izin IAM untuk penerapan blue/green](about-blue-green-deployments.md#blue-green-iam).  
*Wajib*: Tidak  
`Applications`  
Menentukan properti aplikasi Amazon ECS.  
*Wajib*: Ya    
`Target`  
  
*Wajib*: Ya    
`Type`  
Jenis sumber daya.  
*Wajib*: Ya  
`LogicalID`  
ID logis sumber daya.  
*Wajib*: Ya  
`ECSAttributes`  
Sumber daya yang mewakili berbagai persyaratan deployment aplikasi Amazon ECS Anda.  
*Wajib*: Ya    
`TaskDefinitions`  
ID logis [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-ecs-taskdefinition.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-ecs-taskdefinition.html) sumber daya untuk menjalankan kontainer Docker yang berisi aplikasi Amazon ECS Anda.  
*Wajib*: Ya  
`TaskSets`  
Logika IDs sumber [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-ecs-taskset.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-ecs-taskset.html)daya untuk digunakan sebagai set tugas untuk aplikasi.  
*Wajib*: Ya  
`TrafficRouting`  
Menentukan sumber daya yang digunakan untuk perutean lalu lintas.  
*Wajib*: Ya    
`ProdTrafficRoute`  
Listener yang akan digunakan oleh penyeimbangan beban Anda untuk mengarahkan lalu lintas ke grup target Anda.  
*Wajib*: Ya    
`Type`  
Jenis sumber daya. `AWS::ElasticLoadBalancingV2::Listener`  
*Wajib*: Ya  
`LogicalID`  
ID logis sumber daya.  
*Wajib*: Ya  
`TestTrafficRoute`  
Listener yang akan digunakan oleh penyeimbangan beban Anda untuk mengarahkan lalu lintas ke grup target Anda.  
*Wajib*: Ya    
`Type`  
Jenis sumber daya. `AWS::ElasticLoadBalancingV2::Listener`  
*Wajib*: Ya  
`LogicalID`  
ID logis sumber daya.  
*Wajib*: Tidak  
`TargetGroups`  
ID logis sumber daya yang digunakan sebagai grup target untuk merutekan lalu lintas ke target terdaftar.  
*Wajib*: Ya