Secara otomatis menskalakan ECS layanan Amazon Anda - Amazon Elastic Container Service

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

Secara otomatis menskalakan ECS layanan Amazon Anda

Penskalaan otomatis adalah kemampuan untuk menambah atau mengurangi jumlah tugas yang diinginkan di layanan Amazon ECS Anda secara otomatis. Amazon ECS memanfaatkan layanan Application Auto Scaling untuk menyediakan fungsionalitas ini. Untuk informasi selengkapnya, lihat Panduan Pengguna Application Auto Scaling.

Amazon ECS menerbitkan CloudWatch metrik dengan rata-rata layanan Anda CPU dan penggunaan memori. Untuk informasi selengkapnya, lihat Metrik pemanfaatan ECS layanan Amazon. Anda dapat menggunakan CloudWatch metrik ini dan lainnya untuk menskalakan keluar layanan Anda (menambahkan lebih banyak tugas) guna menangani permintaan yang tinggi pada jam-jam sibuk, dan untuk menskalakan kedalam layanan Anda (menjalankan lebih sedikit tugas) guna mengurangi biaya selama periode pemanfaatan yang rendah.

Amazon ECS Service Auto Scaling mendukung jenis penskalaan otomatis berikut:

Pertimbangan

Saat menggunakan kebijakan penskalaan, pertimbangkan hal berikut:

  • Amazon ECS mengirimkan metrik dalam interval 1 menit ke. CloudWatch Metrik tidak tersedia hingga klaster dan layanan mengirimkan 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 mengecilkan skala menggunakan kebijakan penskalaan, penskalaan mulai menghitung waktu jeda pakai. Kebijakan penskalaan tidak akan lagi meningkatkan kapasitas yang diinginkan lagi kecuali jika penskalaan naik yang lebih besar dimulai atau periode jeda pakai 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 penskalaan naik selama periode jeda pakai, Auto Scaling Layanan akan langsung memperkecil skala target. Dalam hal ini, periode pendinginan penskalaan kedalam berhenti dan tidak selesai.

  • Penjadwal layanan menghormati jumlah yang diinginkan setiap saat, akan tetapi selama Anda memiliki kebijakan penskalaan aktif dan alarm pada layanan, Auto Scaling Service dapat mengubah jumlah yang diinginkan yang diatur secara manual oleh Anda.

  • Jika hitungan yang diinginkan layanan diatur di bawah nilai kapasitas minimalnya, dan alarm memulai aktivitas penskalaan keluar, maka Auto Scaling Layanan menskalakan jumlah yang diinginkan hingga nilai kapasitas minimal, dan kemudian melanjutkan penskalaan keluar 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 hitungan yang diinginkan layanan diatur di atas nilai kapasitas maksimalnya, dan alarm memulai aktivitas penskalaan kedalam, maka Auto Scaling Layanan menskalakan jumlah yang diinginkan ke nilai kapasitas maksimal, dan kemudian melanjutkan penskalaan kedalam 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 berjalan yang aktual dalam layanan adalah nilai yang digunakan oleh Service Auto Scaling sebagai titik awalnya, sebagai lawan dari jumlah yang diinginkan. Inilah yang seharusnya menjadi kapasitas pemrosesan. Hal ini mencegah penskalaan yang berlebihan (runaway) yang mungkin tidak terpenuhi, misalnya, jika tidak ada sumber daya instans kontainer yang cukup 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 menskalakan ke nol saat tidak ada pekerjaan yang harus diselesaikan, maka atur kapasitas minimum 0. Dengan kebijakan penskalaan pelacakan target, saat kapasitas aktual adalah 0 dan metrik menunjukkan bahwa ada permintaan beban kerja, Service Auto Scaling menunggu satu titik data dikirim sebelum menskalakan keluar. 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.

  • Application Auto Scaling menonaktifkan proses penskalaan kedalam sementara ECS deployment Amazon dalam progres. Namun, proses penskalaan keluar terus terjadi, kecuali ditangguhkan, selama deployment. Untuk informasi selengkapnya, lihat penskalaan otomatis dan deployment layanan.

  • Anda memiliki beberapa opsi Application Auto Scaling untuk tugas AmazonECS. Pelacakan target adalah mode termudah untuk digunakan. Dengan itu, yang perlu Anda lakukan adalah menetapkan nilai target untuk metrik, seperti pemanfaatan CPU rata-rata. Kemudian, auto scaler 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 harus ditambahkan atau dihapus saat ambang batas dilewati. Dan, yang lebih penting, Anda dapat bereaksi sangat cepat terhadap perubahan permintaan dengan meminimalkan jumlah waktu alarm ambang batas dilanggar.

penskalaan otomatis dan deployment layanan

Application Auto Scaling menonaktifkan proses penskalaan kedalam sementara ECS deployment Amazon dalam progres. Namun, proses penskalaan keluar terus terjadi, kecuali ditangguhkan, selama deployment. Jika Anda ingin menangguhkan proses penskalaan keluar saat deployment dalam progres, lakukan langkah-langkah berikut.

  1. Panggil describe-scalable-targetsperintah, tentukan ID sumber daya layanan yang terkait dengan target yang dapat diskalakan dalam Application Auto Scaling (Contoh:). service/default/sample-webapp Catat outputnya. Anda akan membutuhkannya saat memanggil perintah berikutnya.

  2. Panggil register-scalable-targetperintah, tentukan ID sumber daya, namespace, dan dimensi yang dapat diskalakan. Tentukan true, baik untuk DynamicScalingInSuspended maupun DynamicScalingOutSuspended.

  3. Setelah deployment selesai, Anda dapat memanggil register-scalable-targetperintah untuk melanjutkan penskalaan.

Untuk informasi lebih lanjut, lihat Menangguhkan dan melanjutkan penskalaan untuk Application Auto Scaling.