Cara penyegaran instans bekerja di grup Auto Scaling - Amazon EC2 Auto Scaling

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

Cara penyegaran instans bekerja di grup Auto Scaling

Topik ini menjelaskan cara kerja penyegaran instance dan memperkenalkan konsep kunci yang perlu Anda pahami untuk menggunakannya secara efektif.

Cara kerjanya

Untuk menyegarkan instance dalam grup Auto Scaling, Anda dapat menentukan konfigurasi baru yang berisi versi terbaru aplikasi Anda dan pembaruan lain yang ingin Anda buat. Kemudian, mulai penyegaran instance untuk mengganti instance yang ada dengan yang baru berdasarkan konfigurasi itu.

Untuk melakukan penyegaran instance:

  1. Buat template peluncuran baru atau perbarui template yang ada dengan perubahan konfigurasi yang diinginkan, seperti Amazon Machine Image (AMI) baru. Untuk informasi selengkapnya, lihat Membuat template peluncuran untuk grup Auto Scaling.

  2. Mulai penyegaran instans menggunakan konsol Auto Scaling Amazon EC2 AWS CLI, atau SDK:

    • Tentukan template peluncuran baru atau luncurkan versi template yang Anda buat. Ini akan digunakan untuk meluncurkan instance baru.

    • Tetapkan persentase sehat minimum dan maksimum yang disukai. Ini mengontrol berapa banyak instance yang diganti secara bersamaan dan apakah instance baru diluncurkan sebelum menghentikan yang lama.

    • Konfigurasikan pengaturan opsional apa pun, seperti:

      • Checkpoints — Jeda penyegaran instans setelah persentase penggantian tertentu untuk memverifikasi kemajuan.

      • Lewati pencocokan — Bandingkan instance lama dengan konfigurasi baru dan hanya ganti yang tidak cocok. Saat Anda memulai penyegaran instans dari konsol, lewati pencocokan aktif secara default.

      • Beberapa jenis instans — Menerapkan kebijakan instance campuran baru atau yang diperbarui sebagai bagian dari konfigurasi yang diinginkan.

Saat penyegaran instans dimulai, Auto Scaling Amazon EC2 akan:

  • Ganti instance dalam batch berdasarkan persentase sehat minimum dan maksimum.

  • Luncurkan instance baru terlebih dahulu sebelum menghentikan yang lama jika persentase sehat minimum ditetapkan ke 100 persen. Ini memastikan bahwa kapasitas yang Anda inginkan dipertahankan setiap saat.

  • Periksa contoh untuk status kesehatan dan beri mereka waktu untuk melakukan pemanasan sebelum lebih banyak contoh diganti.

  • Mengakhiri dan mengganti contoh yang ditemukan tidak sehat.

  • Secara otomatis memperbarui pengaturan grup Auto Scaling dengan perubahan konfigurasi baru setelah penyegaran instans berhasil.

  • Ganti InService instance sebelum instance yang berada di kolam hangat.

Diagram alir berikut menggambarkan perilaku peluncuran sebelum menghentikan saat Anda menetapkan persentase sehat minimum menjadi 100 persen.

Diagram yang menunjukkan bagaimana penyegaran instans bekerja ketika persentase sehat minimum diatur ke 100 persen.
catatan

Persentase sehat minimum dan maksimum untuk penyegaran instans hanya perlu ditentukan jika Anda belum menetapkan kebijakan pemeliharaan instans, atau jika Anda perlu mengganti kebijakan yang ada. Untuk informasi selengkapnya, lihat Kebijakan pemeliharaan instans.

Demikian pula, Anda hanya perlu menentukan periode pemanasan instance untuk penyegaran instance jika Anda belum mengaktifkan pemanasan default, atau jika Anda perlu mengganti default. Untuk informasi selengkapnya, lihat Mengatur pemanasan instance default untuk grup Auto Scaling.

Konsep inti

Sebelum memulai, biasakan diri Anda dengan konsep inti penyegaran contoh berikut:

Persentase sehat minimum

Persentase sehat minimum adalah persentase kapasitas yang diinginkan untuk tetap dalam layanan, sehat, dan siap digunakan selama penyegaran instance sehingga penyegaran dapat berlanjut. Misalnya, jika persentase sehat minimum adalah 90 persen dan persentase sehat maksimum adalah 100 persen, maka 10 persen kapasitas akan diganti sekaligus. Jika instans baru tidak lulus pemeriksaan kesehatan, Auto Scaling Amazon EC2 akan menghentikan dan menggantikannya. Jika penyegaran instans tidak dapat meluncurkan instance sehat apa pun, pada akhirnya akan gagal, membuat 90 persen grup lainnya tidak tersentuh. Jika instans baru tetap sehat dan menyelesaikan periode pemanasan, Auto Scaling Amazon EC2 dapat terus menggantikan instans lain.

Penyegaran instance dapat menggantikan instance satu per satu, beberapa sekaligus, atau sekaligus. Untuk mengganti satu contoh pada satu waktu, tetapkan persentase sehat minimum dan maksimum menjadi 100 persen. Ini mengubah perilaku penyegaran instans untuk diluncurkan sebelum dihentikan, yang mencegah kapasitas grup turun di bawah 100 persen dari kapasitas yang diinginkan. Untuk mengganti semua instance sekaligus, tetapkan persentase sehat minimum 0 persen.

Persentase sehat maksimum

Persentase sehat maksimum adalah persentase kapasitas yang diinginkan yang dapat ditingkatkan oleh grup Auto Scaling Anda saat mengganti instance. Perbedaan antara minimum dan maksimum tidak boleh lebih besar dari 100. Rentang yang lebih besar meningkatkan jumlah instance yang dapat diganti pada saat yang bersamaan.

Contoh pemanasan

Pemanasan instance adalah periode waktu dari saat status instance baru berubah menjadi InService saat dianggap telah selesai diinisialisasi. Selama penyegaran instans, jika instans lulus pemeriksaan kesehatannya, Auto Scaling Amazon EC2 tidak segera beralih ke penggantian instance berikutnya setelah menentukan bahwa instans yang baru diluncurkan sehat. Itu menunggu periode pemanasan sebelum beralih untuk mengganti instance berikutnya. Ini dapat membantu ketika aplikasi Anda masih memerlukan beberapa waktu inisialisasi sebelum menanggapi permintaan.

Pemanasan instance bekerja dengan cara yang sama seperti pemanasan instance default. Oleh karena itu, pertimbangan penskalaan yang sama berlaku. Untuk informasi selengkapnya, lihat Mengatur pemanasan instance default untuk grup Auto Scaling.

Konfigurasi yang diinginkan

Konfigurasi yang diinginkan adalah konfigurasi baru yang Anda inginkan untuk diterapkan Auto Scaling Amazon EC2 di seluruh grup Auto Scaling Anda. Misalnya, Anda dapat menentukan template peluncuran baru dan jenis instans baru untuk instance Anda. Selama penyegaran instans, Auto Scaling Amazon EC2 memperbarui grup Auto Scaling ke konfigurasi yang diinginkan. Jika peristiwa penskalaan terjadi selama penyegaran instans, Auto Scaling Amazon EC2 meluncurkan instans baru dengan konfigurasi yang diinginkan, bukan pengaturan grup saat ini. Setelah penyegaran instans berhasil, Auto Scaling Amazon EC2 memperbarui setelan grup Auto Scaling untuk mencerminkan konfigurasi baru yang diinginkan yang Anda tentukan sebagai bagian dari penyegaran instans.

Lewati pencocokan

Lewati pencocokan memberi tahu Amazon EC2 Auto Scaling untuk mengabaikan instans yang sudah memiliki pembaruan terbaru Anda. Dengan cara ini, Anda tidak mengganti lebih banyak instance daripada yang Anda butuhkan. Ini sangat membantu ketika Anda ingin memastikan grup Auto Scaling Anda menggunakan versi tertentu dari template peluncuran Anda dan hanya menggantikan instance yang menggunakan versi berbeda.

Pos pemeriksaan

Pos pemeriksaan adalah titik waktu di mana penyegaran instance berhenti sejenak untuk jumlah waktu tertentu. Penyegaran instance dapat berisi beberapa pos pemeriksaan. Auto Scaling Amazon EC2 memancarkan peristiwa untuk setiap pos pemeriksaan. Oleh karena itu, Anda dapat menambahkan EventBridge aturan untuk mengirim acara ke target, seperti Amazon SNS, untuk diberi tahu saat pos pemeriksaan tercapai. Setelah pos pemeriksaan tercapai, Anda memiliki kesempatan untuk memverifikasi penyebaran Anda. Jika ada masalah yang teridentifikasi, Anda dapat membatalkan penyegaran instans atau memutarnya kembali. Kemampuan untuk menyebarkan pembaruan secara bertahap adalah manfaat utama dari pos pemeriksaan. Jika Anda tidak menggunakan pos pemeriksaan, penggantian bergulir dilakukan terus menerus.

Untuk mempelajari lebih lanjut tentang semua setelan default yang dapat Anda konfigurasikan saat memulai penyegaran instans, lihatMemahami nilai default untuk penyegaran instance.

Masa tenggang pemeriksaan kesehatan

Auto Scaling Amazon EC2 menentukan apakah instans sehat berdasarkan status pemeriksaan kesehatan yang digunakan grup Auto Scaling Anda. Untuk informasi selengkapnya, lihat Health memeriksa instans dalam grup Auto Scaling.

Untuk memastikan bahwa pemeriksaan kesehatan ini dimulai sesegera mungkin, jangan atur tenggang pemeriksaan kesehatan kelompok terlalu tinggi, tetapi cukup tinggi untuk pemeriksaan kesehatan Elastic Load Balancing Anda untuk menentukan apakah target tersedia untuk menangani permintaan. Untuk informasi selengkapnya, lihat Mengatur masa tenggang pemeriksaan kesehatan untuk grup Auto Scaling.

Kompatibilitas tipe instans

Sebelum Anda mengubah jenis instans Anda, ada baiknya untuk memverifikasi bahwa itu berfungsi dengan template peluncuran Anda. Ini mengonfirmasi kompatibilitas dengan AMI yang Anda tentukan. Misalnya, katakanlah Anda meluncurkan instans asli Anda dari AMI paravirtual (PV), tetapi Anda ingin mengubah ke jenis instans generasi saat ini yang hanya didukung oleh AMI mesin virtual perangkat keras (HVM). Dalam hal ini, Anda harus menggunakan AMI HVM di template peluncuran Anda.

Untuk mengonfirmasi kompatibilitas jenis instans tanpa meluncurkan instance, gunakan perintah run-instance dengan --dry-run opsi, seperti yang ditunjukkan pada contoh berikut.

aws ec2 run-instances --launch-template LaunchTemplateName=my-template,Version='1' --dry-run

Untuk informasi tentang cara kompatibilitas ditentukan, lihat Kompatibilitas untuk mengubah jenis instans di Panduan Pengguna Amazon EC2.

Batasan

  • Total durasi: Jumlah waktu maksimum penyegaran instans dapat terus mengganti instans secara aktif adalah 14 hari.

  • Perbedaan perilaku khusus untuk grup tertimbang: Jika grup instans campuran dikonfigurasi dengan bobot instans yang lebih besar dari atau sama dengan kapasitas yang diinginkan grup, Auto Scaling Amazon EC2 dapat InService menggantikan semua instans sekaligus. Untuk menghindari situasi ini, ikuti rekomendasi dalam Konfigurasikan grup Auto Scaling untuk menggunakan bobot instance topik. Tentukan kapasitas yang diinginkan yang lebih besar dari bobot terbesar Anda saat Anda menggunakan bobot dengan grup Auto Scaling Anda.

  • Batas waktu satu jam: Ketika penyegaran instans tidak dapat melanjutkan penggantian karena menunggu untuk mengganti instans saat siaga atau dilindungi dari skala masuk, atau instans baru tidak lulus pemeriksaan kesehatannya, Auto Scaling Amazon EC2 terus mencoba lagi selama satu jam. Ini juga menyediakan pesan status untuk membantu Anda menyelesaikan masalah. Jika masalah berlanjut setelah satu jam, operasi gagal. Tujuannya adalah untuk memberikan waktu untuk pulih jika ada masalah sementara.

  • Menerapkan kode melalui data pengguna: Lewati pencocokan tidak memeriksa perubahan kode yang diterapkan dari skrip data pengguna. Jika Anda menggunakan data pengguna untuk menarik kode baru dan menginstal pembaruan ini pada instance baru, sebaiknya Anda menonaktifkan pencocokan lewati untuk memastikan bahwa semua instance menerima kode terbaru Anda, bahkan tanpa pembaruan versi templat peluncuran.

  • Pembatasan pembaruan: Jika Anda mencoba memperbarui templat peluncuran grup Auto Scaling, konfigurasi peluncuran, atau kebijakan instance campuran saat penyegaran instans dengan konfigurasi yang diinginkan aktif, permintaan akan gagal dengan kesalahan validasi berikut: An active instance refresh with a desired configuration exists. All configuration options derived from the desired configuration are not available for update while the instance refresh is active.