Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Deployment pemutus sirkuit
Transisi penyebaran ke keadaan gagal ketika logika pemutus sirkuit penyebaran menentukan bahwa tugas tidak dapat mencapai kondisi stabil.
Logika pemutus sirkuit penyebaran memiliki opsi yang secara otomatis akan memutar kembali penyebaran yang gagal ke status kerja terakhir.
Pertimbangkan hal berikut saat Anda menggunakan metode pemutus sirkuit deployment pada layanan.
-
Jika deployment layanan memiliki setidaknya satu tugas yang berhasil dijalankan saat layanan diperbarui, maka logika pemutus sirkuit tidak akan dimulai, terlepas dari deployment yang memiliki tugas gagal sebelumnya atau di future.
-
DescribeServices
Respon memberikan wawasan tentang keadaan penyebaran,rolloutState
danrolloutStateReason
. Saat deployment baru dimulai, status peluncuran dimulai dalam statusIN_PROGRESS
. Saat layanan mencapai kondisi stabil, status peluncuran bertransisi keCOMPLETED
. Jika layanan gagal mencapai kondisi stabil dan pemutus sirkuit dinyalakan, maka deployment akan beralih keFAILED
status. Sebuah deployment dalamFAILED
status tidak meluncurkan tugas baru apa pun. -
Selain kejadian perubahan status deployment layanan yang dikirim Amazon ECS untuk deployment yang telah dimulai dan telah selesai, Amazon ECS juga mengirimkan kejadian saat deployment dengan pemutus sirkuit yang diaktifkan gagal. Kejadian ini menyediakan detail tentang mengapa deployment gagal atau jika deployment dimulai karena rollback. Untuk informasi selengkapnya, lihat Peristiwa perubahan status deployment layanan.
-
Jika deployment baru dimulai karena deployment yang sebelumnya gagal dan rollback terjadi, maka
reason
bidang kejadian perubahan status deployment layanan menunjukkan bahwa deployment dimulai karena rollback. -
Pemutus sirkuit deployment hanya didukung untuk layanan Amazon ECS yang menggunakan pengendali deployment pembaruan bergulir (
ECS
). -
Anda harus menggunakan konsol Amazon ECS baru, atauAWS CLI saat Anda menggunakan pemutus sirkuit penerapan dengan CloudWatch opsi. Untuk informasi lebih lanjut, lihatBuat layanan menggunakan parameter yang ditentukan dan buat-layanan di AWS Command Line InterfaceReferensi.
create-service
AWS CLIContoh berikut menunjukkan cara membuat layanan Linux saat pemutus sirkuit deployment digunakan dengan rollback.
aws ecs create-service \ --service-name
MyService
\ --deployment-controller type=ECS
\ --desired-count2
\ --deployment-configuration "deploymentCircuitBreaker={enable=true
,rollback=true
}" \ --task-definitionsample-fargate:1
\ --launch-typeFARGATE
\ --platform-osLINUX
\ --platform-version1.4.0
\ --network-configuration "awsvpcConfiguration={subnets=[subnet-12344321
],securityGroups=[sg-12344321
],assignPublicIp=ENABLED
}"
Ambang batas kegagalan
Pemutus sirkuit penyebaran menghitung nilai ambang batas, dan kemudian menggunakan nilai untuk menentukan kapan harus memindahkan penyebaran keFAILED
keadaan.
Pemutus sirkuit penyebaran memiliki ambang minimum 10 dan ambang batas maksimum 200. dan menggunakan nilai dalam rumus berikut untuk menentukan kegagalan penyebaran.
Minimum threshold <= 0.5 * desired task count
=> maximum threshold
Ketika hasil perhitungan kurang dari minimum 10, ambang kegagalan diatur ke 10. Ketika hasil perhitungan lebih besar dari maksimum 200, ambang kegagalan diatur ke 200.
catatan
Anda tidak dapat mengubah salah satu nilai ambang batas.
Ada dua tahap untuk pemeriksaan status penyebaran.
-
Pemutus sirkuit penyebaran memonitor tugas-tugas yang merupakan bagian dari penyebaran dan memeriksa tugas-tugas yang ada di
RUNNING
negara bagian. Penjadwal mengabaikan kriteria kegagalan ketika tugas dalam penyebaran saat ini dalamRUNNING
keadaan dan melanjutkan ke tahap berikutnya. Ketika tugas gagal mencapai diRUNNING
negara bagian, pemutus sirkuit penyebaran meningkatkan jumlah kegagalan per satu. Ketika jumlah kegagalan sama dengan ambang batas, penyebaran ditandai sebagaiFAILED
. -
Tahap ini dimasukkan ketika ada satu tugas lagi di
RUNNING
negara bagian. Pemutus sirkuit penyebaran melakukan pemeriksaan kesehatan pada sumber daya berikut untuk tugas-tugas dalam penyebaran saat ini:-
Penyeimbang beban Elastic Load Balancing
-
AWS Cloud Map layanan
-
Pemeriksaan kondisi kontainer Amazon ECS
Ketika pemeriksaan kesehatan gagal untuk tugas tersebut, pemutus sirkuit penyebaran meningkatkan jumlah kegagalan satu per satu. Ketika jumlah kegagalan sama dengan ambang batas, penyebaran ditandai sebagai
FAILED
. -
Tabel berikut menunjukkan beberapa contoh.
Hitungan tugas yang diinginkan | Perhitungan | Ambang |
---|---|---|
1 |
|
10 (nilai yang dihitung kurang dari minimum) |
25 |
|
13 (nilai dibulatkan ke atas) |
400 |
|
200 |
800 |
|
200 (nilai yang dihitung lebih besar dari maksimum) |
Untuk contoh tambahan tentang cara menggunakan opsi rollback, lihat Mengumumkan pemutus sirkuit penyebaran Amazon ECS