Weitere AWS SDK Beispiele sind im Repo AWS Doc SDK Examples
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.
AWS FIS Beispiele mit AWS CLI
Die folgenden Codebeispiele zeigen Ihnen, wie Sie mithilfe von AWS Command Line Interface with Aktionen ausführen und allgemeine Szenarien implementieren AWS FIS.
Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Aktionen zeigen Ihnen zwar, wie Sie einzelne Servicefunktionen aufrufen, aber Sie können Aktionen im Kontext der zugehörigen Szenarien sehen.
Jedes Beispiel enthält einen Link zum vollständigen Quellcode, in dem Sie Anweisungen zum Einrichten und Ausführen des Codes im Kontext finden.
Themen
Aktionen
Das folgende Codebeispiel zeigt die Verwendungcreate-experiment-template
.
- AWS CLI
-
Um eine Experimentvorlage zu erstellen
Im folgenden
create-experiment-template
Beispiel wird eine Versuchsvorlage in Ihrem AWS FIS Konto erstellt.aws fis create-experiment-template \ --cli-input-json
file://myfile.json
Inhalt von
myfile.json
:{ "description": "experimentTemplate", "stopConditions": [ { "source": "aws:cloudwatch:alarm", "value": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:alarmName" } ], "targets": { "Instances-Target-1": { "resourceType": "aws:ec2:instance", "resourceArns": [ "arn:aws:ec2:us-west-2:123456789012:instance/i-12a3b4c56d78e9012" ], "selectionMode": "ALL" } }, "actions": { "reboot": { "actionId": "aws:ec2:reboot-instances", "description": "reboot", "parameters": {}, "targets": { "Instances": "Instances-Target-1" } } }, "roleArn": "arn:aws:iam::123456789012:role/myRole" }
Ausgabe:
{ "experimentTemplate": { "id": "ABCDE1fgHIJkLmNop", "description": "experimentTemplate", "targets": { "Instances-Target-1": { "resourceType": "aws:ec2:instance", "resourceArns": [ "arn:aws:ec2:us-west-2:123456789012:instance/i-12a3b4c56d78e9012" ], "selectionMode": "ALL" } }, "actions": { "reboot": { "actionId": "aws:ec2:reboot-instances", "description": "reboot", "parameters": {}, "targets": { "Instances": "Instances-Target-1" } } }, "stopConditions": [ { "source": "aws:cloudwatch:alarm", "value": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:alarmName" } ], "creationTime": 1616434850.659, "lastUpdateTime": 1616434850.659, "roleArn": "arn:aws:iam::123456789012:role/myRole", "tags": {} } }
Weitere Informationen finden Sie unter Erstellen einer Versuchsvorlage im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie CreateExperimentTemplate
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungdelete-experiment-template
.
- AWS CLI
-
Um eine Experimentvorlage zu löschen
Im folgenden
delete-experiment-template
Beispiel wird die angegebene Experimentvorlage gelöscht.aws fis delete-experiment-template \ --id
ABCDE1fgHIJkLmNop
Ausgabe:
{ "experimentTemplate": { "id": "ABCDE1fgHIJkLmNop", "description": "myExperimentTemplate", "targets": { "Instances-Target-1": { "resourceType": "aws:ec2:instance", "resourceArns": [ "arn:aws:ec2:us-west-2:123456789012:instance/i-12a3b4c56d78e9012" ], "selectionMode": "ALL" } }, "actions": { "testaction": { "actionId": "aws:ec2:stop-instances", "parameters": {}, "targets": { "Instances": "Instances-Target-1" } } }, "stopConditions": [ { "source": "none" } ], "creationTime": 1616017191.124, "lastUpdateTime": 1616017859.607, "roleArn": "arn:aws:iam::123456789012:role/FISRole" } }
Weitere Informationen finden Sie unter Löschen einer Experimentvorlage im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie DeleteExperimentTemplate
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungget-action
.
- AWS CLI
-
Um Details zur Aktion zu erhalten
Im folgenden
get-action
Beispiel werden die Details der angegebenen Aktion abgerufen.aws fis get-action \ --id
aws:ec2:stop-instances
Ausgabe:
{ "action": { "id": "aws:ec2:stop-instances", "description": "Stop the specified EC2 instances.", "parameters": { "startInstancesAfterDuration": { "description": "The time to wait before restarting the instances (ISO 8601 duration).", "required": false } }, "targets": { "Instances": { "resourceType": "aws:ec2:instance" } }, "tags": {} } }
Weitere Informationen finden Sie unter Aktionen im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie GetAction
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungget-experiment-template
.
- AWS CLI
-
Um Details zur Experimentvorlage zu erhalten
Im folgenden
get-experiment-template
Beispiel werden die Details der angegebenen Experimentvorlage abgerufen.aws fis get-experiment-template \ --id
ABCDE1fgHIJkLmNop
Ausgabe:
{ "experimentTemplate": { "id": "ABCDE1fgHIJkLmNop", "description": "myExperimentTemplate", "targets": { "Instances-Target-1": { "resourceType": "aws:ec2:instance", "resourceArns": [ "arn:aws:ec2:us-west-2:123456789012:instance/i-12a3b4c56d78e9012" ], "selectionMode": "ALL" } }, "actions": { "testaction": { "actionId": "aws:ec2:stop-instances", "parameters": {}, "targets": { "Instances": "Instances-Target-1" } } }, "stopConditions": [ { "source": "none" } ], "creationTime": 1616017191.124, "lastUpdateTime": 1616017331.51, "roleArn": "arn:aws:iam::123456789012:role/FISRole", "tags": { "key: "value" } } }
Weitere Informationen finden Sie unter Versuchsvorlagen im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie GetExperimentTemplate
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungget-experiment
.
- AWS CLI
-
Um Details zum Experiment zu erhalten
Im folgenden
get-experiment
Beispiel werden die Details des angegebenen Experiments abgerufen.aws fis get-experiment \ --id
ABC12DeFGhI3jKLMNOP
Ausgabe:
{ "experiment": { "id": "ABC12DeFGhI3jKLMNOP", "experimentTemplateId": "ABCDE1fgHIJkLmNop", "roleArn": "arn:aws:iam::123456789012:role/myRole", "state": { "status": "completed", "reason": "Experiment completed." }, "targets": { "Instances-Target-1": { "resourceType": "aws:ec2:instance", "resourceArns": [ "arn:aws:ec2:us-west-2:123456789012:instance/i-12a3b4c56d78e9012" ], "selectionMode": "ALL" } }, "actions": { "reboot": { "actionId": "aws:ec2:reboot-instances", "parameters": {}, "targets": { "Instances": "Instances-Target-1" }, "state": { "status": "completed", "reason": "Action was completed." } } }, "stopConditions": [ { "source": "none" } ], "creationTime": 1616432509.662, "startTime": 1616432509.962, "endTime": 1616432522.307, "tags": {} } }
Weitere Informationen finden Sie unter Experimente für AWS FIS im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie GetExperiment
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendunglist-actions
.
- AWS CLI
-
Um Aktionen aufzulisten
Das folgende
list-actions
Beispiel listet die verfügbaren Aktionen auf.aws fis list-actions
Ausgabe:
{ "actions": [ { "id": "aws:ec2:reboot-instances", "description": "Reboot the specified EC2 instances.", "targets": { "Instances": { "resourceType": "aws:ec2:instance" } }, "tags": {} }, { "id": "aws:ec2:stop-instances", "description": "Stop the specified EC2 instances.", "targets": { "Instances": { "resourceType": "aws:ec2:instance" } }, "tags": {} }, { "id": "aws:ec2:terminate-instances", "description": "Terminate the specified EC2 instances.", "targets": { "Instances": { "resourceType": "aws:ec2:instance" } }, "tags": {} }, { "id": "aws:ecs:drain-container-instances", "description": "Drain percentage of underlying EC2 instances on an ECS cluster.", "targets": { "Clusters": { "resourceType": "aws:ecs:cluster" } }, "tags": {} }, { "id": "aws:eks:terminate-nodegroup-instances", "description": "Terminates a percentage of the underlying EC2 instances in an EKS cluster.", "targets": { "Nodegroups": { "resourceType": "aws:eks:nodegroup" } }, "tags": {} }, { "id": "aws:fis:inject-api-internal-error", "description": "Cause an AWS service to return internal error responses for specific callers and operations.", "targets": { "Roles": { "resourceType": "aws:iam:role" } }, "tags": {} }, { "id": "aws:fis:inject-api-throttle-error", "description": "Cause an AWS service to return throttled responses for specific callers and operations.", "targets": { "Roles": { "resourceType": "aws:iam:role" } }, "tags": {} }, { "id": "aws:fis:inject-api-unavailable-error", "description": "Cause an AWS service to return unavailable error responses for specific callers and operations.", "targets": { "Roles": { "resourceType": "aws:iam:role" } }, "tags": {} }, { "id": "aws:fis:wait", "description": "Wait for the specified duration. Stop condition monitoring will continue during this time.", "tags": {} }, { "id": "aws:rds:failover-db-cluster", "description": "Failover a DB Cluster to one of the replicas.", "targets": { "Clusters": { "resourceType": "aws:rds:cluster" } }, "tags": {} }, { "id": "aws:rds:reboot-db-instances", "description": "Reboot the specified DB instances.", "targets": { "DBInstances": { "resourceType": "aws:rds:db" } }, "tags": {} }, { "id": "aws:ssm:send-command", "description": "Run the specified SSM document.", "targets": { "Instances": { "resourceType": "aws:ec2:instance" } }, "tags": {} } ] }
Weitere Informationen finden Sie unter Aktionen im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie ListActions
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendunglist-experiment-templates
.
- AWS CLI
-
Um Versuchsvorlagen aufzulisten
Das folgende
list-experiment-templates
Beispiel listet die Versuchsvorlagen in Ihrem AWS Konto auf.aws fis list-experiment-templates
Ausgabe:
{ "experimentTemplates": [ { "id": "ABCDE1fgHIJkLmNop", "description": "myExperimentTemplate", "creationTime": 1616017191.124, "lastUpdateTime": 1616017191.124, "tags": { "key": "value" } } ] }
Weitere Informationen finden Sie unter Experimentvorlagen im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie ListExperimentTemplates
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendunglist-experiments
.
- AWS CLI
-
Um Experimente aufzulisten
Das folgende
list-experiments
Beispiel listet die Experimente in Ihrem AWS Konto auf.aws fis list-experiments
Ausgabe:
{ "experiments": [ { "id": "ABCdeF1GHiJkLM23NO", "experimentTemplateId": "ABCDE1fgHIJkLmNop", "state": { "status": "running", "reason": "Experiment is running." }, "creationTime": 1616017341.197, "tags": { "key": "value" } } ] }
Weitere Informationen finden Sie unter Experimente im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie ListExperiments
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendunglist-tags-for-resource
.
- AWS CLI
-
Um Tags für eine Ressource aufzulisten
Das folgende
list-tags-for-resource
Beispiel listet die Tags für die angegebene Ressource auf.aws fis list-tags-for-resource \ --resource-arn
arn:aws:fis:us-west-2:123456789012:experiment/ABC12DeFGhI3jKLMNOP
Ausgabe:
{ "tags": { "key1": "value1", "key2": "value2" } }
Weitere Informationen finden Sie unter Taggen Ihrer AWS FIS Ressourcen im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie ListTagsForResource
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungstart-experiment
.
- AWS CLI
-
Um ein Experiment zu starten
Im folgenden
start-experiment
Beispiel wird das angegebene Experiment gestartet.aws fis start-experiment \ --experiment-template-id
ABCDE1fgHIJkLmNop
Ausgabe:
{ "experiment": { "id": "ABC12DeFGhI3jKLMNOP", "experimentTemplateId": "ABCDE1fgHIJkLmNop", "roleArn": "arn:aws:iam::123456789012:role/myRole", "state": { "status": "initiating", "reason": "Experiment is initiating." }, "targets": { "Instances-Target-1": { "resourceType": "aws:ec2:instance", "resourceArns": [ "arn:aws:ec2:us-west-2:123456789012:instance/i-12a3b4c56d78e9012" ], "selectionMode": "ALL" } }, "actions": { "reboot": { "actionId": "aws:ec2:reboot-instances", "parameters": {}, "targets": { "Instances": "Instances-Target-1" }, "state": { "status": "pending", "reason": "Initial state" } } }, "stopConditions": [ { "source": "none" } ], "creationTime": 1616432464.025, "startTime": 1616432464.374, "tags": {} } }
Weitere Informationen finden Sie unter Experimente für AWS FIS im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie StartExperiment
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungstop-experiment
.
- AWS CLI
-
Um ein Experiment zu beenden
Im folgenden
stop-experiment
Beispiel wird die Ausführung des angegebenen Experiments beendet.aws fis stop-experiment \ --id
ABC12DeFGhI3jKLMNOP
Ausgabe:
{ "experiment": { "id": "ABC12DeFGhI3jKLMNOP", "experimentTemplateId": "ABCDE1fgHIJkLmNop", "roleArn": "arn:aws:iam::123456789012:role/myRole", "state": { "status": "stopping", "reason": "Stopping Experiment." }, "targets": { "Instances-Target-1": { "resourceType": "aws:ec2:instance", "resourceArns": [ "arn:aws:ec2:us-west-2:123456789012:instance/i-12a3b4c56d78e9012" ], "selectionMode": "ALL" } }, "actions": { "reboot": { "actionId": "aws:ec2:reboot-instances", "parameters": {}, "targets": { "Instances": "Instances-Target-1" }, "startAfter": [ "wait" ], "state": { "status": "pending", "reason": "Initial state." } }, "wait": { "actionId": "aws:fis:wait", "parameters": { "duration": "PT5M" }, "state": { "status": "running", "reason": "" } } }, "stopConditions": [ { "source": "none" } ], "creationTime": 1616432680.927, "startTime": 1616432681.177, "tags": {} } }
Weitere Informationen finden Sie unter Experimente für AWS FIS im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie StopExperiment
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungtag-resource
.
- AWS CLI
-
Um eine Ressource zu taggen
Im folgenden
tag-resource
Beispiel wird die angegebene Ressource markiert.aws fis tag-resource \ --resource-arn
arn:aws:fis:us-west-2:123456789012:experiment/ABC12DeFGhI3jKLMNOP
\ --tagskey1=value1,key2=value2
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen finden Sie unter Taggen Ihrer AWS FIS Ressourcen im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie TagResource
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendunguntag-resource
.
- AWS CLI
-
Um die Markierung einer Ressource aufzuheben
Im folgenden
untag-resource
Beispiel werden die Tags aus der angegebenen Ressource entfernt.aws fis untag-resource \ --resource-arn
arn:aws:fis:us-west-2:123456789012:experiment/ABC12DeFGhI3jKLMNOP
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen finden Sie unter Taggen Ihrer AWS FIS Ressourcen im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie UntagResource
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungupdate-experiment-template
.
- AWS CLI
-
Um eine Experimentvorlage zu aktualisieren
Im folgenden
update-experiment-template
Beispiel wird die Beschreibung der angegebenen Experimentvorlage aktualisiert.aws fis update-experiment-template \ --id
ABCDE1fgHIJkLmNop
\ ---descriptionmyExperimentTemplate
Ausgabe:
{ "experimentTemplate": { "id": "ABCDE1fgHIJkLmNop", "description": "myExperimentTemplate", "targets": { "Instances-Target-1": { "resourceType": "aws:ec2:instance", "resourceArns": [ "arn:aws:ec2:us-west-2:123456789012:instance/i-12a3b4c56d78e9012" ], "selectionMode": "ALL" } }, "actions": { "testaction": { "actionId": "aws:ec2:stop-instances", "parameters": {}, "targets": { "Instances": "Instances-Target-1" } } }, "stopConditions": [ { "source": "none" } ], "creationTime": 1616017191.124, "lastUpdateTime": 1616017859.607, "roleArn": "arn:aws:iam::123456789012:role/FISRole", "tags": { "key": "value" } } }
Weitere Informationen finden Sie unter Aktualisieren einer Experimentvorlage im AWS Fault Injection Simulator-Benutzerhandbuch.
-
APIEinzelheiten finden Sie UpdateExperimentTemplate
in der AWS CLI Befehlsreferenz.
-