Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan Rebalancing Kapasitas untuk menangani interupsi Amazon EC2 Spot
Anda dapat mengonfigurasi EC2 Auto Scaling Amazon untuk memantau dan secara otomatis merespons perubahan yang memengaruhi ketersediaan Instans Spot Anda. Penyeimbangan Kembali Kapasitas membantu Anda menjaga ketersediaan beban kerja dengan menambah armada Anda secara proaktif dengan Instans Spot baru sebelum instans yang sedang berjalan terganggu oleh Amazon. EC2
Tujuan dari Capacity Rebalancing adalah untuk terus memproses beban kerja Anda tanpa gangguan. Jika Instans Spot berisiko tinggi mengalami gangguan, layanan Amazon EC2 Spot memberi tahu Amazon Auto EC2 Scaling dengan EC2 rekomendasi penyeimbangan ulang instans.
Saat Anda mengaktifkan Penyeimbangan Kembali Kapasitas untuk grup Auto Scaling, Amazon Auto EC2 Scaling mencoba mengganti Instans Spot secara proaktif di grup Anda yang telah menerima rekomendasi penyeimbangan ulang. Ini memberikan kesempatan untuk menyeimbangkan kembali beban kerja Anda ke Instans Spot baru yang tidak berisiko tinggi mengalami gangguan. Beban kerja Anda dapat terus memproses pekerjaan sementara Amazon EC2 Auto Scaling meluncurkan Instans Spot baru sebelum instans yang ada terputus.
Jika Anda tidak menggunakan Penyeimbangan Kembali Kapasitas, Auto EC2 Scaling Amazon tidak menggantikan Instans Spot hingga setelah layanan EC2 Amazon Spot mengganggu instans dan pemeriksaan kesehatannya gagal. Sebelum menyela instans, Amazon EC2 selalu memberikan rekomendasi penyeimbangan ulang EC2 instans dan pemberitahuan interupsi instans dua menit Spot.
Daftar Isi
Gambaran Umum
Untuk menggunakan Capacity Rebalancing dengan grup Auto Scaling Anda, langkah-langkah dasarnya adalah:
-
Konfigurasikan grup Auto Scaling Anda untuk menggunakan beberapa jenis instans dan Availability Zone. Dengan cara ini, Amazon EC2 Auto Scaling dapat melihat kapasitas yang tersedia untuk Instans Spot di setiap Availability Zone. Untuk informasi selengkapnya, lihat Grup Auto Scaling dengan beberapa jenis instans dan opsi pembelian.
-
Tambahkan kait siklus hidup sesuai kebutuhan untuk melakukan shutdown aplikasi Anda yang anggun di dalam instance yang menerima notifikasi penyeimbangan ulang. Untuk informasi selengkapnya, lihat Kait EC2 siklus hidup Auto Scaling Amazon.
Berikut ini adalah beberapa alasan mengapa Anda mungkin menggunakan pengait siklus hidup:
-
Untuk pematian worker Amazon SQS secara baik
-
Untuk menyelesaikan deregistrasi dari Domain Name System (DNS)
-
Untuk menarik log sistem atau aplikasi dan mengunggahnya ke Amazon Simple Storage Service (Amazon S3)
-
-
Kembangkan tindakan kustom untuk kait siklus hidup. Untuk menjalankan tindakan kustom Anda sesegera mungkin, Anda perlu tahu kapan instance siap untuk dihentikan. Cari tahu ini dengan mendeteksi status siklus hidup instance.
-
Untuk menjalankan tindakan di luar instance, tulis EventBridge aturan dan otomatiskan tindakan apa yang harus diambil ketika pola peristiwa cocok dengan aturan.
-
Untuk menjalankan tindakan di dalam instance, konfigurasikan instance untuk menjalankan skrip shutdown dan mengambil status siklus hidup melalui metadata instance.
Sangat penting untuk merancang tindakan khusus untuk diselesaikan dalam waktu kurang dari dua menit. Ini memastikan ada cukup waktu untuk menyelesaikan tugas sebelum penghentian instance.
-
Setelah Anda menyelesaikan langkah-langkah ini, Anda dapat mulai menggunakan Capacity Rebalancing.
Perilaku penyeimbangan kembali kapasitas
Dengan Penyeimbangan Kembali Kapasitas, Amazon EC2 Auto Scaling berperilaku seperti berikut saat instance menerima rekomendasi penyeimbangan ulang:
-
Saat Instans Spot baru diluncurkan, Amazon EC2 Auto Scaling menunggu hingga instans baru melewati pemeriksaan kesehatannya sebelum menghentikan instance sebelumnya. Saat mengganti lebih dari satu instance, penghentian setiap instance sebelumnya dimulai setelah instans baru diluncurkan dan lulus pemeriksaan kesehatannya.
-
Karena Amazon EC2 Auto Scaling mencoba meluncurkan instans baru sebelum menghentikan instans sebelumnya, berada pada atau mendekati kapasitas maksimum yang ditentukan dapat menghambat atau sepenuhnya menghentikan aktivitas penyeimbangan kembali. Untuk menghindari masalah ini, Amazon EC2 Auto Scaling sementara dapat melebihi ukuran maksimum grup hingga 10 persen dari kapasitas yang diinginkan.
-
Jika Anda tidak menambahkan kait siklus hidup ke grup Auto Scaling, Auto EC2 Scaling Amazon mulai menghentikan instans sebelumnya segera setelah instans baru lulus pemeriksaan kesehatannya.
-
Jika Anda menambahkan kait siklus hidup, ini memperpanjang jumlah waktu yang diperlukan sebelum kami mulai menghentikan instance sebelumnya dengan nilai batas waktu yang Anda tentukan untuk hook siklus hidup.
-
Jika Anda menggunakan kebijakan penskalaan atau penskalaan terjadwal, aktivitas penskalaan berjalan secara paralel. Jika aktivitas penskalaan sedang berlangsung dan grup Auto Scaling Anda berada di bawah kapasitas baru yang diinginkan, Amazon Auto EC2 Scaling akan keluar terlebih dahulu sebelum menghentikan instans sebelumnya.
Jika tidak ada kapasitas untuk jenis instans Anda di satu Availability Zone, Amazon EC2 Auto Scaling terus mencoba meluncurkan Instans Spot di Availability Zone lain yang diaktifkan hingga berhasil.
Dalam skenario terburuk, jika instance baru gagal diluncurkan atau pemeriksaan kesehatannya gagal, Amazon EC2 Auto Scaling terus mencoba meluncurkannya kembali. Saat mencoba meluncurkan instance baru, yang sebelumnya pada akhirnya akan terganggu dan dihentikan secara paksa dengan pemberitahuan interupsi dua menit.
Pertimbangan
Pertimbangkan hal berikut saat menggunakan Capacity Rebalancing:
- Rancang aplikasi Anda agar toleran terhadap interupsi Spot
-
Aplikasi Anda harus dapat menangani perubahan dinamis dalam jumlah instance dan kemungkinan Instance Spot terputus lebih awal. Misalnya, jika grup Auto Scaling Anda berada di belakang penyeimbang beban Elastic Load Balancing, Amazon Auto EC2 Scaling menunggu instans membatalkan pendaftaran dari penyeimbang beban sebelum memanggil hook siklus hidup Anda. Jika waktu untuk membatalkan pendaftaran instans dan menyelesaikan tindakan siklus hidup terlalu lama, instance mungkin terputus saat Amazon Auto Scaling EC2 menunggu tindakan siklus hidup Anda selesai sebelum menghentikan instance.
Amazon tidak selalu dapat mengirim sinyal rekomendasi EC2 penyeimbangan ulang sebelum pemberitahuan interupsi Instans Spot dua menit. Terkadang, sinyal rekomendasi penyeimbangan kembali tiba bersamaan dengan pemberitahuan interupsi dua menit. Ketika ini terjadi, Amazon EC2 Auto Scaling memanggil hook siklus hidup dan mencoba meluncurkan Instans Spot baru dengan segera.
- Hindari peningkatan risiko gangguan penggantian Instans Spot
-
Instans Spot pengganti Anda mungkin berisiko tinggi mengalami gangguan jika Anda menggunakan strategi
lowest-price
alokasi. Ini karena kami meluncurkan instans di kolam dengan harga terendah yang memiliki kapasitas yang tersedia pada saat itu, meskipun Instans Spot pengganti Anda kemungkinan akan terganggu segera setelah diluncurkan. Untuk menghindari peningkatan risiko gangguan, kami sangat menyarankan agar Anda tidak menggunakan strategilowest-price
alokasi. Sebagai gantinya, kami merekomendasikan strategiprice-capacity-optimized
alokasi. Strategi ini meluncurkan Instans Spot pengganti di kumpulan Spot yang paling tidak mungkin terganggu dan memiliki harga serendah mungkin. Oleh karena itu, mereka cenderung tidak terganggu dalam waktu dekat. - Amazon EC2 Auto Scaling hanya akan meluncurkan instance baru jika ketersediaannya sama atau lebih baik
-
Salah satu tujuan dari Penyeimbangan Ulang kapasitas adalah untuk meningkatkan ketersediaan Instans Spot. Jika Instans Spot yang ada menerima rekomendasi penyeimbangan ulang, EC2 Auto Scaling Amazon hanya akan meluncurkan instance baru jika instans baru memberikan ketersediaan yang sama atau lebih baik daripada instans yang ada. Jika risiko gangguan instans baru akan lebih buruk daripada instance yang ada, maka Amazon EC2 Auto Scaling tidak akan meluncurkan instance baru. Namun, Amazon EC2 Auto Scaling akan terus menilai kumpulan kapasitas Spot berdasarkan informasi yang diberikan oleh layanan Amazon EC2 Spot, dan akan meluncurkan instance baru jika ketersediaan meningkat.
Ada kemungkinan instans Anda yang ada akan terganggu tanpa Amazon EC2 Auto Scaling secara proaktif meluncurkan instans baru. Ketika ini terjadi, Amazon EC2 Auto Scaling mencoba meluncurkan instans baru segera setelah menerima pemberitahuan gangguan Instans Spot. Ini terjadi terlepas dari apakah instance baru memiliki risiko gangguan yang tinggi.
- Penyeimbangan Ulang Kapasitas tidak meningkatkan tingkat interupsi Instans Spot Anda
-
Saat Anda mengaktifkan Penyeimbangan Kembali Kapasitas, itu tidak meningkatkan tingkat interupsi Instans Spot Anda (jumlah Instans Spot yang direklamasi saat Amazon EC2 membutuhkan kapasitas kembali). Namun, jika Capacity Rebalancing mendeteksi sebuah instans berisiko mengalami gangguan, Amazon Auto EC2 Scaling akan segera mencoba meluncurkan instans baru. Oleh karena itu, lebih banyak instance dapat diganti daripada jika Anda menunggu Amazon Auto EC2 Scaling meluncurkan instance baru setelah instans berisiko terputus.
Meskipun Anda mungkin mengganti lebih banyak instance dengan Capacity Rebalancing diaktifkan, Anda mendapat manfaat dari menjadi proaktif daripada reaktif. Ini memberi Anda lebih banyak waktu untuk mengambil tindakan sebelum instans Anda terganggu. Dengan pemberitahuan interupsi Instans Spot, Anda biasanya hanya memiliki waktu hingga dua menit untuk mematikan instans Anda dengan baik. Dengan Capacity Rebalancing meluncurkan instans baru sebelumnya, Anda memberikan kesempatan yang lebih baik untuk menyelesaikan proses yang ada pada instans berisiko Anda. Anda juga dapat memulai prosedur penghentian instans, mencegah pekerjaan baru dijadwalkan pada instans berisiko Anda, dan menyiapkan instans yang baru diluncurkan untuk mengambil alih aplikasi. Dengan penggantian proaktif dalam Penyeimbangan Kembali Kapasitas, Anda mendapat manfaat dari kontinuitas yang anggun.
Contoh teoritis berikut menunjukkan risiko dan manfaat menggunakan Capacity Rebalancing:
-
2:00 PM — Rekomendasi penyeimbangan ulang diterima misalnya A. Amazon Auto EC2 Scaling segera mencoba meluncurkan instans pengganti B, memberi Anda waktu untuk memulai prosedur shutdown Anda.
-
2:30 PM — Rekomendasi penyeimbangan ulang diterima misalnya B, yang diganti dengan contoh C. Ini memberi Anda waktu untuk memulai prosedur shutdown Anda.
-
14:32 — Jika Penyeimbangan Kembali Kapasitas tidak diaktifkan, dan jika pemberitahuan gangguan Instans Spot akan diterima pada pukul 14:32 misalnya A, Anda hanya memiliki dua menit untuk mengambil tindakan. Namun, Instance A akan terus berjalan hingga saat ini.
-