Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Secara otomatis mengelola kapasitas Amazon ECS dengan penskalaan otomatis cluster
Amazon ECS dapat mengelola penskalaan EC2 instans Amazon yang terdaftar ke klaster Anda. Ini disebut sebagai penskalaan otomatis cluster Amazon ECS. Anda mengaktifkan penskalaan terkelola saat membuat penyedia kapasitas grup Amazon ECS Amazon EC2 Auto Scaling. Kemudian, Anda menetapkan persentase target (thetargetCapacity) untuk pemanfaatan instans di grup Amazon EC2 Auto Scaling ini. Amazon ECS membuat dua CloudWatch metrik khusus dan kebijakan penskalaan pelacakan target untuk grup Amazon Auto Scaling EC2 Anda. Amazon ECS kemudian mengelola tindakan scale-in dan scale-out berdasarkan pemanfaatan sumber daya yang digunakan tugas Anda.
Untuk setiap penyedia kapasitas grup EC2 Auto Scaling Amazon yang terkait dengan klaster, Amazon ECS membuat dan mengelola sumber daya berikut:
-
CloudWatch Alarm nilai metrik rendah
-
CloudWatch Alarm nilai metrik tinggi
-
Kebijakan penskalaan pelacakan target
catatan
Amazon ECS membuat kebijakan penskalaan pelacakan target dan menempelkannya ke grup Amazon Auto Scaling. EC2 Untuk memperbarui kebijakan penskalaan pelacakan target, perbarui pengaturan penskalaan terkelola penyedia kapasitas, daripada memperbarui kebijakan penskalaan secara langsung.
Saat Anda menonaktifkan penskalaan terkelola atau memisahkan penyedia kapasitas dari kluster, Amazon ECS akan menghapus CloudWatch metrik dan sumber daya kebijakan penskalaan pelacakan target.
Amazon ECS menggunakan metrik berikut untuk menentukan tindakan apa yang harus diambil:
CapacityProviderReservation-
Persentase instance kontainer yang digunakan untuk penyedia kapasitas tertentu. Amazon ECS menghasilkan metrik ini.
Amazon ECS menetapkan
CapacityProviderReservationnilai ke angka antara 0-100. Amazon ECS menggunakan rumus berikut untuk mewakili rasio berapa banyak kapasitas yang tersisa di grup Amazon EC2 Auto Scaling. Kemudian, Amazon ECS menerbitkan metrik ke. CloudWatch Untuk informasi selengkapnya tentang cara penghitungan metrik, lihat Deep Dive di Auto Scaling Amazon ECS Cluster. CapacityProviderReservation = (number of instances needed) / (number of running instances) x 100 DesiredCapacity-
Jumlah kapasitas untuk grup Amazon EC2 Auto Scaling. Metrik ini tidak dipublikasikan ke CloudWatch.
Amazon ECS menerbitkan CapacityProviderReservation metrik ke CloudWatch dalam namespace. AWS/ECS/ManagedScaling CapacityProviderReservationMetrik menyebabkan salah satu tindakan berikut terjadi:
CapacityProviderReservationNilainya sama dengantargetCapacity-
Grup EC2 Auto Scaling Amazon tidak perlu menskalakan atau memperkecil skala. Target persentase pemanfaatan telah tercapai.
CapacityProviderReservationNilainya lebih besar daritargetCapacity-
Ada lebih banyak tugas menggunakan persentase kapasitas yang lebih tinggi daripada
targetCapacitypersentase Anda. Peningkatan nilaiCapacityProviderReservationmetrik menyebabkan CloudWatch alarm terkait bertindak. Alarm ini memperbaruiDesiredCapacitynilai untuk grup EC2 Auto Scaling Amazon. Grup Amazon EC2 Auto Scaling menggunakan nilai ini untuk meluncurkan EC2 instance, lalu mendaftarkannya ke cluster.Ketika
targetCapacityadalah nilai default 100%, tugas baru berada dalamPENDINGstatus selama scale-out karena tidak ada kapasitas yang tersedia pada instance untuk menjalankan tugas. Setelah instans baru mendaftar dengan ECS, tugas-tugas ini akan dimulai pada instans baru. CapacityProviderReservationNilainya kurang daritargetCapacity-
Ada lebih sedikit tugas yang menggunakan persentase kapasitas yang lebih rendah daripada
targetCapacitypersentase Anda dan setidaknya ada satu contoh yang dapat dihentikan. NilaiCapacityProviderReservationmetrik yang menurun menyebabkan CloudWatch alarm terkait bertindak. Alarm ini memperbaruiDesiredCapacitynilai untuk grup EC2 Auto Scaling Amazon. Grup EC2 Auto Scaling Amazon menggunakan nilai ini untuk menghentikan instance EC2 container, lalu membatalkan pendaftarannya dari klaster.Grup EC2 Auto Scaling Amazon mengikuti kebijakan penghentian grup untuk menentukan instance mana yang dihentikan terlebih dahulu selama peristiwa penskalaan. Selain itu, ini menghindari instance dengan pengaturan perlindungan skala masuk instance diaktifkan. Penskalaan otomatis cluster dapat mengelola instance mana yang memiliki setelan perlindungan penskalaan instans jika Anda mengaktifkan perlindungan terminasi terkelola. Untuk informasi selengkapnya tentang perlindungan terminasi terkelola, lihatKontrol instans Amazon ECS berakhir. Untuk informasi selengkapnya tentang cara grup EC2 Auto Scaling Amazon menghentikan instans, lihat Mengontrol instans Auto Scaling Amazon mana yang dihentikan selama penskalaan di Panduan Pengguna Amazon EC2 Auto Scaling. EC2
Pertimbangkan hal berikut saat menggunakan penskalaan otomatis cluster:
-
Jangan mengubah atau mengelola kapasitas yang diinginkan untuk grup EC2 Auto Scaling Amazon yang terkait dengan penyedia kapasitas dengan kebijakan penskalaan apa pun selain yang dikelola Amazon ECS.
-
Saat Amazon ECS keluar dari 0 instans, Amazon ECS akan secara otomatis meluncurkan 2 instans.
-
Amazon ECS menggunakan peran IAM
AWSServiceRoleForECSterkait layanan untuk izin yang diperlukan untuk memanggil atas nama Anda. AWS Auto Scaling Untuk informasi selengkapnya, lihat Menggunakan peran terkait layanan untuk Amazon ECS. -
Saat menggunakan penyedia kapasitas dengan grup EC2 Auto Scaling Amazon, pengguna, grup, atau peran yang membuat penyedia kapasitas memerlukan izin tersebut
autoscaling:CreateOrUpdateTags. Ini karena Amazon ECS menambahkan tag ke grup EC2 Auto Scaling Amazon saat mengaitkannya dengan penyedia kapasitas.penting
Pastikan alat apa pun yang Anda gunakan tidak menghapus
AmazonECSManagedtag dari grup Amazon EC2 Auto Scaling. Jika tag ini dihapus, Amazon ECS tidak dapat mengelola penskalaan. -
Penskalaan otomatis cluster tidak mengubah MinimumCapacityatau MaximumCapacityuntuk grup. Agar kelompok dapat diskalakan, nilai untuk MaximumCapacityharus lebih besar dari nol.
-
Saat Amazon EC2 Auto Scaling (penskalaan terkelola) diaktifkan, penyedia kapasitas hanya dapat dihubungkan ke satu cluster secara bersamaan. Jika penyedia kapasitas Anda telah mengelola penskalaan dimatikan, Anda dapat mengaitkannya dengan beberapa cluster.
-
Saat penskalaan terkelola dimatikan, penyedia kapasitas tidak akan menskalakan atau memperkecil skala. Anda dapat menggunakan strategi penyedia kapasitas untuk menyeimbangkan tugas Anda antara penyedia kapasitas.
-
binpackStrategi adalah strategi yang paling efisien dalam hal kapasitas. -
Ketika kapasitas target kurang dari 100%, dalam strategi penempatan,
binpackstrategi harus memiliki urutan yang lebih tinggi daripadaspreadstrategi. Ini mencegah penyedia kapasitas dari skala hingga setiap tugas memiliki instance khusus atau batasnya tercapai.
Aktifkan penskalaan otomatis cluster
Anda dapat mengaktifkan penskalaan otomatis cluster dengan menggunakan Konsol atau. AWS CLI
Saat Anda membuat klaster yang menggunakan penyedia EC2 kapasitas menggunakan konsol, Amazon ECS membuat grup EC2 Auto Scaling Amazon atas nama Anda dan menetapkan kapasitas target. Untuk informasi selengkapnya, lihat Membuat cluster Amazon ECS untuk beban kerja Amazon EC2 .
Anda juga dapat membuat grup Amazon EC2 Auto Scaling, lalu menetapkannya ke cluster. Untuk informasi selengkapnya, lihat Memperbarui penyedia kapasitas Amazon ECS.
Saat Anda menggunakan AWS CLI, setelah Anda membuat cluster
-
Sebelum Anda membuat penyedia kapasitas, Anda perlu membuat grup Amazon EC2 Auto Scaling. Untuk informasi selengkapnya, lihat grup EC2 Auto Scaling Amazon di Panduan Pengguna Auto EC2 Scaling EC2 Amazon Amazon.
-
Gunakan
put-cluster-capacity-providersuntuk memodifikasi penyedia kapasitas cluster. Untuk informasi selengkapnya, lihat Mengaktifkan penskalaan otomatis cluster Amazon ECS.