Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Hentikan beban kerja Amazon ECS dengan aman yang berjalan pada instans EC2
Pengurasan instans terkelola memfasilitasi penghentian instans Amazon EC2 yang anggun. Hal ini memungkinkan beban kerja Anda berhenti dengan aman dan dijadwal ulang ke instans non-terminating. Pemeliharaan dan pembaruan infrastruktur dilakukan tanpa khawatir akan gangguan pada beban kerja. Dengan menggunakan pengeringan instans terkelola, Anda menyederhanakan alur kerja manajemen infrastruktur yang memerlukan penggantian EC2 instans Amazon sambil memastikan ketahanan dan ketersediaan aplikasi.
Pengurasan instans terkelola Amazon ECS berfungsi dengan penggantian instans grup Auto EC2 Scaling Amazon. Berdasarkan penyegaran instans dan masa pakai instans maksimum, pelanggan dapat memastikan bahwa mereka tetap mematuhi OS terbaru dan mandat keamanan untuk kapasitas mereka.
Pengurasan instans terkelola hanya dapat digunakan dengan penyedia kapasitas Amazon ECS. Anda dapat mengaktifkan pengurasan instans terkelola saat membuat atau memperbarui penyedia kapasitas grup Amazon EC2 Auto Scaling menggunakan konsol Amazon ECS AWS CLI, atau SDK.
Peristiwa berikut dicakup oleh pengeringan instans terkelola Amazon ECS.
-
Penyegaran instans grup EC2 Auto Scaling Amazon - Gunakan penyegaran instans untuk melakukan penggantian bergulir EC2 instans Amazon Anda di grup Penskalaan EC2 Otomatis Amazon alih-alih melakukannya secara manual dalam batch. Ini berguna ketika Anda perlu mengganti sejumlah besar instance. Penyegaran instance dimulai melalui EC2 konsol Amazon atau
StartInstanceRefreshAPI. Pastikan Anda memilihReplaceperlindungan Scale-in saat meneleponStartInstanceRefreshjika Anda menggunakan proteksi terminasi terkelola. -
Masa pakai instans maksimum - Anda dapat menentukan masa pakai maksimum saat mengganti instans grup Amazon EC2 Auto Scaling. Hal ini berguna untuk menjadwalkan instance penggantian berdasarkan kebijakan keamanan internal atau kepatuhan.
-
Penskalaan grup Amazon EC2 Auto Scaling - Berdasarkan kebijakan penskalaan dan tindakan penskalaan terjadwal, grup Amazon Auto Scaling mendukung penskalaan EC2 otomatis instans. Dengan menggunakan grup EC2 Auto Scaling Amazon sebagai penyedia kapasitas Amazon ECS, Anda dapat menskalakan instans grup Amazon Auto Scaling saat EC2 tidak ada tugas yang berjalan di dalamnya.
-
Pemeriksaan kesehatan grup EC2 Auto Scaling Amazon - Grup Amazon Auto EC2 Scaling mendukung banyak pemeriksaan kesehatan untuk mengelola penghentian kejadian yang tidak sehat.
-
CloudFormation pembaruan tumpukan - Anda dapat menambahkan
UpdatePolicyatribut ke CloudFormation tumpukan Anda untuk melakukan pembaruan bergulir saat grup berubah. -
Penyeimbangan kembali kapasitas spot - Grup Amazon Auto EC2 Scaling mencoba mengganti Instans Spot secara proaktif yang memiliki risiko gangguan lebih tinggi berdasarkan pemberitahuan penyeimbangan kapasitas Amazon. EC2 Grup Amazon EC2 Auto Scaling menghentikan instans lama saat penggantian diluncurkan dan sehat. Pengurasan instans terkelola Amazon ECS menguras Instans Spot dengan cara yang sama seperti menguras Instans Non-Spot.
-
Gangguan spot - Instans Spot diakhiri dengan pemberitahuan dua menit. Pengurasan instans yang dikelola Amazon ECS menempatkan instance dalam status menguras sebagai respons.
Kait siklus hidup EC2 Auto Scaling EC2 Amazon Amazon dengan pengurasan instans terkelola
Kait siklus hidup grup Amazon EC2 Auto Scaling memungkinkan pelanggan membuat solusi yang dipicu oleh peristiwa tertentu dalam siklus hidup instance dan melakukan tindakan kustom saat peristiwa tertentu terjadi. Grup EC2 Auto Scaling Amazon memungkinkan hingga 50 kait. Beberapa kait terminasi dapat ada dan dilakukan secara paralel, dan grup Amazon EC2 Auto Scaling menunggu semua kait selesai sebelum mengakhiri instance.
Selain penghentian kait yang dikelola Amazon ECS, Anda juga dapat mengonfigurasi kait penghentian siklus hidup Anda sendiri. Kait siklus hidup memilikidefault action, dan sebaiknya continue setelan sebagai default untuk memastikan kait lain, seperti hook terkelola Amazon ECS, tidak terpengaruh oleh kesalahan apa pun dari kait khusus.
Jika Anda telah mengonfigurasi hook siklus hidup penghentian grup Amazon EC2 Auto Scaling dan juga mengaktifkan pengurasan instans terkelola Amazon ECS, kedua kait siklus hidup akan dilakukan. Pengaturan waktu relatif, bagaimanapun, tidak dijamin. Kait siklus hidup memiliki default action pengaturan untuk menentukan tindakan yang akan diambil saat batas waktu berlalu. Jika terjadi kegagalan, kami sarankan untuk menggunakan continue sebagai hasil default di kait khusus Anda. Ini memastikan kait lain, terutama kait terkelola Amazon ECS, tidak terpengaruh oleh kesalahan apa pun di hook siklus hidup kustom Anda. Hasil alternatif abandon menyebabkan semua kait lainnya dilewati dan harus dihindari. Untuk informasi selengkapnya tentang kait siklus hidup grup EC2 Auto Scaling Amazon, lihat kait siklus hidup Amazon Amazon Auto EC2 Scaling di Panduan Pengguna Amazon Amazon EC2 Auto Scaling. EC2 EC2
Tugas dan pengeringan instans terkelola
Pengurasan instans terkelola Amazon ECS menggunakan fitur pengeringan yang ada yang ditemukan dalam instance container. Fitur pengurasan instans kontainer melakukan penggantian dan penghentian untuk tugas replika yang termasuk dalam layanan Amazon ECS. Tugas mandiri, seperti yang dipanggil olehRunTask, yang berada dalam RUNNING status PENDING atau tetap tidak terpengaruh. Anda harus menunggu ini untuk menyelesaikan atau menghentikannya secara manual. Instance kontainer tetap dalam DRAINING status sampai semua tugas dihentikan atau 48 jam telah berlalu. Tugas daemon adalah yang terakhir berhenti setelah semua tugas replika berhenti.
Pengurasan instans terkelola dan perlindungan terminasi terkelola
Pengurasan instans terkelola berfungsi bahkan jika penghentian terkelola dinonaktifkan. Untuk informasi tentang perlindungan penghentian terkelola, lihatKontrol instans Amazon ECS berakhir.
Tabel berikut merangkum perilaku untuk kombinasi yang berbeda dari terminasi terkelola dan pengeringan terkelola.
| Pengakhiran terkelola | Pengeringan terkelola | Hasil |
|---|---|---|
|
Diaktifkan |
Diaktifkan | Amazon ECS melindungi EC2 instans Amazon yang menjalankan tugas agar tidak dihentikan oleh peristiwa penskalaan. Setiap instance yang mengalami penghentian, seperti yang tidak memiliki perlindungan terminasi yang ditetapkan, telah menerima interupsi Spot, atau dipaksa oleh penyegaran instans akan terkuras dengan baik. |
|
Nonaktif |
Diaktifkan | Amazon ECS tidak melindungi EC2 instans Amazon yang menjalankan tugas agar tidak diskalakan. Namun, setiap contoh yang sedang dihentikan akan dikeringkan dengan baik. |
|
Diaktifkan |
Dinonaktifkan | Amazon ECS melindungi EC2 instans Amazon yang menjalankan tugas agar tidak dihentikan oleh peristiwa penskalaan. Namun, instance masih dapat dihentikan oleh gangguan Spot atau penyegaran instans paksa, atau jika mereka tidak menjalankan tugas apa pun. Amazon ECS tidak melakukan pengeringan yang baik untuk instans ini, dan meluncurkan tugas layanan pengganti setelah berhenti. |
|
Nonaktif |
Nonaktif | EC2 Instans Amazon dapat diskalakan atau dihentikan kapan saja, bahkan jika mereka menjalankan tugas Amazon ECS. Amazon ECS akan meluncurkan tugas layanan pengganti setelah berhenti. |
Pengurasan instans terkelola dan pengeringan Instans Spot
Dengan pengeringan Instans Spot, Anda dapat menyetel variabel lingkungan ECS_ENABLE_SPOT_INSTANCE_DRAINING di agen Amazon ECS yang memungkinkan Amazon ECS menempatkan instans dalam status pengurasan sebagai respons terhadap gangguan Spot dua menit. Pengurasan instans terkelola Amazon ECS memfasilitasi penutupan instans EC2 Amazon yang mengalami penghentian secara anggun karena berbagai alasan, bukan hanya gangguan Spot. Misalnya, Anda dapat menggunakan penyeimbangan ulang kapasitas EC2 Auto Scaling EC2 Amazon Amazon untuk secara proaktif mengganti Instans Spot dengan risiko gangguan yang tinggi, dan pengurasan instans terkelola melakukan shutdown yang anggun pada Instans Spot yang diganti. Saat menggunakan pengurasan instans terkelola, Anda tidak perlu mengaktifkan pengurasan instans Spot secara terpisah, sehingga ECS_ENABLE_SPOT_INSTANCE_DRAINING data pengguna grup Auto EC2 Scaling Amazon berlebihan. Untuk informasi selengkapnya tentang pengeringan Instans Spot, lihatInstans Spot.
Cara kerja pengeringan instans terkelola EventBridge
Acara pengeringan instans terkelola Amazon ECS dipublikasikan ke Amazon EventBridge, dan Amazon ECS membuat aturan EventBridge terkelola di bus default akun Anda untuk mendukung pengeringan instans terkelola. Anda dapat memfilter peristiwa ini ke AWS layanan lain seperti Lambda, Amazon SNS, dan Amazon SQS untuk memantau dan memecahkan masalah.
-
Amazon EC2 Amazon EC2 Auto Scaling mengirimkan peristiwa ke EventBridge saat hook siklus hidup dipanggil.
-
Pemberitahuan gangguan spot dipublikasikan ke. EventBridge
-
Amazon ECS menghasilkan pesan kesalahan yang dapat Anda ambil melalui konsol Amazon ECS dan. APIs
-
EventBridge memiliki mekanisme coba lagi yang dibangun sebagai mitigasi untuk kegagalan sementara.
Pemecahan masalah pengurasan instans Amazon ECS Terkelola
Anda mungkin perlu memecahkan masalah dengan pengeringan instans terkelola. Berikut ini adalah contoh masalah dan resolusi yang mungkin Anda temui saat menggunakannya.
Instans tidak berakhir setelah melebihi masa pakai instans maksimum saat menggunakan penskalaan otomatis.
Jika instans Anda tidak berakhir bahkan setelah mencapai dan melebihi masa pakai instans maksimum saat menggunakan grup penskalaan otomatis, itu mungkin karena mereka dilindungi dari penskalaan. Anda dapat mematikan penghentian terkelola dan mengizinkan pengeringan terkelola untuk menangani daur ulang instans.
Perilaku menguras untuk Instans Terkelola Amazon ECS
Instans Terkelola Amazon ECS menerapkan proses pengeringan dan penghentian canggih yang memastikan transisi beban kerja yang anggun sekaligus mengoptimalkan biaya dan menjaga kesehatan sistem. Sistem terminasi menyediakan tiga jalur keputusan yang berbeda misalnya penghentian, masing-masing dengan karakteristik waktu yang berbeda dan profil dampak pelanggan.
Jalur keputusan penghentian
Semua jalur penghentian berkumpul pada mekanisme eksekusi yang sama melalui hook siklus hidup POST_DEREGISTER yang memicu API Node Manager untuk penghentian instans Amazon segera. ReleaseNode EC2
- Penghentian yang diprakarsai pelanggan
-
Memberikan kontrol langsung atas penghapusan instance saat Anda perlu segera menghapus instance kontainer dari layanan. Anda menjalankan DeregisterContainerInstance API dengan flag force disetel ke true, yang menunjukkan bahwa penghentian segera diperlukan meskipun ada beban kerja yang berjalan.
- Penghentian idle yang diprakarsai sistem
-
Menerapkan pengoptimalan biaya melalui deteksi idle cerdas yang mengidentifikasi instans yang tidak lagi melayani beban kerja. Elastic Workload Service (EWS) mengimplementasikan algoritme deteksi idle canggih yang memantau pemanfaatan instans dan memulai penghentian untuk instance yang tetap menganggur selama periode yang dapat dikonfigurasi.
- Penghentian penyegaran infrastruktur
-
Menerapkan manajemen infrastruktur proaktif melalui kebijakan peluruhan alami Node Manager, di mana instance disegarkan secara berkala untuk memastikan mereka berjalan pada versi platform terbaru dan mempertahankan postur keamanan. Node Manager mengimplementasikan kebijakan time-to-live (TTL) yang memulai penghentian yang baik untuk instans yang telah mencapai masa operasional maksimumnya.
Pengeringan yang anggun dan migrasi beban kerja
Sistem pengeringan yang anggun menerapkan koordinasi canggih dengan manajemen layanan Amazon ECS untuk memastikan bahwa tugas yang dikelola layanan dimigrasikan dengan benar dari instans yang dijadwalkan untuk penghentian.
Koordinasi pengurasan tugas layanan
Saat instance beralih ke status DRAINING, penjadwal Amazon ECS secara otomatis berhenti menempatkan tugas baru pada instans sambil menerapkan prosedur shutdown yang anggun untuk tugas layanan yang ada. Pengurasan tugas layanan mencakup koordinasi dengan strategi penyebaran layanan, persyaratan pemeriksaan kesehatan, dan preferensi pengeringan Anda untuk memastikan waktu migrasi dan tingkat keberhasilan yang optimal.
Penanganan tugas mandiri
Tugas mandiri memerlukan penanganan yang berbeda karena tidak mendapat manfaat dari manajemen layanan otomatis. Sistem mengevaluasi karakteristik tugas mandiri termasuk perkiraan durasi tugas, analisis probabilitas penyelesaian, dan penilaian dampak pelanggan. Strategi penyelesaian yang anggun memungkinkan tugas mandiri diselesaikan secara alami selama masa tenggang yang diperpanjang, sementara penghentian paksa memastikan penyegaran infrastruktur terjadi dalam jangka waktu yang dapat diterima ketika tugas belum selesai secara alami.
Strategi penyelesaian dua fase
Sistem terminasi menerapkan pendekatan dua fase yang menyeimbangkan kontinuitas beban kerja dengan persyaratan manajemen infrastruktur.
Fase 1: Periode penyelesaian yang anggun
Selama fase ini, sistem menerapkan strategi pengeringan anggun yang memprioritaskan kontinuitas beban kerja. Tugas layanan dikeringkan dengan baik melalui proses penjadwalan Amazon ECS normal, tugas mandiri terus berjalan dan dapat diselesaikan secara alami, dan sistem memantau semua tugas untuk mencapai status berhenti melalui proses penyelesaian alami.
Fase 2: Penegakan batas waktu yang sulit
Ketika penyelesaian yang anggun tidak mencapai tujuan penghentian dalam jangka waktu yang dapat diterima, sistem menerapkan penegakan tenggat waktu yang sulit. Batas waktu yang sulit biasanya ditetapkan untuk menguras waktu inisiasi ditambah tujuh hari, memberikan waktu yang cukup besar untuk penyelesaian yang anggun sambil mempertahankan persyaratan operasional. Penegakan hukum mencakup pemanggilan otomatis prosedur deregistrasi paksa dan penghentian segera semua tugas yang tersisa terlepas dari status penyelesaiannya.
Koordinasi lintas layanan dan manajemen negara
Proses penghentian memerlukan koordinasi yang canggih antara Cluster Management Backend Service (CMBS) dan Node Manager untuk memastikan deregistrasi instans container dan pembersihan sumber daya EC2 Amazon terjadi dalam urutan yang tepat sambil mempertahankan konsistensi.
Eksekusi kait POST_DEREGISTER
Kait siklus hidup POST_DEREGISTER mewakili titik konvergensi di mana ketiga jalur keputusan penghentian menjalankan logika pembersihan yang sama. Saat instance container mencapai status DEREGISTERED, hook POST_DEREGISTER secara otomatis memicu API Node Manager untuk memulai operasi pembersihan sumber daya Amazon ReleaseNode . EC2 Implementasi hook mencakup penanganan kesalahan canggih untuk berbagai skenario kegagalan termasuk masalah konektivitas jaringan, masalah ketersediaan EC2 layanan Amazon, dan kegagalan koordinasi antar komponen sistem.
Pembersihan EC2 sumber daya Amazon dan deallokasi
Proses penghentian EC2 instans Amazon menerapkan koordinasi komprehensif dengan AWS layanan untuk memastikan bahwa sumber daya komputasi yang mendasarinya ditangani dengan benar. Ini termasuk pembersihan antarmuka jaringan untuk mencegah kebocoran sumber daya, manajemen catatan database dengan jejak audit yang komprehensif, dan penanganan kesalahan dan mekanisme pemulihan yang sesuai untuk berbagai skenario kegagalan.