Bekerja dengan konfigurasi penerapan di CodeDeploy - AWS CodeDeploy

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

Bekerja dengan konfigurasi penerapan di CodeDeploy

Konfigurasi penerapan adalah seperangkat aturan dan kondisi keberhasilan dan kegagalan yang digunakan oleh CodeDeploy selama penerapan. Aturan dan ketentuan ini berbeda, tergantung pada apakah Anda menerapkan ke platform komputasi EC2/lokal, platform komputasi AWS Lambda, atau platform komputasi Amazon ECS.

Konfigurasi penerapan pada platform komputasi EC2/On-premise

Saat Anda menerapkan ke platform komputasi EC2/lokal, konfigurasi penerapan menentukan, melalui penggunaan nilai 'host sehat minimum' dan nilai opsional 'host sehat minimum per zona', jumlah atau persentase instans yang harus tetap tersedia kapan saja selama penerapan.

Anda dapat menggunakan salah satu dari tiga konfigurasi penerapan yang telah ditentukan sebelumnya yang disediakan oleh AWS atau membuat konfigurasi penerapan kustom. Untuk informasi selengkapnya tentang membuat konfigurasi penerapan kustom, lihat. Create a Deployment Configuration Jika Anda tidak menentukan konfigurasi penerapan, CodeDeploy gunakan. CodeDeployDefault OneAtKonfigurasi penerapan aTime.

Untuk informasi selengkapnya tentang cara CodeDeploy memantau dan mengevaluasi kesehatan instans selama penerapan, lihat. Instance Health Untuk melihat daftar konfigurasi penerapan yang sudah terdaftar ke AWS akun Anda, lihat. View Deployment Configuration Details

Konfigurasi penerapan yang telah ditentukan sebelumnya untuk platform komputasi EC2/On-premise

Tabel berikut mencantumkan konfigurasi penerapan yang telah ditentukan.

catatan

Tidak ada konfigurasi penerapan standar yang mendukung zonal configuration fitur (yang merupakan fitur yang memungkinkan Anda menentukan jumlah host sehat per Availability Zone). Jika Anda ingin menggunakan fitur ini, Anda harus membuat konfigurasi penerapan Anda sendiri.

Konfigurasi deployment Deskripsi
CodeDeployDefault.AllAtOnce

Penerapan di tempat:

Mencoba untuk menyebarkan revisi aplikasi ke sebanyak mungkin contoh sekaligus. Status penyebaran keseluruhan ditampilkan sebagai Berhasil jika revisi aplikasi diterapkan ke satu atau beberapa instance. Status penerapan keseluruhan ditampilkan sebagai Gagal jika revisi aplikasi tidak diterapkan ke salah satu instance. Menggunakan contoh sembilan contoh, CodeDeployDefault. AllAtOnce mencoba untuk menyebarkan ke kesembilan instance sekaligus. Penerapan keseluruhan berhasil jika penerapan bahkan ke satu instance berhasil. Gagal hanya jika penerapan ke kesembilan instance gagal.

Penerapan biru/hijau:

  • Penerapan ke lingkungan pengganti: Mengikuti aturan penerapan yang sama seperti. CodeDeployDefault AllAtOnce untuk penerapan di tempat.

  • Pengalihan rute lalu lintas: Rutekan lalu lintas ke semua instance di lingkungan pengganti sekaligus. Berhasil jika lalu lintas berhasil dialihkan ke setidaknya satu instance. Gagal setelah mengalihkan rute ke semua instance gagal.

CodeDeployDefault. HalfAtaTime

Penerapan di tempat:

Menyebarkan hingga setengah dari instance sekaligus (dengan pecahan dibulatkan ke bawah). Penerapan keseluruhan berhasil jika revisi aplikasi diterapkan ke setidaknya setengah dari instance (dengan pecahan dibulatkan). Jika tidak, deployment gagal. Dalam contoh sembilan contoh, ia menyebarkan hingga empat instance sekaligus. Penerapan keseluruhan berhasil jika penerapan ke lima instans atau lebih berhasil. Jika tidak, deployment gagal.

catatan

Jika Anda menerapkan ke instance di beberapa grup Auto Scaling CodeDeploy , akan menerapkan hingga setengah dari instans sekaligus terlepas dari grup Auto Scaling tempat mereka berada. Sebagai contoh, mari kita asumsikan Anda memiliki dua grup Auto Scaling, ASG1 danASG2, masing-masing dengan 10 instance. Dalam skenario ini, CodeDeploy mungkin menerapkan ke 10 instance secara adil ASG1 dan menganggap ini berhasil karena telah diterapkan ke setidaknya setengah dari instance.

Penerapan biru/hijau:

  • Penerapan ke lingkungan pengganti: Mengikuti aturan penerapan yang sama seperti. CodeDeployDefault HalfAtaTime untuk penerapan di tempat.

  • Pengalihan rute lalu lintas: Rutekan lalu lintas hingga setengah dari instance di lingkungan pengganti sekaligus. Berhasil jika mengalihkan ke setidaknya setengah dari instance berhasil. Jika tidak, gagal.

CodeDeployDefault. OneAtaTime

Penerapan di tempat:

Menyebarkan revisi aplikasi hanya untuk satu instance pada satu waktu.

Untuk grup penerapan yang berisi lebih dari satu instance:

  • Penerapan keseluruhan berhasil jika revisi aplikasi diterapkan ke semua instance. Pengecualian untuk aturan ini adalah jika penerapan ke instance terakhir gagal, penerapan keseluruhan masih berhasil. Hal ini karena CodeDeploy memungkinkan hanya satu instance pada satu waktu untuk diambil offline dengan CodeDeployDefault. OneAtKonfigurasi aTime.

  • Penerapan keseluruhan gagal segera setelah revisi aplikasi gagal diterapkan ke salah satu kecuali contoh terakhir.

  • Dalam contoh menggunakan sembilan instance, itu menyebarkan ke satu instance pada satu waktu. Penerapan keseluruhan berhasil jika penerapan ke delapan instance pertama berhasil. Penerapan keseluruhan gagal jika penerapan ke salah satu dari delapan instance pertama gagal.

Untuk grup penerapan yang hanya berisi satu instance, penerapan keseluruhan hanya berhasil jika penerapan ke instance tunggal berhasil.

Penerapan biru/hijau:

  • Penerapan ke lingkungan pengganti: Mengikuti aturan penerapan yang sama seperti. CodeDeployDefault OneAtaTime untuk penerapan di tempat.

  • Pengalihan rute lalu lintas: Rutekan lalu lintas ke satu contoh di lingkungan pengganti pada satu waktu. Berhasil jika lalu lintas berhasil dialihkan ke semua instance pengganti. Gagal setelah kegagalan pengalihan rute pertama. Pengecualian untuk aturan ini adalah bahwa jika instance terakhir gagal mendaftar, penerapan keseluruhan masih berhasil.

Konfigurasi penerapan pada platform komputasi Amazon ECS

Saat Anda menerapkan ke platform komputasi Amazon ECS, konfigurasi penerapan menentukan cara lalu lintas dialihkan ke set tugas Amazon ECS yang diperbarui. Anda dapat menggeser lalu lintas menggunakan konfigurasi canary, linear, atau all-at-oncedeployment. Untuk informasi selengkapnya, lihat Konfigurasi deployment.

Anda juga dapat membuat konfigurasi penyebaran kenari atau linier kustom Anda sendiri. Untuk informasi selengkapnya, lihat Create a Deployment Configuration.

Konfigurasi penerapan yang telah ditentukan sebelumnya untuk platform komputasi Amazon ECS

Tabel berikut mencantumkan konfigurasi standar yang tersedia untuk penerapan Amazon ECS.

catatan

Jika Anda menggunakan Network Load Balancer, hanya konfigurasi penerapan yang CodeDeployDefault.ECSAllAtOnce telah ditentukan yang didukung.

Konfigurasi deployment Deskripsi

CodeDeployDefault.ecslinear10 PercentEvery 1Menit

Menggeser 10 persen lalu lintas setiap menit sampai semua lalu lintas bergeser.

CodeDeployDefault.ecslinear10 PercentEvery 3Menit

Menggeser 10 persen lalu lintas setiap tiga menit sampai semua lalu lintas bergeser.

CodeDeployDefault.ecscanary10Percent5Menit

Menggeser 10 persen lalu lintas pada kenaikan pertama. Sisanya 90 persen dikerahkan lima menit kemudian.

CodeDeployDefault.ecscanary10Percent15Menit

Menggeser 10 persen lalu lintas pada kenaikan pertama. Sisa 90 persen di-deploy 15 menit kemudian.

CodeDeployDefault.ECS AllAtOnce

Menggeser semua lalu lintas ke wadah Amazon ECS yang diperbarui sekaligus.

Konfigurasi penerapan untuk penerapan AWS CloudFormation biru/hijau (Amazon ECS)

Saat Anda menerapkan ke platform komputasi Amazon ECS melalui penerapan AWS CloudFormation biru/hijau, konfigurasi penerapan menentukan cara lalu lintas dialihkan ke wadah Amazon ECS yang diperbarui. Anda dapat menggeser lalu lintas menggunakan konfigurasi canary, linear, atau all-at-oncedeployment. Untuk informasi selengkapnya, lihat Konfigurasi deployment.

Dengan penerapan AWS CloudFormation biru/hijau, Anda tidak dapat membuat konfigurasi canary atau penerapan linier kustom Anda sendiri. Untuk step-by-step petunjuk tentang penggunaan AWS CloudFormation untuk mengelola penerapan biru/hijau Amazon ECS Anda, lihat Mengotomatiskan penerapan biru/hijau ECS melalui penggunaan di Panduan Pengguna. CodeDeploy AWS CloudFormationAWS CloudFormation

catatan

Mengelola penyebaran biru/hijau Amazon ECS dengan tidak AWS CloudFormation tersedia di wilayah Eropa (Milan), Afrika (Cape Town), dan Asia Pasifik (Osaka).

Konfigurasi penerapan pada platform komputasi AWS Lambda

Saat Anda menerapkan ke platform komputasi AWS Lambda, konfigurasi penerapan menentukan cara lalu lintas dialihkan ke versi fungsi Lambda baru di aplikasi Anda. Anda dapat menggeser lalu lintas menggunakan konfigurasi canary, linear, atau all-at-oncedeployment. Untuk informasi selengkapnya, lihat Konfigurasi deployment.

Anda juga dapat membuat konfigurasi penyebaran kenari atau linier kustom Anda sendiri. Untuk informasi selengkapnya, lihat Create a Deployment Configuration.

Konfigurasi penerapan yang telah ditentukan sebelumnya untuk platform komputasi AWS Lambda

Tabel berikut mencantumkan konfigurasi standar yang tersedia untuk AWS Lambda penerapan.

Konfigurasi deployment Deskripsi

CodeDeployDefault. LambdaCanary10Persent5Menit

Menggeser 10 persen lalu lintas pada kenaikan pertama. Sisanya 90 persen dikerahkan lima menit kemudian.

CodeDeployDefault. LambdaCanary10Persent10Menit

Menggeser 10 persen lalu lintas pada kenaikan pertama. Sisanya 90 persen dikerahkan 10 menit kemudian.

CodeDeployDefault. LambdaCanary10Persent15Menit

Menggeser 10 persen lalu lintas pada kenaikan pertama. Sisa 90 persen di-deploy 15 menit kemudian.

CodeDeployDefault. LambdaCanary10Persent30 Menit

Menggeser 10 persen lalu lintas pada kenaikan pertama. Sisanya 90 persen dikerahkan 30 menit kemudian.

CodeDeployDefault. LambdaLinear10 PercentEvery 1 Menit

Menggeser 10 persen lalu lintas setiap menit sampai semua lalu lintas bergeser.

CodeDeployDefault. LambdaLinear10 PercentEvery 2Menit

Menggeser 10 persen lalu lintas setiap dua menit sampai semua lalu lintas bergeser.

CodeDeployDefault. LambdaLinear10 PercentEvery 3Menit

Menggeser 10 persen lalu lintas setiap tiga menit sampai semua lalu lintas bergeser.

CodeDeployDefault. LambdaLinear10 PercentEvery 10 Menit Menggeser 10 persen lalu lintas setiap 10 menit sampai semua lalu lintas bergeser.
CodeDeployDefault.LambdaAllAtOnce

Menggeser semua lalu lintas ke fungsi Lambda yang diperbarui sekaligus.

Topik