Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Untuk tugas yang menggunakan jenis EC2 peluncuran, Amazon ECS harus menentukan tempat untuk menempatkan tugas berdasarkan persyaratan yang ditentukan dalam definisi tugas, seperti CPU dan memori. Demikian pula, saat Anda menurunkan jumlah tugas, Amazon ECS harus menentukan tugas mana yang akan dihentikan. Anda dapat menerapkan strategi dan batasan penempatan tugas untuk menyesuaikan cara Amazon ECS menempatkan dan mengakhiri tugas.
Strategi penempatan tugas default bergantung pada apakah Anda menjalankan tugas secara manual (tugas mandiri) atau dalam layanan. Untuk tugas yang berjalan sebagai bagian dari ECS layanan Amazon, strategi penempatan tugas spread
menggunakanattribute:ecs.availability-zone
. Tidak ada batasan penempatan tugas default untuk tugas yang tidak ada di layanan. Untuk informasi selengkapnya, lihat Jadwalkan wadah Anda di Amazon ECS.
catatan
Strategi penempatan tugas adalah upaya terbaik. Amazon ECS masih mencoba untuk menempatkan tugas bahkan ketika opsi penempatan yang paling optimal tidak tersedia. Namun, kendala penempatan tugas bersifat mengikat, dan mereka dapat mencegah penempatan tugas.
Anda dapat menggunakan strategi dan kendala penempatan tugas bersama-sama. Misalnya, Anda dapat menggunakan strategi penempatan tugas dan kendala penempatan tugas untuk mendistribusikan tugas di tugas Availability Zone dan paket bin berdasarkan memori dalam setiap Availability Zone, tetapi hanya untuk instans G2.
Saat Amazon ECS menempatkan tugas, Amazon menggunakan proses berikut untuk memilih instance container:
-
Identifikasi instance kontainer yang memenuhiCPU,GPU, memori, dan persyaratan port dalam definisi tugas.
-
Identifikasi instance kontainer yang memenuhi kendala penempatan tugas.
-
Identifikasi instance kontainer yang memenuhi strategi penempatan tugas.
-
Pilih instance kontainer untuk penempatan tugas.
Anda menentukan strategi penempatan tugas dalam definisi layanan, atau definisi tugas menggunakan placementStrategy
parameter.
"placementStrategy": [
{
"field": "The field to apply the placement strategy against",
"type": "The placement strategy to use"
}
]
Anda dapat menentukan strategi saat menjalankan task (RunTask), membuat layanan baru (CreateService), atau memperbarui layanan yang ada (UpdateService).
Tabel berikut menjelaskan jenis dan bidang yang tersedia.
jenis | Nilai bidang yang valid |
---|---|
binpack Tugas ditempatkan pada instance kontainer sehingga meninggalkan paling sedikit jumlah yang tidak digunakan CPU atau memori. Strategi ini meminimalkan jumlah instans kontainer yang digunakan. Ketika strategi ini digunakan dan tindakan scale-in diambil, Amazon ECS menghentikan tugas. Hal ini dilakukan berdasarkan jumlah sumber daya yang tersisa pada instance container setelah tugas dihentikan. Instance kontainer yang memiliki sumber daya paling banyak yang tersisa setelah penghentian tugas telah menghentikan tugas tersebut. |
|
random Tugas ditempatkan secara acak. |
Tidak digunakan |
spread Tugas ditempatkan secara merata berdasarkan nilai yang ditentukan. Tugas layanan tersebar berdasarkan tugas dari layanan tersebut. Tugas mandiri tersebar berdasarkan tugas dari grup tugas yang sama. Untuk informasi selengkapnya tentang grup tugas, lihat ECSTugas Amazon terkait grup .Saat |
|
Strategi penempatan tugas dapat diperbarui untuk layanan yang ada juga. Untuk informasi selengkapnya, lihat Bagaimana Amazon ECS menempatkan tugas pada instance kontainer.
Anda dapat membuat strategi penempatan tugas yang menggunakan beberapa strategi dengan membuat array strategi sesuai urutan yang Anda inginkan. Misalnya, jika Anda ingin menyebarkan tugas di seluruh Availability Zones dan kemudian bin pack task berdasarkan memori dalam setiap Availability Zone, tentukan strategi Availability Zone yang diikuti oleh strategi memori. Misalnya strategi, lihatContoh strategi penempatan ECS tugas Amazon.