View a markdown version of this page

Pengait siklus hidup untuk penerapan layanan Amazon ECS - Amazon Elastic Container Service

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

Pengait siklus hidup untuk penerapan layanan Amazon ECS

Saat penerapan dimulai, proses berlangsung melalui tahapan siklus hidup. Setiap tahap dapat berada dalam keadaan seperti IN_PROGRESS atauSUCCEEDED. Anda dapat mengonfigurasi kait siklus hidup pada tahapan tertentu untuk menjalankan logika kustom atau memperkenalkan titik keputusan sebelum penerapan berlangsung. Amazon ECS mendukung dua jenis kait siklus hidup:

Pengait lambda

Amazon ECS memanggil fungsi Lambda pada tahap tertentu dari penerapan. Fungsi Anda berisi logika kustom Anda dan harus mengembalikan objek JSON yang berisi a hookStatus ofSUCCEEDED,FAILED, atau IN_PROGRESS untuk memberi tahu Amazon ECS cara melanjutkan. Anda dapat menggunakan kait ini untuk menjalankan pengujian validasi, menerapkan kebijakan tata kelola, atau menerapkan langkah-langkah persetujuan khusus sebelum penerapan dilanjutkan. Untuk informasi selengkapnya, lihat Pengait lambda untuk penerapan layanan Amazon ECS.

Jeda kait

Amazon ECS menjeda penerapan pada tahap siklus hidup yang dikonfigurasi dan menunggu Anda memanggil ContinueServiceDeployment API untuk melanjutkan atau memutar kembali. Saat dijeda, Anda dapat menjalankan alur kerja Anda sendiri secara eksternal, seperti persetujuan manual, pengujian integrasi dengan alat yang ada, pemeriksaan kesiapan operasional, atau CI/CD langkah-langkah pipeline. Untuk informasi selengkapnya, lihat Jeda kait untuk penerapan layanan Amazon ECS.

Anda dapat mengonfigurasi kait Lambda dan kait jeda pada tahap siklus hidup yang sama. Kedua kait harus selesai sebelum penerapan berlanjut ke tahap berikutnya.

Detail kait siklus hidup

Saat kait aktif selama penerapan, Anda dapat melihat statusnya dengan memanggilDescribeServiceDeployments. Respons mencakup lifecycleHookDetails array dengan bidang berikut untuk setiap hook aktif:

Bidang Deskripsi
hookId Pengidentifikasi unik untuk eksekusi kait ini. Gunakan nilai ini saat memanggil ContinueServiceDeployment kait jeda.
targetType Jenis kait: AWS_LAMBDA atauPAUSE.
targetArn ARN dari target kait. Untuk kait Lambda, ini adalah fungsi Lambda ARN. Untuk kait jeda, bidang ini tidak disetel.
status Status kait saat ini:AWAITING_ACTION,, IN_PROGRESSSUCCEEDED,FAILED, atauTIMED_OUT.
expiresAt Tanggal dan waktu saat kait berakhir. (Contoh: 2026-05-06T12:06:49-07:00)
timeoutAction Tindakan yang dilakukan Amazon ECS saat waktu kait habis: ROLLBACK atauCONTINUE.

Kategori tahap siklus hidup

Tahap siklus hidup terbagi dalam dua kategori:

  1. Tahap pemanggilan tunggal - Amazon ECS memanggil tahapan ini hanya sekali selama penyebaran layanan:

    • RECONCILE_SERVICE

    • PRE_SCALE_UP

    • POST_SCALE_UP

    • TEST_TRAFFIC_SHIFT

    • POST_TEST_TRAFFIC_SHIFT

    • POST_PRODUCTION_TRAFFIC_SHIFT

  2. Tahap pemanggilan berulang - Amazon ECS dapat memanggil tahapan ini beberapa kali selama penyebaran layanan. Untuk penerapan linear dan canary, tahapan ini dipanggil pada setiap langkah pergeseran lalu lintas:

    • PRE_PRODUCTION_TRAFFIC_SHIFT

    • PRODUCTION_TRAFFIC_SHIFT

catatan

Pause hook tidak dapat dikonfigurasi pada TEST_TRAFFIC_SHIFT atau PRODUCTION_TRAFFIC_SHIFT karena tahapan ini juga dipanggil selama rollback. Menjeda selama rollback akan membutuhkan ContinueServiceDeployment panggilan tambahan untuk menyelesaikan rollback.

Tahapan yang didukung berdasarkan jenis kait

Tahap siklus hidup Pengait lambda Jeda kait
RECONCILE_SERVICE Ya Ya
PRE_SCALE_UP Ya Ya
POST_SCALE_UP Ya Ya
TEST_TRAFFIC_SHIFT Ya Tidak
POST_TEST_TRAFFIC_SHIFT Ya Ya
PRE_PRODUCTION_TRAFFIC_SHIFT Ya Ya
PRODUCTION_TRAFFIC_SHIFT Ya Tidak
POST_PRODUCTION_TRAFFIC_SHIFT Ya Ya