Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Beispiele für die Arbeit mit Elastic Load Balancing unter Verwendung der AWS CLI
Verwenden Sie AWS Command Line Interface (AWS CLI), um Load Balancer und Zielgruppen anzuhängen, zu trennen und zu beschreiben, Elastic Load Balancing Health Checks hinzuzufügen und zu entfernen und zu ändern, welche Availability Zones aktiviert sind.
Dieses Thema zeigt Beispiele für AWS CLI Befehle, die allgemeine Aufgaben für Amazon EC2 Auto Scaling ausführen.
Wichtig
Inhalt
Hängen Sie Ihre Zielgruppe oder Ihren Classic Load Balancer an.
Verwenden Sie den folgenden create-auto-scaling-group
Ersetzen Sie die Beispielwerte für --auto-scaling-group-name, --vpc-zone-identifier, --min-size und --max-size. Ersetzen Sie für die Option --launch-template und my-launch-template durch den Namen und die Version einer Startvorlage für Ihre Auto-Scaling-Gruppe. Für die Option 1--traffic-sources ersetzen Sie den Beispiel-ARN durch den ARN einer Zielgruppe für einen Application Load Balancer, Network Load Balancer oder Gateway Load Balancer.
aws autoscaling create-auto-scaling-group --auto-scaling-group-namemy-asg\ --launch-template LaunchTemplateName=my-launch-template,Version='1' \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \ --min-size1--max-size5\ --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE1"
Verwenden Sie den attach-traffic-sources
Mit dem folgenden Befehl fügen Sie derselben Gruppe eine weitere Zielgruppe hinzu.
aws autoscaling attach-traffic-sources --auto-scaling-group-namemy-asg\ --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE2"
Um Ihrer Gruppe einen Classic Load Balancer hinzuzufügen, geben Sie alternativ die Optionen --traffic-sources und --type an, wenn Sie create-auto-scaling-group oder attach-traffic-sources verwenden, wie im folgenden Beispiel. Ersetzen Sie durch den Namen eines Classic Load Balancer. Geben Sie für die Option my-classic-load-balancer--type einen Wert von an.elb
--traffic-sources "Identifier=my-classic-load-balancer" --type elb
Beschreiben Sie Ihre Zielgruppen oder Classic Load Balancers.
Verwenden Sie den folgenden describe-traffic-sources durch den Namen Ihrer Gruppe. my-asg
aws autoscaling describe-traffic-sources --auto-scaling-group-namemy-asg
Das Beispiel gibt den ARN der Elastic Load Balancing-Zielgruppen zurück, die Sie der Auto-Scaling-Gruppe hinzugefügt haben.
{
"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"
}
]
}
Eine Erklärung des State-Felds in der Ausgabe finden Sie unterÜberprüfen des Anhangsstatus Ihres Load Balancers.
Hinzufügen von Elastic Load Balancing-Zustandsprüfungen
Um Elastic Load Balancing Health Checks zu den Integritätsprüfungen hinzuzufügen, die Ihre Auto Scaling Scaling-Gruppe an Instances durchführt, verwenden Sie den folgenden update-auto-scaling-group als Wert für die ELB--health-check-type Option an. Ersetzen Sie durch den Namen Ihrer Gruppe.my-asg
aws autoscaling update-auto-scaling-group --auto-scaling-group-namemy-asg\ --health-check-type "ELB"
Neue Instances benötigen oft Zeit für eine kurze Aufwärmphase, bevor sie eine Zustandsprüfung bestehen können. Wenn die Übergangszeit nicht ausreichend Aufwärmzeit bietet, scheinen die Instances möglicherweise nicht bereit zu sein, Traffic zu verarbeiten. Amazon EC2 Auto Scaling betrachtet diese Instances möglicherweise als fehlerhaft und ersetzt sie.
Verwenden Sie zum Aktualisieren der Frist für die Zustandsprüfung die Option --health-check-grace-period, wenn Sie update-auto-scaling-group verwenden, wie im folgenden Beispiel. 300Ersetzen Sie es durch die Anzahl der Sekunden, um neue Instances in Betrieb zu halten, bevor sie beendet werden, wenn sie sich als fehlerhaft herausstellen.
--health-check-grace-period300
Weitere Informationen finden Sie unter Zustandsprüfungen für Instances in einer Auto-Scaling-Gruppe.
Ändern Ihrer Availability Zones
Für das Ändern Ihrer Availability Zones gelten einige Einschränkungen, die Sie kennen sollten. Weitere Informationen finden Sie unter Fügen Sie eine Availability Zone hinzu.
So ändern Sie die Availability Zones für einen Application Load Balancer oder Network Load Balancer
-
Bevor Sie die Availability Zones des Load Balancers ändern, empfiehlt es sich, zunächst die Availability Zones der Auto-Scaling-Gruppe zu aktualisieren, um sicherzustellen, dass Ihre Instance-Typen in den angegebenen Zonen verfügbar sind.
Verwenden Sie den folgenden update-auto-scaling-group
Befehl, um die Availability Zones für Ihre Auto Scaling Scaling-Gruppe zu aktualisieren. Ersetzen Sie das Beispielsubnetz IDs durch das IDs der Subnetze in den Availability Zones, die aktiviert werden sollen. Die angegebenen Subnetze ersetzen die zuvor aktivierten Subnetze. Ersetzen Sie durch den Namen Ihrer Gruppe.my-asgaws autoscaling update-auto-scaling-group --auto-scaling-group-namemy-asg\ --vpc-zone-identifier "subnet-41767929,subnet-cb663da2,subnet-8360a9e7" -
Verwenden Sie den folgenden describe-auto-scaling-groups
Befehl, um zu überprüfen, ob die Instances in den neuen Subnetzen gestartet wurden. Wenn die Instances gestartet wurden, wird eine Liste der Instances und deren Status angezeigt. Ersetzen Sie durch den Namen Ihrer Gruppe.my-asgaws autoscaling describe-auto-scaling-groups --auto-scaling-group-namemy-asg -
Verwenden Sie den folgenden Befehl set-subnets
, um die Subnetze für Ihren Load Balancer anzugeben. Ersetzen Sie das Beispielsubnetz IDs durch das IDs der Subnetze in den Availability Zones, um es zu aktivieren. Sie können nur ein Subnetz pro Availability Zone angeben. Die angegebenen Subnetze ersetzen die zuvor aktivierten Subnetze. Ersetzen Sie durch den ARN Ihres Load Balancers.my-lb-arnaws elbv2 set-subnets --load-balancer-arnmy-lb-arn\ --subnetssubnet-41767929subnet-cb663da2subnet-8360a9e7
Ändern der Availability Zones für einen Classic Load Balancer
-
Bevor Sie die Availability Zones des Load Balancers ändern, empfiehlt es sich, zunächst die Availability Zones der Auto-Scaling-Gruppe zu aktualisieren, um sicherzustellen, dass Ihre Instance-Typen in den angegebenen Zonen verfügbar sind.
Verwenden Sie den folgenden update-auto-scaling-group
Befehl, um die Availability Zones für Ihre Auto Scaling Scaling-Gruppe zu aktualisieren. Ersetzen Sie das Beispielsubnetz IDs durch das IDs der Subnetze in den Availability Zones, die aktiviert werden sollen. Die angegebenen Subnetze ersetzen die zuvor aktivierten Subnetze. Ersetzen Sie durch den Namen Ihrer Gruppe.my-asgaws autoscaling update-auto-scaling-group --auto-scaling-group-namemy-asg\ --vpc-zone-identifier "subnet-41767929,subnet-cb663da2" -
Verwenden Sie den folgenden describe-auto-scaling-groups
Befehl, um zu überprüfen, ob die Instances in den neuen Subnetzen gestartet wurden. Wenn die Instances gestartet wurden, wird eine Liste der Instances und deren Status angezeigt. Ersetzen Sie durch den Namen Ihrer Gruppe.my-asgaws autoscaling describe-auto-scaling-groups --auto-scaling-group-namemy-asg -
Verwenden Sie den folgenden Befehl attach-load-balancer-to-subnets
, um eine neue Availability Zone für Ihren Classic Load Balancer zu aktivieren. Ersetzen Sie zum Aktivieren die Beispiel-Subnetz-ID durch die ID des Subnetzes für die Availability Zone. Ersetzen Sie durch den Namen Ihres Load Balancers.my-lbaws elb attach-load-balancer-to-subnets --load-balancer-namemy-lb\ --subnetssubnet-cb663da2Verwenden Sie den folgenden detach-load-balancer-from Befehl -subnets, um eine Availability Zone zu deaktivieren.
Ersetzen Sie zum Deaktivieren die Beispiel-Subnetz-ID durch die ID des Subnetzes für die Availability Zone. Ersetzen Sie durch den Namen Ihres Load Balancers.my-lbaws elb detach-load-balancer-from-subnets --load-balancer-namemy-lb\ --subnetssubnet-8360a9e7
Trennen Sie Ihre Zielgruppe oder Ihren Classic Load Balancer.
Der folgende detach-traffic-sources
Ersetzen Sie für die Option --auto-scaling-group-name durch den Namen Ihrer Gruppe. Für die Option my-asg--traffic-sources ersetzen Sie den Beispiel-ARN durch den ARN einer Zielgruppe für einen Application Load Balancer, Network Load Balancer oder Gateway Load Balancer.
aws autoscaling detach-traffic-sources --auto-scaling-group-namemy-asg\ --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"
Um einen Classic Load Balancer von Ihrer Gruppe zu trennen, geben Sie die Optionen --traffic-sources und --type an, wie im folgenden Beispiel. Ersetzen Sie durch den Namen eines Classic Load Balancer. Geben Sie für die Option my-classic-load-balancer--type einen Wert von an.elb
--traffic-sources "Identifier=my-classic-load-balancer" --type elb
Entfernen von Elastic Load Balancing-Zustandsprüfungen
Um Elastic Load Balancing Health Checks aus Ihrer Auto Scaling Scaling-Gruppe zu entfernen, verwenden Sie den folgenden update-auto-scaling-group als Wert für die EC2--health-check-type Option an. Ersetzen Sie durch den Namen Ihrer Gruppe. my-asg
aws autoscaling update-auto-scaling-group --auto-scaling-group-namemy-asg\ --health-check-type "EC2"
Weitere Informationen finden Sie unter Zustandsprüfungen für Instances in einer Auto-Scaling-Gruppe.
Legacybefehle
Die folgenden Beispiele beschreiben, wie Sie Legacy-CLI-Befehle verwenden können, um Load Balancer und Zielgruppen anzufügen, zu trennen und zu beschreiben. Sie bleiben in diesem Dokument als Referenz für alle Kunden, die sie weiterhin verwenden möchten. Wir unterstützen weiterhin die alten CLI-Befehle, empfehlen jedoch, die neuen CLI-Befehle für „Trafficquellen“ zu verwenden, mit denen mehrere Datenverkehrsquellen-Typen angehängt und getrennt werden können. Sie können sowohl die Legacy-CLI-Befehle als auch die CLI-Befehle für „Trafficquellen“ in derselben Auto-Scaling-Gruppe verwenden.
Fügen Sie Ihre Zielgruppe wie folgt hinzu:
Der folgende create-auto-scaling-group
aws autoscaling create-auto-scaling-group --auto-scaling-group-namemy-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-size1--max-size5
Mit dem folgenden Befehl attach-load-balancer-target-groups
aws autoscaling attach-load-balancer-target-groups --auto-scaling-group-namemy-asg\ --target-group-arns "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"
Anhängen Ihres Classic Load Balancers
Der folgende create-auto-scaling-group
aws autoscaling create-auto-scaling-group --auto-scaling-group-namemy-asg\ --launch-configuration-namemy-launch-config\ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \ --load-balancer-names "my-load-balancer" \ --min-size1--max-size5
Der folgende attach-load-balancers
aws autoscaling attach-load-balancers --auto-scaling-group-namemy-asg\ --load-balancer-namesmy-lb
Beschreiben von Zielgruppen
Verwenden Sie den Befehl -groups, um die Zielgruppen zu beschreiben, die describe-load-balancer-target einer Auto Scaling Scaling-Gruppe zugeordnet sind.my-asg auf.
aws autoscaling describe-load-balancer-target-groups --auto-scaling-group-namemy-asg
Beschreiben eines Classic Load Balancers
Verwenden Sie den describe-load-balancersmy-asg
aws autoscaling describe-load-balancers --auto-scaling-group-namemy-asg
Trennen Sie eine Zielgruppe wie folgt:
Der folgende Befehl detach-load-balancer-target-groups
aws autoscaling detach-load-balancer-target-groups --auto-scaling-group-namemy-asg\ --target-group-arns "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"
Trennen eines Classic Load Balancers
Mit dem folgenden detach-load-balancers
aws autoscaling detach-load-balancers --auto-scaling-group-namemy-asg\ --load-balancer-namesmy-lb