Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menskalakan layanan Amazon ECS secara otomatis
Penskalaan otomatis adalah kemampuan untuk menambah atau mengurangi jumlah tugas yang diinginkan dalam layanan Amazon ECS Anda secara otomatis. Amazon ECS memanfaatkan layanan Penskalaan Otomatis Aplikasi untuk menyediakan fungsionalitas ini. Untuk informasi selengkapnya, lihat Panduan Pengguna Penskalaan Otomatis Aplikasi.
Amazon ECS menerbitkan CloudWatch metrik dengan penggunaan CPU dan memori rata-rata layanan Anda. Untuk informasi selengkapnya, lihat Metrik pemanfaatan layanan Amazon ECS. Anda dapat menggunakan metrik ini dan CloudWatch metrik lainnya untuk meningkatkan layanan Anda (menambahkan lebih banyak tugas) untuk menangani permintaan tinggi pada waktu puncak, dan untuk meningkatkan skala layanan Anda (menjalankan lebih sedikit tugas) untuk mengurangi biaya selama periode pemanfaatan rendah.
Amazon ECS Service Auto Scaling mendukung jenis penskalaan otomatis berikut:
-
Menggunakan Metrik Target untuk Menskalakan Layanan Amazon ECS— Meningkatkan atau mengurangi jumlah tugas yang dijalankan layanan Anda berdasarkan nilai target untuk metrik tertentu. Hal ini mirip dengan cara termostat mempertahankan suhu di rumah Anda. Anda mengatur suhu dan termostat melakukan sisanya.
-
Gunakan kenaikan yang telah ditentukan berdasarkan CloudWatch alarm untuk menskalakan layanan Amazon ECS— Tingkatkan atau kurangi jumlah tugas yang dijalankan layanan Anda berdasarkan serangkaian penyesuaian penskalaan, yang dikenal sebagai penyesuaian langkah, yang bervariasi berdasarkan ukuran pelanggaran alarm.
-
Menggunakan Tindakan Terjadwal untuk Menskalakan Layanan Amazon ECSMeningkatkan atau mengurangi jumlah tugas yang dijalankan layanan Anda berdasarkan tanggal dan waktu.
-
Menggunakan Pola Historis untuk Menskalakan Layanan Amazon ECS dengan Penskalaan PrediktifMeningkatkan atau mengurangi jumlah tugas yang dijalankan layanan Anda berdasarkan analisis data beban historis untuk mendeteksi pola harian atau mingguan dalam arus lalu lintas.
Pertimbangan-pertimbangan
Saat menggunakan kebijakan penskalaan, pertimbangkan hal berikut:
-
Amazon ECS mengirimkan metrik dalam interval 1 menit ke. CloudWatch Metrik tidak tersedia sampai cluster dan layanan mengirim metrik ke CloudWatch, dan Anda tidak dapat membuat CloudWatch alarm untuk metrik yang tidak ada.
-
Kebijakan penskalaan mendukung periode pendinginan. Ini adalah jumlah detik untuk menunggu hingga aktivitas penskalaan sebelumnya berlaku.
-
Dengan kebijakan penskalaan, tujuannya adalah untuk terus menerus (tetapi tidak berlebihan) menskalakan naik. Setelah Service Auto Scaling berhasil menskalakan menggunakan kebijakan penskalaan, waktu cooldown dimulai untuk menghitung. Kebijakan penskalaan tidak akan meningkatkan kapasitas yang diinginkan lagi kecuali jika skala keluar yang lebih besar dimulai atau periode cooldown berakhir. Selama periode pendinginan penskalaan keluar berlaku, kapasitas yang ditambahkan dengan cara memulai aktivitas penskalaan keluar dihitung sebagai bagian dari kapasitas yang diinginkan untuk aktivitas penskalaan keluar berikutnya.
-
Untuk kejadian penskalaan kedalam, tujuannya adalah untuk melakukan penskalaan kedalam secara konservatif guna melindungi ketersediaan aplikasi Anda, sehingga aktivitas penskalaan kedalam diblokir hingga periode pendinginan berakhir. Namun, jika alarm lain memulai aktivitas scale-out selama periode cooldown scale-in, Service Auto Scaling segera menskalakan target. Dalam hal ini, periode pendinginan penskalaan kedalam berhenti dan tidak selesai.
-
-
Penjadwal layanan selalu menghormati jumlah yang diinginkan, tetapi selama Anda memiliki kebijakan penskalaan dan alarm aktif pada layanan, Penskalaan Otomatis Layanan dapat mengubah jumlah yang diinginkan yang ditetapkan secara manual oleh Anda.
-
Jika jumlah layanan yang diinginkan disetel di bawah nilai kapasitas minimumnya, dan alarm memulai aktivitas penskalaan keluar, Penskalaan Otomatis Layanan menskalakan jumlah yang diinginkan hingga nilai kapasitas minimum dan kemudian terus menskalakan sesuai kebutuhan, berdasarkan kebijakan penskalaan yang terkait dengan alarm. Namun, kegiatan penskalaan kedalam tidak menyesuaikan jumlah yang diinginkan, karena sudah di bawah nilai kapasitas minimal.
-
Jika jumlah layanan yang diinginkan disetel di atas nilai kapasitas maksimumnya, dan alarm memulai skala dalam aktivitas, Penskalaan Otomatis Layanan menskalakan penghitungan yang diinginkan ke nilai kapasitas maksimum dan kemudian terus menskalakan sesuai kebutuhan, berdasarkan kebijakan penskalaan yang terkait dengan alarm. Namun, aktivitas penskalaan keluar tidak menyesuaikan jumlah yang diinginkan, karena sudah di atas nilai kapasitas maksimal.
-
Selama aktivitas penskalaan, jumlah tugas yang sedang berjalan dalam layanan adalah nilai yang digunakan Service Auto Scaling sebagai titik awalnya, sebagai lawan dari hitungan yang diinginkan. Inilah kapasitas pemrosesan yang seharusnya. Ini mencegah penskalaan berlebihan (tak terkendali) yang mungkin tidak terpenuhi, misalnya, jika tidak ada cukup sumber daya instance container untuk menempatkan tugas tambahan. Jika nantinya kapasitas instans kontainer tersedia, maka aktivitas penskalaan yang tertunda kemungkinan akan berhasil, dan kemudian aktivitas penskalaan lebih lanjut dapat diteruskan setelah periode pendinginan.
-
Jika Anda ingin jumlah tugas Anda dinaikkan ke nol ketika tidak ada pekerjaan yang harus dilakukan, tetapkan kapasitas minimum 0. Dengan kebijakan penskalaan pelacakan target, ketika kapasitas aktual adalah 0 dan metrik menunjukkan bahwa ada permintaan beban kerja, Service Auto Scaling menunggu satu titik data dikirim sebelum melakukan penskalaan. Dalam hal ini, penskalaan otomatis layanan akan menskalakan keluar berdasarkan jumlah minimal yang memungkinkan sebagai titik awal, dan kemudian melanjutkan penskalaan berdasarkan jumlah tugas berjalan yang aktual.
-
Penskalaan Otomatis Aplikasi mematikan proses penskalaan saat penerapan Amazon ECS sedang berlangsung. Namun, proses penskalaan keluar terus terjadi, kecuali ditangguhkan, selama deployment. Perilaku ini tidak berlaku untuk layanan Amazon ECS yang menggunakan pengontrol penerapan eksternal. Untuk informasi selengkapnya, lihat penskalaan otomatis dan deployment layanan.
-
Anda memiliki beberapa opsi Penskalaan Otomatis Aplikasi untuk tugas Amazon ECS. Pelacakan target adalah mode termudah untuk digunakan. Dengan itu, yang perlu Anda lakukan adalah menetapkan nilai target untuk metrik, seperti pemanfaatan rata-rata CPU. Kemudian, scaler otomatis secara otomatis mengelola jumlah tugas yang diperlukan untuk mencapai nilai itu. Dengan penskalaan langkah, Anda dapat bereaksi lebih cepat terhadap perubahan permintaan, karena Anda menentukan ambang batas tertentu untuk metrik penskalaan Anda, dan berapa banyak tugas yang akan ditambahkan atau dihapus saat ambang batas dilintasi. Dan, yang lebih penting, Anda dapat bereaksi sangat cepat terhadap perubahan permintaan dengan meminimalkan jumlah waktu alarm ambang batas melanggar.
Untuk informasi selengkapnya tentang praktik terbaik untuk penskalaan otomatis layanan, lihatMengoptimalkan penskalaan otomatis layanan Amazon ECS.
penskalaan otomatis dan deployment layanan
Penskalaan Otomatis Aplikasi mematikan proses penskalaan saat penerapan Amazon ECS sedang berlangsung. Namun, proses penskalaan keluar terus terjadi, kecuali ditangguhkan, selama deployment. Perilaku ini tidak berlaku untuk layanan Amazon ECS yang menggunakan pengontrol penerapan eksternal. Jika Anda ingin menangguhkan proses penskalaan keluar saat deployment dalam progres, lakukan langkah-langkah berikut.
-
Panggil perintah describe-scalable-targets-, menentukan ID sumber daya layanan yang terkait dengan target yang dapat diskalakan di Application Auto Scaling (Contoh:).
service/default/sample-webappCatat outputnya. Anda akan membutuhkannya saat memanggil perintah berikutnya. -
Panggil perintah register-scalable-target, menentukan ID sumber daya, namespace, dan dimensi yang dapat diskalakan. Tentukan
true, baik untukDynamicScalingInSuspendedmaupunDynamicScalingOutSuspended. -
Setelah deployment selesai, Anda dapat memanggil perintah register-scalable-target untuk melanjutkan penskalaan.
Untuk informasi lebih lanjut, lihat Menangguhkan dan melanjutkan penskalaan untuk Application Auto Scaling.