Konfigurasikan retensi instance - Amazon EC2 Auto Scaling

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

Konfigurasikan retensi instance

Siapkan grup Penskalaan Otomatis Amazon EC2 Anda untuk mempertahankan instans saat tindakan siklus hidup penghentian gagal.

Untuk menggunakan kebijakan siklus hidup instance di grup Auto Scaling, Anda juga harus mengonfigurasi hook siklus hidup penghentian. Jika Anda mengonfigurasi kebijakan siklus hidup instance tetapi tidak memiliki kait siklus hidup penghentian, kebijakan tersebut tidak akan berpengaruh. Kebijakan siklus hidup instans hanya akan berlaku ketika tindakan siklus hidup penghentian ditinggalkan, bukan ketika tindakan tersebut berhasil diselesaikan dengan hasilnya. CONTINUE

Kebijakan siklus hidup instans menggunakan pemicu retensi untuk menentukan kapan harus menyimpan instance. TerminateHookAbandonPemicunya menyebabkan retensi dalam beberapa skenario:

  • Saat Anda secara eksplisit memanggil CompleteLifecycleActionAPI dengan hasilnya. ABANDON

  • Ketika tindakan siklus hidup terminasi dengan hasil default habis karena batas ABANDON waktu detak jantung tercapai tanpa menerima detak jantung.

  • Ketika batas waktu global tercapai pada tindakan siklus hidup penghentian dengan hasil defaultABANDON, yaitu 48 jam atau 100 kali batas waktu detak jantung, mana yang lebih kecil

Console
Untuk mengonfigurasi retensi instance
  1. Buka konsol Amazon EC2 Auto Scaling

  2. Buat grup Auto Scaling Anda (default kebijakan siklus hidup instance ke Terminate)

  3. Buka halaman detail grup Auto Scaling dan pilih tab Manajemen Instance

  4. Dalam kebijakan siklus hidup Instance untuk kait siklus hidup, pilih Pertahankan

  5. Buat kait siklus hidup penghentian Anda dengan:

    • Transisi siklus hidup disetel ke Instance terminate

    • Hasil default disetel ke Abandon

AWS CLI
Untuk mengonfigurasi retensi instance

Gunakan create-auto-scaling-groupperintah dengan kebijakan siklus hidup instance:

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateName=my-template,Version='$Latest' \ --min-size 1 \ --max-size 3 \ --desired-capacity 2 \ --vpc-zone-identifier subnet-12345678 \ --instance-lifecycle-policy file://lifecycle-policy.json

Isi lifecycle-policy.json:

{ "RetentionTriggers": { "TerminateHookAbandon": "retain" } }
Untuk menambahkan hook siklus aktif penghentian

Gunakan put-lifecycle-hookperintah:

aws autoscaling put-lifecycle-hook \ --lifecycle-hook-name my-termination-hook \ --auto-scaling-group-name my-asg \ --lifecycle-transition autoscaling:EC2_INSTANCE_TERMINATING \ --default-result ABANDON \ --heartbeat-timeout 300