Mengatur pemanasan instans default untuk grup Auto Scaling - EC2Auto Scaling Amazon

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

Mengatur pemanasan instans default untuk grup Auto Scaling

CloudWatch mengumpulkan dan menggabungkan data penggunaan, seperti CPU dan jaringan I/O, di seluruh instans Auto Scaling Anda. Anda menggunakan metrik ini untuk membuat kebijakan penskalaan yang menyesuaikan jumlah instance di grup Auto Scaling Anda saat nilai metrik yang dipilih meningkat dan menurun.

Anda dapat menentukan berapa lama setelah instance mencapai InService status yang ditunggu sebelum menyumbangkan data penggunaan ke metrik agregat. Waktu yang ditentukan ini disebut pemanasan instance default. Hal ini membuat penskalaan dinamis tidak terpengaruh oleh metrik untuk instance individual yang belum menangani lalu lintas aplikasi dan yang mungkin mengalami penggunaan sumber daya komputasi yang tinggi untuk sementara waktu.

Untuk mengoptimalkan kinerja kebijakan pelacakan target dan penskalaan langkah, kami sangat menyarankan agar Anda mengaktifkan dan mengonfigurasi pemanasan instans default. Itu tidak diaktifkan atau dikonfigurasi secara default.

Saat mengaktifkan pemanasan instans default, ingatlah bahwa jika grup Auto Scaling disetel untuk menggunakan kebijakan pemeliharaan instans, atau Anda menggunakan penyegaran instans untuk mengganti instance, Anda dapat mencegah instance dihitung ke persentase sehat minimum sebelum selesai diinisialisasi.

Pertimbangan kinerja penskalaan

Sangat berguna bagi sebagian besar aplikasi untuk memiliki satu waktu pemanasan instance default yang berlaku untuk semua fitur, daripada waktu pemanasan yang berbeda untuk fitur yang berbeda. Misalnya, jika Anda tidak menyetel pemanasan instans default, fitur penyegaran instance menggunakan masa tenggang pemeriksaan kesehatan sebagai waktu pemanasan default. Jika Anda memiliki kebijakan pelacakan target dan penskalaan langkah, mereka menggunakan nilai yang ditetapkan untuk cooldown default sebagai waktu pemanasan default. Jika Anda memiliki kebijakan penskalaan prediktif, kebijakan tersebut tidak memiliki waktu pemanasan default.

Saat instans sedang memanas, kebijakan penskalaan dinamis Anda hanya dapat ditingkatkan jika nilai metrik dari instans yang tidak memanas lebih besar daripada ambang batas tinggi alarm kebijakan (atau pemanfaatan target kebijakan penskalaan pelacakan target). Jika permintaan menurun, penskalaan dinamis menjadi lebih konservatif untuk melindungi ketersediaan aplikasi Anda. Ini memblokir skala dalam aktivitas untuk penskalaan dinamis hingga instans baru selesai pemanasan.

Saat melakukan penskalaan, Amazon EC2 Auto Scaling mempertimbangkan instance yang memanas sebagai bagian dari kapasitas grup saat memutuskan berapa banyak instance yang akan ditambahkan ke grup. Oleh karena itu, beberapa pelanggaran alarm yang memerlukan jumlah kapasitas yang sama untuk ditambahkan menghasilkan aktivitas penskalaan tunggal. Tujuannya adalah untuk terus meningkatkan skala, tanpa melakukannya secara berlebihan.

Jika pemanasan instans default tidak diaktifkan, jumlah waktu instance menunggu sebelum mengirim metrik CloudWatch dan menghitungnya ke kapasitas saat ini akan bervariasi dari satu instance ke instance lainnya. Jadi, ada potensi kebijakan penskalaan Anda untuk berkinerja tidak terduga dibandingkan dengan beban kerja aktual yang terjadi.

Misalnya, pertimbangkan aplikasi dengan pola on-and-off beban kerja berulang. Kebijakan penskalaan prediktif digunakan untuk membuat keputusan berulang tentang apakah akan meningkatkan jumlah instance. Karena tidak ada waktu pemanasan default untuk kebijakan penskalaan prediktif, instans mulai berkontribusi pada metrik agregat segera. Jika instance ini memiliki penggunaan sumber daya yang lebih tinggi saat startup, maka menambahkan instance dapat menyebabkan metrik agregat melonjak. Bergantung pada berapa lama waktu yang dibutuhkan untuk penggunaan untuk menstabilkan, ini dapat memengaruhi kebijakan penskalaan dinamis apa pun yang menggunakan metrik ini. Jika ambang batas tinggi alarm kebijakan penskalaan dinamis dilanggar, maka ukuran grup bertambah lagi. Sementara contoh baru sedang memanas, skala aktivitas akan diblokir.

Pilih waktu pemanasan instance default

Kunci untuk menyetel pemanasan instans default adalah menentukan berapa lama instans Anda harus menyelesaikan inisialisasi dan agar konsumsi sumber daya stabil setelah mencapai status. InService Saat memilih waktu pemanasan instans, cobalah untuk menjaga keseimbangan optimal antara mengumpulkan data penggunaan untuk lalu lintas yang sah, dan meminimalkan pengumpulan data yang terkait dengan lonjakan penggunaan sementara saat startup.

Misalkan Anda memiliki grup Auto Scaling yang terpasang pada penyeimbang beban Elastic Load Balancing. Ketika instance baru selesai diluncurkan, mereka terdaftar ke penyeimbang beban sebelum memasuki status. InService Setelah instance memasuki InService status, konsumsi sumber daya masih dapat mengalami lonjakan sementara dan perlu waktu untuk menstabilkan. Misalnya, konsumsi sumber daya untuk server aplikasi yang harus mengunduh dan menyimpan aset besar membutuhkan waktu lebih lama untuk menstabilkan daripada server web ringan tanpa aset besar untuk diunduh. Instance warmup menyediakan penundaan waktu yang diperlukan agar konsumsi sumber daya stabil.

penting

Jika Anda tidak yakin berapa banyak waktu yang Anda butuhkan untuk waktu pemanasan, Anda bisa mulai dengan 300 detik. Kemudian secara bertahap kurangi atau tingkatkan hingga Anda mendapatkan kinerja penskalaan terbaik untuk aplikasi Anda. Anda mungkin perlu melakukan ini beberapa kali untuk melakukannya dengan benar. Atau, jika Anda memiliki kebijakan penskalaan yang memiliki waktu pemanasan (EstimatedInstanceWarmup) sendiri, Anda dapat menggunakan nilai ini untuk memulai. Untuk informasi selengkapnya, lihat Temukan kebijakan penskalaan dengan waktu pemanasan instance yang ditetapkan sebelumnya.

Pertimbangkan untuk menggunakan kait siklus hidup untuk kasus penggunaan di mana Anda memiliki tugas konfigurasi atau skrip untuk dijalankan saat startup. Pengait siklus hidup dapat menunda instance baru agar tidak dimasukkan ke dalam layanan hingga selesai diinisialisasi. Mereka sangat berguna jika Anda memiliki skrip bootstrap yang membutuhkan waktu beberapa saat untuk diselesaikan. Jika Anda menambahkan pengait siklus hidup, Anda dapat mengurangi nilai pemanasan instance default. Untuk informasi selengkapnya tentang penggunaan kait siklus hidup, lihat. Hook siklus aktif Amazon EC2 Auto Scaling