Esempi di utilizzo di Elastic Load Balancing utilizzando AWS CLI - Amazon EC2 Auto Scaling

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esempi di utilizzo di Elastic Load Balancing utilizzando AWS CLI

Utilizza AWS Command Line Interface (AWS CLI) per collegare, scollegare e descrivere i sistemi di bilanciamento del carico e i gruppi target, aggiungere e rimuovere i controlli di integrità di Elastic Load Balancing e modificare le zone di disponibilità abilitate.

Questo argomento mostra esempi di AWS CLI comandi che eseguono attività comuni per Amazon EC2 Auto Scaling.

Importante

Per ulteriori esempi di comandi, vedere aws elbv2 e aws elb nei AWS CLI Riferimenti ai comandi.

Collega il tuo gruppo target o Classic Load Balancer

Usa il seguente create-auto-scaling-groupcomando per creare un gruppo Auto Scaling e collegare contemporaneamente un gruppo target specificandone l'Amazon Resource Name (ARN). Il gruppo di destinazione può essere associato a un Application Load Balancer, un Network Load Balancer o un Gateway Load Balancer.

Sostituisci i valori di esempio per --auto-scaling-group-name, --vpc-zone-identifier, --min-size e --max-size. Per l'opzione --launch-template, sostituisci my-launch-template e 1 con il nome e la versione di un modello di avvio per il tuo gruppo con dimensionamento automatico. Per l'opzione ‭--traffic-sources, sostituisci l'ARN di esempio con l'ARN di un gruppo di destinazione per un Application Load Balancer, un Network Load Balancer o un 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" \ --min-size 1 --max-size 5 \ --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE1"

Utilizzate il attach-traffic-sourcescomando per collegare gruppi target aggiuntivi al gruppo Auto Scaling dopo la creazione.

Il comando seguente aggiunge un altro gruppo target allo stesso gruppo.

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

In alternativa, per collegare un Classic Load Balancer al gruppo, specifica le opzioni --traffic-sources e --type quando utilizzi create-auto-scaling-group o attach-traffic-sources, come nell'esempio seguente. Sostituisci my-classic-load-balancer con il nome di un Classic Load Balancer. Per l'opzione --type, specifica il valore di elb.

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

Descrivi i tuoi gruppi target o i Classic Load Balancer

Per descrivere i sistemi di bilanciamento del carico o i gruppi target collegati al gruppo Auto Scaling, utilizzate il seguente comando. describe-traffic-sources Sostituisci my-asg con il nome del tuo gruppo.

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

L'esempio restituisce l'ARN dei gruppi di destinazione del bilanciamento del carico allegati al gruppo con dimensionamento automatico.

{ "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" } ] }

Per una spiegazione del campo State nell'output, consulta Verifica lo stato di collegamento del sistema di bilanciamento del carico.

Come aggiungere controlli dell'integrità di Elastic Load Balancing

Per aggiungere i controlli di integrità di Elastic Load Balancing ai controlli di integrità eseguiti dal gruppo Auto Scaling sulle istanze, utilizzate il comando update-auto-scaling-groupseguente e ELB specificate come valore per l'opzione. --health-check-type Sostituisci my-asg con il nome del tuo gruppo.

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

Le nuove istanze spesso richiedono del tempo per un breve riscaldamento prima di poter superare un controllo di integrità. Se il periodo di prova non garantisce un tempo di riscaldamento sufficiente, le istanze potrebbero non sembrare pronte a servire il traffico. Amazon EC2 Auto Scaling potrebbe considerare tali istanze non integre e sostituirle.

Per aggiornare il periodo di tolleranza del controllo dell'integrità, utilizza l'opzione --health-check-grace-periodquando utilizzi update-auto-scaling-group, come nell'esempio seguente. Sostituisci 300 con il numero di secondi per mantenere le nuove istanze in servizio prima di terminarle se risultano non integre.

--health-check-grace-period 300

Per ulteriori informazioni, consulta Controlli dell'integrità per le istanze in un gruppo con dimensionamento automatico.

Modifica le zone di disponibilità

La modifica delle zone di disponibilità presenta alcune limitazioni da tenere presente. Per ulteriori informazioni, consulta Aggiunta di una zona di disponibilità.

Per modificare le zone di disponibilità per un Application Load Balancer o un Network Load Balancer
  1. Prima di modificare le zone di disponibilità del sistema di bilanciamento del carico, è consigliabile aggiornare innanzitutto le zone di disponibilità del gruppo con dimensionamento automatico per verificare la disponibilità dei tipi di istanza nelle zone specificate.

    Per aggiornare le zone di disponibilità per il gruppo Auto Scaling, utilizzare il comando seguente update-auto-scaling-group. Sostituisci la sottorete IDs di esempio IDs con le sottoreti nelle zone di disponibilità da abilitare. Le sottoreti specificate sostituiscono le sottoreti abilitate in precedenza. Sostituisci my-asg con il nome del tuo gruppo.

    aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \ --vpc-zone-identifier "subnet-41767929,subnet-cb663da2,subnet-8360a9e7"
  2. Utilizzate il describe-auto-scaling-groupscomando seguente per verificare che le istanze nelle nuove sottoreti siano state avviate. Se le istanze sono state avviate, viene visualizzato un elenco delle istanze e dei relativi stati. Sostituisci my-asg con il nome del tuo gruppo.

    aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-asg
  3. Usa il seguente comando set-subnets per specificare le sottoreti per il tuo sistema di bilanciamento del carico. Sostituisci la sottorete di esempio IDs con le sottoreti nelle zone IDs di disponibilità da abilitare. Puoi specificare una sola sottorete per ogni zona di disponibilità. Le sottoreti specificate sostituiscono le sottoreti abilitate in precedenza. Sostituisci my-lb-arn con l'ARN del tuo sistema di bilanciamento del carico.

    aws elbv2 set-subnets --load-balancer-arn my-lb-arn \ --subnets subnet-41767929 subnet-cb663da2 subnet-8360a9e7
Per modificare le zone di disponibilità per un Classic Load Balancer
  1. Prima di modificare le zone di disponibilità del sistema di bilanciamento del carico, è consigliabile aggiornare innanzitutto le zone di disponibilità del gruppo con dimensionamento automatico per verificare la disponibilità dei tipi di istanza nelle zone specificate.

    Per aggiornare le zone di disponibilità per il gruppo Auto Scaling, utilizzare il comando seguente update-auto-scaling-group. Sostituisci la sottorete IDs di esempio IDs con le sottoreti nelle zone di disponibilità da abilitare. Le sottoreti specificate sostituiscono le sottoreti abilitate in precedenza. Sostituisci my-asg con il nome del tuo gruppo.

    aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \ --vpc-zone-identifier "subnet-41767929,subnet-cb663da2"
  2. Utilizzate il describe-auto-scaling-groupscomando seguente per verificare che le istanze nelle nuove sottoreti siano state avviate. Se le istanze sono state avviate, viene visualizzato un elenco delle istanze e dei relativi stati. Sostituisci my-asg con il nome del tuo gruppo.

    aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-asg
  3. Usa il seguente comando attach-load-balancer-to-subnets per abilitare una nuova zona di disponibilità per il tuo Classic Load Balancer. Sostituisci gli ID di sottorete di esempio con gli ID delle sottoreti nella zona di disponibilità per abilitarli. Sostituisci my-lb con il nome del tuo sistema di bilanciamento del carico.

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

    Per disabilitare una zona di disponibilità, utilizzare il seguente comando -subnets. detach-load-balancer-from Sostituisci gli ID di sottorete di esempio con gli ID delle sottoreti nella zona di disponibilità per disabilitarli. Sostituisci my-lb con il nome del tuo sistema di bilanciamento del carico.

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

Scollega il tuo gruppo target o Classic Load Balancer

Il detach-traffic-sourcescomando seguente separa un gruppo target dal gruppo Auto Scaling quando non è più necessario.

Per l'opzione --auto-scaling-group-name, sostituisci my-asg con il nome del tuo gruppo. Per l'opzione --traffic-sources, sostituisci l'ARN di esempio con l'ARN di un gruppo di destinazione per un Application Load Balancer, un Network Load Balancer o un Gateway Load Balancer.

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

Per scollegare un Classic Load Balancer dal gruppo, specifica le opzioni --traffic-sources e --type, come nell'esempio seguente. Sostituisci my-classic-load-balancer con il nome di un Classic Load Balancer. Per l'opzione --type, specifica il valore di elb.

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

Rimuovi Elastic Load Balancing dai controlli dell'integrità

Per rimuovere i controlli di integrità di Elastic Load Balancing dal gruppo Auto Scaling, utilizzate il comando update-auto-scaling-groupseguente e EC2 specificatelo come valore per l'opzione. --health-check-type Sostituisci my-asg con il nome del tuo gruppo.

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

Per ulteriori informazioni, consulta Controlli dell'integrità per le istanze in un gruppo con dimensionamento automatico.

Comandi legacy

Gli esempi seguenti mostrano come utilizzare i comandi CLI legacy per collegare, scollegare e descrivere sistemi di bilanciamento del carico e gruppi target. Rimangono in questo documento come riferimento per tutti i clienti che desiderano utilizzarli. Continuiamo a supportare i comandi CLI legacy, ma ti consigliamo di utilizzare i nuovi comandi CLI "sorgenti di traffico", che possono collegare e scollegare più tipi di sorgenti di traffico. È possibile utilizzare sia i comandi CLI legacy che i comandi CLI "sorgenti di traffico" nello stesso gruppo con dimensionamento automatico.

Come collegare il tuo gruppo target

Il create-auto-scaling-groupcomando seguente crea un gruppo Auto Scaling con un gruppo target collegato. Specifica il nome della risorsa Amazon Resource Name (ARN) di un gruppo di destinazione per un Application Load Balancer, un Network Load Balancer o un 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

Il seguente comando attach-load-balancer-target-groups collega un gruppo target a un gruppo Auto Scaling esistente.

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"
Come collegare il proprio Classic Load Balancer

Il create-auto-scaling-groupcomando seguente crea un gruppo Auto Scaling con un Classic Load Balancer collegato.

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

Il attach-load-balancerscomando seguente collega il Classic Load Balancer specificato a un gruppo Auto Scaling esistente.

aws autoscaling attach-load-balancers --auto-scaling-group-name my-asg \ --load-balancer-names my-lb
Come descrivere gruppi target

Per descrivere i gruppi target associati a un gruppo di Auto Scaling, utilizzate il comando describe-load-balancer-target-groups. L'esempio seguente elenca i gruppi target per. my-asg

aws autoscaling describe-load-balancer-target-groups --auto-scaling-group-name my-asg
Per descrivere un Classic Load Balancer

Per descrivere i Classic Load Balancer associati a un gruppo Auto Scaling, utilizzate il comando. describe-load-balancers L'esempio seguente elenca i Classic Load Balancer per. my-asg

aws autoscaling describe-load-balancers --auto-scaling-group-name my-asg
Per scollegare un gruppo target

Il seguente comando detach-load-balancer-target-groups separa un gruppo target dal gruppo Auto Scaling quando non è più necessario.

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"
Come collegare un Classic Load Balancer

Il detach-load-balancerscomando seguente scollega un Classic Load Balancer dal gruppo Auto Scaling quando non è più necessario.

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