

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

# Menguras instans kontainer Amazon ECS
<a name="container-instance-draining"></a>

Mungkin ada kalanya Anda perlu menghapus instance kontainer dari cluster Anda, misalnya, untuk melakukan pembaruan sistem atau untuk menurunkan kapasitas cluster. Amazon ECS menyediakan kemampuan untuk mentransisi instance kontainer ke `DRAINING` status. Ini disebut sebagai *pengurasan instans kontainer*. Saat instance kontainer disetel ke`DRAINING`, Amazon ECS mencegah tugas baru dijadwalkan untuk penempatan pada instans kontainer. 

## Perilaku menguras layanan
<a name="draining-service-behavior"></a>

Tugas yang merupakan bagian dari layanan yang ada di status `PENDING` dihentikan dengan segera. Jika terdapat kapasitas instans kontainer dalam klaster, penjadwal layanan akan memulai tugas penggantian. Jika kapasitas instans kontainer tidak cukup, pesan peristiwa layanan yang menunjukkan masalah tersebut akan dikirim.

Tugas yang merupakan bagian dari layanan pada instans kontainer yang berada di status `RUNNING` dialihkan ke status `STOPPED`. Penjadwal layanan mencoba mengganti tugas sesuai dengan jenis penerapan layanan dan parameter konfigurasi penerapan, `minimumHealthyPercent` dan`maximumPercent`. Untuk informasi selengkapnya, lihat [Layanan-layanan Amazon ECS](ecs_services.md) dan [Parameter definisi layanan Amazon ECS](service_definition_parameters.md).
+ Jika `minimumHealthyPercent` di bawah 100%, penjadwal dapat mengabaikan `desiredCount` untuk sementara selama penggantian tugas. Misalnya, `desiredCount` adalah empat tugas, setidaknya 50% mengizinkan penjadwal menghentikan dua tugas yang ada sebelum memulai dua tugas baru. Jika minimumnya adalah 100%, penjadwal layanan tidak dapat menghapus tugas yang ada hingga tugas penggantian dianggap sehat. Jika tugas untuk layanan yang tidak menggunakan penyeimbang beban berada di status `RUNNING`, maka mereka dianggap sehat. Tugas untuk layanan yang menggunakan penyeimbang beban dianggap sehat jika berada di status `RUNNING` dan instans kontainer tempat mereka di-host dilaporkan dalam kondisi baik oleh penyeimbang beban.
**penting**  
Jika Anda menggunakan Instans Spot dan `minimumHealthyPercent` lebih besar dari atau sama dengan 100%, maka layanan tidak akan memiliki cukup waktu untuk mengganti tugas sebelum Instans Spot dihentikan.
+ `maximumPercent`Parameter mewakili batas atas jumlah tugas yang sedang berjalan selama penggantian tugas, yang memungkinkan Anda menentukan ukuran batch pengganti. Contohnya, jika `desiredCount` dari empat tugas, maksimal 200% memulai empat tugas baru sebelum menghentikan empat tugas yang akan dikuras (asalkan sumber daya klaster yang diperlukan untuk melakukan ini tersedia). Jika maksimumnya adalah 100%, maka tugas penggantian tidak dapat dimulai hingga tugas pengeringan berhenti.
**penting**  
Jika `maximumPercent` keduanya `minimumHealthyPercent` dan 100%, maka layanan tidak dapat menghapus tugas yang ada, dan juga tidak dapat memulai tugas penggantian. Ini mencegah pengeringan instance kontainer yang berhasil dan mencegah penerapan baru.

## Perilaku menguras untuk tugas mandiri
<a name="draining-standalone-behavior"></a>

Setiap tugas mandiri di status `PENDING` atau `RUNNING` tidak terpengaruh; Anda harus menunggu tugas tersebut berhenti sendiri atau menghentikannya secara manual. Instance kontainer akan tetap dalam `DRAINING` status.

## Perilaku menguras tenaga untuk Instans Terkelola Amazon ECS
<a name="managed-instances-draining-behavior"></a>

Penghentian Instans Terkelola Amazon ECS memastikan transisi beban kerja yang lancar sekaligus mengoptimalkan biaya dan menjaga kesehatan sistem. Sistem terminasi menyediakan tiga jalur keputusan yang berbeda misalnya penghentian, masing-masing dengan karakteristik waktu dan profil dampak pelanggan yang berbeda.

Customer-initiated penghentian  
Menyediakan kontrol langsung atas penghapusan instans saat Anda perlu menghapus instans kontainer dari layanan segera. Anda menjalankan `deregister-container-instance` dengan parameter `force` permintaan disetel ke true. Ini berarti bahwa penghentian segera diperlukan meskipun ada beban kerja yang sedang berjalan.

System-initiated penghentian idle  
Instans Terkelola Amazon ECS terus memantau dan secara proaktif mengoptimalkan biaya dengan menghentikan instans kontainer Amazon ECS yang tidak menjalankan tugas apa pun. ECS menggunakan penundaan heuristik untuk memberi instans kontainer kesempatan untuk memperoleh tugas yang baru diluncurkan sebelum dihentikan. Ini dapat disesuaikan dengan parameter konfigurasi penyedia kapasitas Instans Terkelola `scaleInAfter` Amazon ECS.

Penghentian penyegaran infrastruktur  
Instans Terkelola Amazon ECS secara otomatis mengelola dan memperbarui perangkat lunak pada instans kontainer terkelola untuk memastikan keamanan dan kepatuhan sambil mempertahankan ketersediaan beban kerja. Untuk informasi selengkapnya, lihat menam [ bal di Instans Terkelola Amazon ECS. ](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/managed-instances-patching.html)

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 yang anggun yang memprioritaskan kontinuitas beban kerja. Tugas layanan dikeringkan dengan anggun melalui proses penjadwalan Amazon ECS normal. Tugas mandiri terus berjalan karena mungkin selesai secara alami. Sistem memantau semua tugas untuk mencapai keadaan berhenti melalui proses penyelesaian alami.

**Fase 2: Penegakan tenggat waktu yang sulit**  
Ketika penyelesaian yang anggun tidak mencapai tujuan penghentian dalam jangka waktu yang dapat diterima, sistem menerapkan penegakan tenggat waktu yang keras. Tenggat waktu yang sulit biasanya diatur untuk menguras waktu inisiasi ditambah tujuh hari, memberikan waktu yang cukup besar untuk penyelesaian yang anggun sambil mempertahankan persyaratan operasional. Penegakan termasuk prosedur deregistrasi paksa otomatis dan penghentian segera semua tugas yang tersisa terlepas dari status penyelesaian.

Sebuah instans kontainer telah selesai menguras ketika semua tugas yang berjalan di ditransisi ke status `STOPPED`. Instans kontainer tetap dalam status `DRAINING` hingga diaktifkan kembali atau dihapus. Anda dapat memverifikasi status tugas pada instance kontainer dengan menggunakan [ ListTasks ](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListTasks.html) operasi dengan `containerInstance` parameter untuk mendapatkan daftar tugas pada instans diikuti oleh [ DescribeTasks ](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html) operasi dengan Nama Sumber Daya Amazon (ARN) atau ID setiap tugas untuk memverifikasi status tugas.

Ketika Anda merasa instans kontainer siap untuk memulai tugas menghosting kembali, maka Anda mengubah status instans kontainer dari `DRAINING` ke `ACTIVE`. Penjadwal layanan Amazon ECS kemudian mempertimbangkan instance kontainer untuk penempatan tugas lagi.

## Prosedur
<a name="drain-instances"></a>

Langkah-langkah berikut dapat digunakan untuk mengatur instance kontainer ke pengeringan menggunakan yang baru Konsol Manajemen AWS.

Anda juga dapat menggunakan tindakan [ UpdateContainerInstancesState ](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_UpdateContainerInstancesState.html) API atau [ perintah ](https://docs.aws.amazon.com/cli/latest/reference/ecs/update-container-instances-state.html) update-container-instances-state untuk mengubah status instance container menjadi. `DRAINING`

**Konsol Manajemen AWS**

1. Buka konsol di [ https://console.aws.amazon.com/ecs/v2](https://console.aws.amazon.com/ecs/v2).

1. Pada panel navigasi, silakan pilih **Klaster**.

1. Pada ** halaman ** Cluster, pilih cluster yang menghosting instans Anda.

1. Pada {{name}} ** halaman ** Cluster:, pilih ** tab ** Infrastruktur. Kemudian, di bawah ** Container instance, ** pilih kotak centang untuk setiap instance kontainer yang ingin Anda tiriskan.

1. Pilih T ** indakan**, ** Tiriskan**.