Cara penyegaran instans bekerja di 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.

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 Amazon EC2 Auto Scaling, 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.

      • Waktu panggang — Jeda di akhir penyegaran instance untuk memvalidasi kesehatan instance sebelum penyegaran instance dianggap selesai.

      • 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, Amazon EC2 Auto Scaling 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 instans 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 mereka, Amazon EC2 Auto Scaling 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 mereka, Amazon EC2 Auto Scaling dapat terus menggantikan instance 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, Amazon EC2 Auto Scaling 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.

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

Konfigurasi yang diinginkan

Konfigurasi yang diinginkan adalah konfigurasi baru yang Anda inginkan untuk diterapkan Amazon EC2 Auto Scaling di seluruh grup Auto Scaling Anda. Misalnya, Anda dapat menentukan template peluncuran baru dan jenis instans baru untuk instance Anda. Selama penyegaran instans, Amazon EC2 Auto Scaling memperbarui grup Auto Scaling ke konfigurasi yang diinginkan. Jika peristiwa penskalaan terjadi selama penyegaran instans, Auto EC2 Scaling Amazon meluncurkan instance baru dengan konfigurasi yang diinginkan, bukan pengaturan grup saat ini. Setelah penyegaran instans berhasil, Amazon EC2 Auto Scaling 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 instance 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. Amazon EC2 Auto Scaling memancarkan acara untuk setiap pos pemeriksaan. Oleh karena itu, Anda dapat menambahkan EventBridge aturan untuk mengirim acara ke target, seperti AmazonSNS, 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

Amazon EC2 Auto Scaling 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 mengkonfirmasi kompatibilitas dengan AMI yang Anda tentukan. Misalnya, katakanlah Anda meluncurkan instance asli Anda dari paravirtual (PV)AMI, tetapi Anda ingin mengubah ke jenis instance generasi saat ini yang hanya didukung oleh mesin virtual perangkat keras (). HVM AMI Dalam hal ini, Anda harus menggunakan templat peluncuran HVM AMI di 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 EC2 Pengguna Amazon.

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 EC2 Scaling Amazon dapat mengganti InService 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 instance saat siaga atau dilindungi dari skala masuk, atau instans baru tidak lulus pemeriksaan kesehatannya, Amazon Auto Scaling 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.