Contoh untuk bekerja dengan Elastic Load Balancing menggunakan AWS CLI - EC2Auto Scaling Amazon

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

Contoh untuk bekerja dengan Elastic Load Balancing menggunakan AWS CLI

Gunakan AWS Command Line Interface (AWS CLI) untuk melampirkan, melepaskan, dan menjelaskan penyeimbang beban dan grup target, menambah dan menghapus pemeriksaan kesehatan Elastic Load Balancing, dan ubah Availability Zone mana yang diaktifkan.

Topik ini menunjukkan contoh AWS CLI perintah yang melakukan tugas umum untuk Amazon EC2 Auto Scaling.

penting

Untuk contoh perintah tambahan, lihat aws elbv2dan aws elbdi AWS CLI Command Reference.

Lampirkan grup target Anda atau Classic Load Balancer

Gunakan create-auto-scaling-groupperintah berikut untuk membuat grup Auto Scaling dan secara bersamaan melampirkan grup target dengan menentukan Nama Sumber Daya Amazon (). ARN Grup target dapat dikaitkan dengan Application Load Balancer, Network Load Balancer, atau Gateway Load Balancer.

Ganti nilai sampel untuk--auto-scaling-group-name,--vpc-zone-identifier,--min-size, dan--max-size. Untuk --launch-template opsi, ganti my-launch-template dan 1 dengan nama dan versi template peluncuran untuk grup Auto Scaling Anda. Untuk --traffic-sources opsi, ganti sampel ARN dengan grup target untuk Application Load Balancer, Network Load Balancer, atau Gateway Load Balancer. ARN

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateName=my-launch-template,Version='1' \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \ --min-size 1 --max-size 5 \ --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE1"

Gunakan attach-traffic-sourcesperintah untuk melampirkan grup target tambahan ke grup Auto Scaling setelah dibuat.

Perintah berikut menambahkan grup target lain ke grup yang sama.

aws autoscaling attach-traffic-sources --auto-scaling-group-name my-asg \ --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE2"

Atau, untuk melampirkan Classic Load Balancer ke grup Anda, tentukan --traffic-sources dan --type opsi saat Anda menggunakan create-auto-scaling-group atauattach-traffic-sources, seperti pada contoh berikut. Ganti my-classic-load-balancer dengan nama Classic Load Balancer. Untuk --type opsi, tentukan nilaielb.

--traffic-sources "Identifier=my-classic-load-balancer" --type elb

Jelaskan grup target Anda atau Classic Load Balancer

Untuk menjelaskan penyeimbang beban atau grup target yang dilampirkan ke grup Auto Scaling Anda, gunakan perintah berikut. describe-traffic-sources Ganti my-asg dengan nama grup Anda.

aws autoscaling describe-traffic-sources --auto-scaling-group-name my-asg

Contoh mengembalikan grup target Elastic Load Balancing yang Anda lampirkan ke grup Auto Scaling. ARN

{ "TrafficSources": [ { "Identifier": "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE1", "State": "InService", "Type": "elbv2" }, { "Identifier": "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE2", "State": "InService", "Type": "elbv2" } ] }

Untuk penjelasan State bidang dalam output, lihatVerifikasi status lampiran penyeimbang beban Anda.

Tambahkan pemeriksaan kesehatan Elastic Load Balancing

Untuk menambahkan pemeriksaan kesehatan Elastic Load Balancing ke pemeriksaan kesehatan yang dilakukan grup Auto Scaling Anda pada instance, gunakan perintah update-auto-scaling-groupberikut dan ELB tentukan sebagai nilai untuk opsi tersebut. --health-check-type Ganti my-asg dengan nama grup Anda.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \ --health-check-type "ELB"

Contoh baru sering membutuhkan waktu untuk pemanasan singkat sebelum mereka dapat lulus pemeriksaan kesehatan. Jika masa tenggang tidak memberikan waktu pemanasan yang cukup, contoh mungkin tidak tampak siap untuk melayani lalu lintas. Amazon EC2 Auto Scaling mungkin menganggap instans tersebut tidak sehat dan menggantikannya.

Untuk memperbarui masa tenggang pemeriksaan kesehatan, gunakan --health-check-grace-period opsi saat Anda menggunakanupdate-auto-scaling-group, seperti pada contoh berikut. Ganti 300 dengan jumlah detik untuk menyimpan instance baru dalam layanan sebelum menghentikannya jika ternyata tidak sehat.

--health-check-grace-period 300

Untuk informasi selengkapnya, lihat Health memeriksa instans dalam grup Auto Scaling.

Ubah Availability Zone

Mengubah Availability Zone Anda memiliki beberapa batasan yang harus Anda waspadai. Untuk informasi selengkapnya, lihat Tambahkan Availability Zone.

Untuk mengubah Availability Zone untuk Application Load Balancer atau Network Load Balancer
  1. Sebelum Anda mengubah Availability Zones dari load balancer, sebaiknya Anda memperbarui Availability Zone dari grup Auto Scaling terlebih dahulu untuk memverifikasi bahwa ada ketersediaan untuk jenis instans Anda di zona yang ditentukan.

    Untuk memperbarui Availability Zones untuk grup Auto Scaling Anda, gunakan perintah berikut update-auto-scaling-group. Ganti subnet sampel IDs dengan subnet di Availability Zones untuk mengaktifkan. IDs Subnet yang ditentukan menggantikan subnet yang diaktifkan sebelumnya. Ganti my-asg dengan nama grup Anda.

    aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \ --vpc-zone-identifier "subnet-41767929,subnet-cb663da2,subnet-8360a9e7"
  2. Gunakan describe-auto-scaling-groupsperintah berikut untuk memverifikasi bahwa instance di subnet baru telah diluncurkan. Jika instans telah diluncurkan, Anda melihat daftar instance dan statusnya. Ganti my-asg dengan nama grup Anda.

    aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-asg
  3. Gunakan perintah set-subnet berikut untuk menentukan subnet untuk penyeimbang beban Anda. Ganti subnet sampel IDs dengan subnet di Availability Zones untuk mengaktifkan. IDs Anda hanya dapat menentukan satu subnet per Availability Zone. Subnet yang ditentukan menggantikan subnet yang diaktifkan sebelumnya. Ganti my-lb-arn dengan ARN penyeimbang beban Anda.

    aws elbv2 set-subnets --load-balancer-arn my-lb-arn \ --subnets subnet-41767929 subnet-cb663da2 subnet-8360a9e7
Untuk mengubah Availability Zone untuk Classic Load Balancer
  1. Sebelum Anda mengubah Availability Zones dari load balancer, sebaiknya Anda memperbarui Availability Zone dari grup Auto Scaling terlebih dahulu untuk memverifikasi bahwa ada ketersediaan untuk jenis instans Anda di zona yang ditentukan.

    Untuk memperbarui Availability Zones untuk grup Auto Scaling Anda, gunakan perintah berikut update-auto-scaling-group. Ganti subnet sampel IDs dengan subnet di Availability Zones untuk mengaktifkan. IDs Subnet yang ditentukan menggantikan subnet yang diaktifkan sebelumnya. Ganti my-asg dengan nama grup Anda.

    aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \ --vpc-zone-identifier "subnet-41767929,subnet-cb663da2"
  2. Gunakan describe-auto-scaling-groupsperintah berikut untuk memverifikasi bahwa instance di subnet baru telah diluncurkan. Jika instans telah diluncurkan, Anda melihat daftar instance dan statusnya. Ganti my-asg dengan nama grup Anda.

    aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-asg
  3. Gunakan perintah attach-load-balancer-to-subnets berikut untuk mengaktifkan Availability Zone baru untuk Classic Load Balancer Anda. Ganti ID subnet sampel dengan ID subnet untuk Availability Zone untuk mengaktifkan. Ganti my-lb dengan nama penyeimbang beban Anda.

    aws elb attach-load-balancer-to-subnets --load-balancer-name my-lb \ --subnets subnet-cb663da2

    Untuk menonaktifkan Availability Zone, gunakan perintah detach-load-balancer-from-subnets berikut. Ganti contoh subnet ID dengan ID subnet untuk Availability Zone untuk menonaktifkan. Ganti my-lb dengan nama penyeimbang beban Anda.

    aws elb detach-load-balancer-from-subnets --load-balancer-name my-lb \ --subnets subnet-8360a9e7

Lepaskan grup target atau Classic Load Balancer

detach-traffic-sourcesPerintah berikut melepaskan grup target dari grup Auto Scaling Anda saat Anda tidak lagi membutuhkannya.

Untuk --auto-scaling-group-name opsi, ganti my-asg dengan nama grup Anda. Untuk --traffic-sources opsi, ganti sampel ARN dengan grup target untuk Application Load Balancer, Network Load Balancer, atau Gateway Load Balancer. ARN

aws autoscaling detach-traffic-sources --auto-scaling-group-name my-asg \ --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"

Untuk melepaskan Classic Load Balancer dari grup Anda, tentukan --traffic-sources opsi --type dan, seperti pada contoh berikut. Ganti my-classic-load-balancer dengan nama Classic Load Balancer. Untuk --type opsi, tentukan nilaielb.

--traffic-sources "Identifier=my-classic-load-balancer" --type elb

Hapus pemeriksaan kesehatan Elastic Load Balancing

Untuk menghapus pemeriksaan kesehatan Elastic Load Balancing dari grup Auto Scaling Anda, gunakan perintah update-auto-scaling-groupberikut dan EC2 tentukan sebagai nilai untuk opsi tersebut. --health-check-type Ganti my-asg dengan nama grup Anda.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \ --health-check-type "EC2"

Untuk informasi selengkapnya, lihat Health memeriksa instans dalam grup Auto Scaling.

Perintah lama

Contoh berikut menunjukkan bagaimana Anda dapat menggunakan CLI perintah lama untuk melampirkan, melepaskan, dan mendeskripsikan penyeimbang beban dan grup target. Mereka tetap dalam dokumen ini sebagai referensi untuk setiap pelanggan yang ingin menggunakannya. Kami terus mendukung CLI perintah lama, tetapi kami menyarankan Anda menggunakan CLI perintah “sumber lalu lintas” baru, yang dapat melampirkan dan melepaskan beberapa jenis sumber lalu lintas. Anda dapat menggunakan CLI perintah lama dan perintah “sumber lalu lintas” CLI pada grup Auto Scaling yang sama.

Untuk melampirkan grup target Anda

create-auto-scaling-groupPerintah berikut membuat grup Auto Scaling dengan grup target terlampir. Tentukan Amazon Resource Name (ARN) grup target untuk Application Load Balancer, Network Load Balancer, atau Gateway Load Balancer.

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateName=my-launch-template,Version='1' \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \ --target-group-arns "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456" \ --min-size 1 --max-size 5

Perintah attach-load-balancer-target-groups berikut melampirkan grup target ke grup Auto Scaling yang ada.

aws autoscaling attach-load-balancer-target-groups --auto-scaling-group-name my-asg \ --target-group-arns "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"
Untuk melampirkan Classic Load Balancer

create-auto-scaling-groupPerintah berikut membuat grup Auto Scaling dengan Classic Load Balancer yang terpasang.

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg \ --launch-configuration-name my-launch-config \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \ --load-balancer-names "my-load-balancer" \ --min-size 1 --max-size 5

attach-load-balancersPerintah berikut melampirkan Classic Load Balancer yang ditentukan ke grup Auto Scaling yang ada.

aws autoscaling attach-load-balancers --auto-scaling-group-name my-asg \ --load-balancer-names my-lb
Untuk menggambarkan kelompok sasaran

Untuk mendeskripsikan grup target yang terkait dengan grup Auto Scaling, gunakan perintah describe-load-balancer-target-groups. Contoh berikut mencantumkan kelompok target untukmy-asg.

aws autoscaling describe-load-balancer-target-groups --auto-scaling-group-name my-asg
Untuk menggambarkan Classic Load Balancers

Untuk mendeskripsikan Classic Load Balancer yang terkait dengan grup Auto Scaling, gunakan perintah tersebut. describe-load-balancers Contoh berikut mencantumkan Classic Load Balancers untuk. my-asg

aws autoscaling describe-load-balancers --auto-scaling-group-name my-asg
Untuk melepaskan kelompok sasaran

Perintah detach-load-balancer-target-groups berikut melepaskan grup target dari grup Auto Scaling Anda saat Anda tidak lagi membutuhkannya.

aws autoscaling detach-load-balancer-target-groups --auto-scaling-group-name my-asg \ --target-group-arns "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"
Untuk melepaskan Classic Load Balancer

detach-load-balancersPerintah berikut melepaskan Classic Load Balancer dari grup Auto Scaling Anda saat Anda tidak lagi membutuhkannya.

aws autoscaling detach-load-balancers --auto-scaling-group-name my-asg \ --load-balancer-names my-lb