Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan penyegaran instance dengan pencocokan lewati
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 bahwa grup Auto Scaling Anda menggunakan versi tertentu dari template peluncuran Anda dan hanya menggantikan instance yang menggunakan versi berbeda.
Pertimbangan berikut berlaku untuk melewatkan pencocokan:
-
Jika Anda memulai penyegaran instans dengan pencocokan lewati dan konfigurasi yang diinginkan, Auto Scaling Amazon EC2 akan memeriksa untuk melihat apakah ada instans yang cocok dengan konfigurasi yang Anda inginkan. Kemudian, itu hanya menggantikan instance yang tidak sesuai dengan konfigurasi yang Anda inginkan. Setelah penyegaran instans berhasil, Auto Scaling Amazon EC2 memperbarui grup untuk mencerminkan konfigurasi yang Anda inginkan.
-
Jika Anda memulai penyegaran instans dengan pencocokan lewati, tetapi Anda tidak menentukan konfigurasi yang diinginkan, Auto Scaling Amazon EC2 akan memeriksa apakah ada instance yang cocok dengan konfigurasi yang terakhir Anda simpan di grup Auto Scaling. Kemudian, itu hanya menggantikan instance yang tidak cocok dengan konfigurasi terakhir Anda yang disimpan.
-
Anda dapat menggunakan skip matching dengan template peluncuran baru, versi baru dari template peluncuran, atau serangkaian jenis instance. Jika Anda mengaktifkan pencocokan lewati, tetapi tidak ada yang berubah, penyegaran instance akan segera berhasil tanpa mengganti instance apa pun. Jika Anda membuat perubahan lain dalam konfigurasi yang diinginkan (seperti mengubah strategi alokasi Spot), Auto Scaling Amazon EC2 menunggu penyegaran instans berhasil. Kemudian, ini memperbarui pengaturan grup Auto Scaling untuk mencerminkan konfigurasi baru yang diinginkan.
-
Anda tidak dapat menggunakan pencocokan lewati dengan konfigurasi peluncuran baru.
-
Saat memulai penyegaran instans dan menyediakan konfigurasi yang diinginkan, Auto Scaling Amazon EC2 memastikan bahwa semua instans menggunakan konfigurasi yang Anda inginkan. Oleh karena itu, ketika Anda menentukan salah satu
$Default
atau$Latest
sebagai versi yang diinginkan untuk template peluncuran Anda dan kemudian membuat versi baru dari template peluncuran saat penyegaran instance sedang berlangsung, setiap instance yang sudah diganti akan diganti lagi. -
Lewati pencocokan tidak tahu apakah skrip data pengguna di template peluncuran akan menarik kode yang diperbarui dan menginstalnya pada instance baru. Akibatnya, lewati pencocokan mungkin melewatkan penggantian instance yang memiliki kode usang diinstal. Dalam hal ini, Anda harus menonaktifkan pencocokan lewati untuk memastikan bahwa semua instance menerima kode terbaru Anda, bahkan tanpa pembaruan versi templat peluncuran.
Bagian ini mencakup AWS CLI petunjuk untuk memulai penyegaran instans dengan pencocokan lewati diaktifkan. Untuk petunjuk tentang penggunaan konsol, lihatMulai penyegaran instance (konsol).
Ikuti langkah-langkah di bagian ini untuk menggunakan AWS CLI untuk melakukan hal berikut:
-
Buat template peluncuran yang ingin Anda terapkan ke instance Anda.
-
Mulai penyegaran instans untuk menerapkan template peluncuran Anda ke grup Auto Scaling Anda. Jika Anda tidak mengaktifkan pencocokan lewati, semua instance akan diganti. Ini benar bahkan jika template peluncuran yang digunakan untuk menyediakan instance sama dengan yang Anda tentukan untuk konfigurasi yang Anda inginkan.
Untuk menggunakan skip matching dengan template peluncuran baru
-
Gunakan create-launch-templateperintah untuk membuat template peluncuran baru untuk grup Auto Scaling Anda. Sertakan
--launch-template-data
opsi dan masukan JSON yang menentukan detail instance yang dibuat untuk grup Auto Scaling Anda.Misalnya, gunakan perintah berikut untuk membuat template peluncuran dasar dengan ID AMI
dan tipeami-0123456789abcdef0
instans.t2.micro
aws ec2 create-launch-template --launch-template-name
my-template-for-auto-scaling
--version-descriptionversion1
\ --launch-template-data '{"ImageId":"ami-0123456789abcdef0
","InstanceType":"t2.micro
"}'Jika berhasil, perintah mengembalikan output yang serupa dengan berikut.
{ "LaunchTemplate": { "LaunchTemplateId": "lt-068f72b729example", "LaunchTemplateName": "my-template-for-auto-scaling", "CreatedBy": "arn:aws:iam::123456789012:user/Bob", "CreateTime": "2023-01-30T18:16:06.000Z", "DefaultVersionNumber": 1, "LatestVersionNumber": 1 } }
Untuk informasi selengkapnya, lihat Contoh untuk membuat dan mengelola template peluncuran dengan AWS CLI.
-
Gunakan start-instance-refreshperintah untuk memulai alur kerja penggantian instance dan menerapkan template peluncuran baru Anda dengan ID.
Karena template peluncuran baru, ia hanya memiliki satu versi. Ini berarti bahwalt-068f72b729example
1
versi template peluncuran adalah target penyegaran instance ini. Jika peristiwa penskalaan terjadi selama penyegaran instans, dan Auto Scaling Amazon EC2 menyediakan instans baru menggunakan versi templat peluncuran ini, instans1
tersebut tidak akan diganti. Setelah berhasil menyelesaikan operasi, template peluncuran baru berhasil diterapkan ke grup Auto Scaling Anda.aws autoscaling start-instance-refresh --cli-input-json file://config.json
Isi dari
config.json
.{ "AutoScalingGroupName": "
my-asg
", "DesiredConfiguration": { "LaunchTemplate": { "LaunchTemplateId": "lt-068f72b729example
", "Version": "$Default
" } }, "Preferences": { "SkipMatching": true } }Jika berhasil, perintah mengembalikan output yang serupa dengan berikut.
{ "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b" }
Jika Anda memiliki grup Auto Scaling dengan kebijakan instance campuran, ikuti langkah-langkah di bagian ini untuk menggunakan grup Auto Scaling dengan skip matching. AWS CLI Anda memiliki opsi berikut:
-
Berikan template peluncuran baru untuk diterapkan ke semua jenis instance yang ditentukan dalam kebijakan.
-
Berikan kumpulan tipe instans yang diperbarui dengan atau tanpa mengubah templat peluncuran dalam kebijakan. Misalnya, Anda mungkin ingin bermigrasi dari jenis instance yang tidak diinginkan. Anda akan menggunakan template peluncuran apa adanya, tanpa mengubah AMI, grup keamanan, atau spesifikasi lain dari instance yang diganti.
Ikuti langkah-langkah di salah satu bagian berikut, tergantung pada opsi mana yang sesuai dengan kebutuhan Anda.
Untuk menggunakan skip matching dengan template peluncuran baru
-
Gunakan create-launch-templateperintah untuk membuat template peluncuran baru untuk grup Auto Scaling Anda. Sertakan
--launch-template-data
opsi dan masukan JSON yang menentukan detail instance yang dibuat untuk grup Auto Scaling Anda.Misalnya, gunakan perintah berikut untuk membuat template peluncuran dengan ID AMI
.ami-0123456789abcdef0
aws ec2 create-launch-template --launch-template-name
my-new-template
--version-descriptionversion1
\ --launch-template-data '{"ImageId":"ami-0123456789abcdef0
"}'Jika berhasil, perintah mengembalikan output yang serupa dengan berikut.
{ "LaunchTemplate": { "LaunchTemplateId": "lt-04d5cc9b88example", "LaunchTemplateName": "my-new-template", "CreatedBy": "arn:aws:iam::123456789012:user/Bob", "CreateTime": "2023-01-31T15:56:02.000Z", "DefaultVersionNumber": 1, "LatestVersionNumber": 1 } }
Untuk informasi selengkapnya, lihat Contoh untuk membuat dan mengelola template peluncuran dengan AWS CLI.
-
Untuk melihat kebijakan instance campuran yang ada untuk grup Auto Scaling Anda, jalankan describe-auto-scaling-groupsperintah. Anda akan memerlukan informasi ini di langkah berikutnya, ketika Anda memulai penyegaran instance.
Perintah contoh berikut mengembalikan kebijakan instance campuran yang dikonfigurasi untuk grup Auto Scaling bernama.
my-asg
aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name
my-asg
Jika berhasil, perintah mengembalikan output yang serupa dengan berikut.
{ "AutoScalingGroups":[ { "AutoScalingGroupName":"my-asg", "AutoScalingGroupARN":"
arn
", "MixedInstancesPolicy":{ "LaunchTemplate":{ "LaunchTemplateSpecification":{ "LaunchTemplateId":"lt-073693ed27example", "LaunchTemplateName":"my-old-template", "Version":"$Default" }, "Overrides":[ { "InstanceType":"c5.large" }, { "InstanceType":"c5a.large" }, { "InstanceType":"m5.large" }, { "InstanceType":"m5a.large" } ] }, "InstancesDistribution":{ "OnDemandAllocationStrategy":"prioritized", "OnDemandBaseCapacity":1, "OnDemandPercentageAboveBaseCapacity":50, "SpotAllocationStrategy":"price-capacity-optimized" } }, "MinSize":1, "MaxSize":5, "DesiredCapacity":4, ... } ] } -
Gunakan start-instance-refreshperintah untuk memulai alur kerja penggantian instance dan menerapkan template peluncuran baru Anda dengan ID.
Karena template peluncuran baru, ia hanya memiliki satu versi. Ini berarti bahwalt-04d5cc9b88example
1
versi template peluncuran adalah target penyegaran instance ini. Jika peristiwa penskalaan terjadi selama penyegaran instans, dan Auto Scaling Amazon EC2 menyediakan instans baru menggunakan versi templat peluncuran ini, instans1
tersebut tidak akan diganti. Setelah berhasil menyelesaikan operasi, kebijakan instans campuran yang diperbarui berhasil diterapkan ke grup Auto Scaling Anda.aws autoscaling start-instance-refresh --cli-input-json file://config.json
Isi dari
config.json
.{ "AutoScalingGroupName":"my-asg", "DesiredConfiguration":{ "MixedInstancesPolicy":{ "LaunchTemplate":{ "LaunchTemplateSpecification":{ "LaunchTemplateId":"
lt-04d5cc9b88example
", "Version":"$Default" }, "Overrides":[ { "InstanceType":"c5.large" }, { "InstanceType":"c5a.large" }, { "InstanceType":"m5.large" }, { "InstanceType":"m5a.large" } ] }, "InstancesDistribution":{ "OnDemandAllocationStrategy":"prioritized", "OnDemandBaseCapacity":1, "OnDemandPercentageAboveBaseCapacity":50, "SpotAllocationStrategy":"price-capacity-optimized" } } } }, "Preferences":{ "SkipMatching":true } }Jika berhasil, perintah mengembalikan output yang serupa dengan berikut.
{ "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b" }
Dalam prosedur berikutnya ini, Anda menyediakan serangkaian jenis instans yang diperbarui tanpa mengubah template peluncuran.
Untuk menggunakan pencocokan lewati dengan kumpulan tipe instans yang diperbarui
-
Untuk melihat kebijakan instance campuran yang ada untuk grup Auto Scaling Anda, jalankan describe-auto-scaling-groupsperintah. Anda akan memerlukan informasi ini di langkah berikutnya, ketika Anda memulai penyegaran instance.
Perintah contoh berikut mengembalikan kebijakan instance campuran yang dikonfigurasi untuk grup Auto Scaling bernama.
my-asg
aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name
my-asg
Jika berhasil, perintah mengembalikan output yang serupa dengan berikut.
{ "AutoScalingGroups":[ { "AutoScalingGroupName":"my-asg", "AutoScalingGroupARN":"
arn
", "MixedInstancesPolicy":{ "LaunchTemplate":{ "LaunchTemplateSpecification":{ "LaunchTemplateId":"lt-073693ed27example", "LaunchTemplateName":"my-template-for-auto-scaling", "Version":"$Default" }, "Overrides":[ { "InstanceType":"c5.large" }, { "InstanceType":"c5a.large" }, { "InstanceType":"m5.large" }, { "InstanceType":"m5a.large" } ] }, "InstancesDistribution":{ "OnDemandAllocationStrategy":"prioritized", "OnDemandBaseCapacity":1, "OnDemandPercentageAboveBaseCapacity":50, "SpotAllocationStrategy":"price-capacity-optimized" } }, "MinSize":1, "MaxSize":5, "DesiredCapacity":4, ... } ] } -
Gunakan start-instance-refreshperintah untuk memulai alur kerja penggantian instance dan menerapkan pembaruan Anda. Jika Anda ingin mengganti instance yang menggunakan tipe instans tertentu, konfigurasi yang Anda inginkan harus menentukan kebijakan instance campuran dengan hanya tipe instance yang Anda inginkan. Anda dapat memilih apakah akan menambahkan jenis instance baru di tempatnya.
Contoh perintah berikut memulai penyegaran instance tanpa jenis instance yang tidak diinginkan
. Ketika jenis instans dalam grup Anda tidak cocok dengan salah satu dari tiga tipe instans yang tersisa, instance akan diganti. (Perhatikan bahwa penyegaran instans tidak memilih jenis instans untuk menyediakan instance baru; sebaliknya, strategi alokasi melakukannya.) Setelah berhasil menyelesaikan operasi, kebijakan instans campuran yang diperbarui berhasil diterapkan ke grup Auto Scaling Anda.m5a.large
aws autoscaling start-instance-refresh --cli-input-json file://config.json
Isi dari
config.json
{ "AutoScalingGroupName":"my-asg", "DesiredConfiguration":{ "MixedInstancesPolicy":{ "LaunchTemplate":{ "LaunchTemplateSpecification":{ "LaunchTemplateId":"lt-073693ed27example", "Version":"$Default" }, "Overrides":[ { "InstanceType":"
c5.large
" }, { "InstanceType":"c5a.large
" }, { "InstanceType":"m5.large
" } ] }, "InstancesDistribution":{ "OnDemandAllocationStrategy":"prioritized", "OnDemandBaseCapacity":1, "OnDemandPercentageAboveBaseCapacity":50, "SpotAllocationStrategy":"price-capacity-optimized" } } } }, "Preferences":{ "SkipMatching":true } }