Ada lebih banyak AWS SDK contoh yang tersedia di GitHub repo SDKContoh AWS Dokumen
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
AWS FIS contoh menggunakan AWS CLI
Contoh kode berikut menunjukkan cara melakukan tindakan dan mengimplementasikan skenario umum dengan menggunakan AWS Command Line Interface with AWS FIS.
Tindakan adalah kutipan kode dari program yang lebih besar dan harus dijalankan dalam konteks. Sementara tindakan menunjukkan cara memanggil fungsi layanan individual, Anda dapat melihat tindakan dalam konteks dalam skenario terkait.
Setiap contoh menyertakan tautan ke kode sumber lengkap, di mana Anda dapat menemukan instruksi tentang cara mengatur dan menjalankan kode dalam konteks.
Topik
Tindakan
Contoh kode berikut menunjukkan cara menggunakancreate-experiment-template
.
- AWS CLI
-
Untuk membuat template percobaan
create-experiment-template
Contoh berikut membuat template eksperimen di AWS FIS akun Anda.aws fis create-experiment-template \ --cli-input-json
file://myfile.json
Isi dari
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" }
Output:
{ "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": {} } }
Untuk informasi selengkapnya, lihat Membuat template eksperimen di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat CreateExperimentTemplate
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandelete-experiment-template
.
- AWS CLI
-
Untuk menghapus template percobaan
delete-experiment-template
Contoh berikut menghapus template percobaan yang ditentukan.aws fis delete-experiment-template \ --id
ABCDE1fgHIJkLmNop
Output:
{ "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" } }
Untuk informasi selengkapnya, lihat Menghapus templat eksperimen di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat DeleteExperimentTemplate
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanget-action
.
- AWS CLI
-
Untuk mendapatkan detail tindakan
get-action
Contoh berikut mendapatkan rincian dari tindakan yang ditentukan.aws fis get-action \ --id
aws:ec2:stop-instances
Output:
{ "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": {} } }
Untuk informasi selengkapnya, lihat Tindakan di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat GetAction
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanget-experiment-template
.
- AWS CLI
-
Untuk mendapatkan detail template eksperimen
get-experiment-template
Contoh berikut mendapatkan rincian template percobaan yang ditentukan.aws fis get-experiment-template \ --id
ABCDE1fgHIJkLmNop
Output:
{ "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" } } }
Untuk informasi selengkapnya, lihat Templat eksperimen di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat GetExperimentTemplate
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanget-experiment
.
- AWS CLI
-
Untuk mendapatkan detail eksperimen
get-experiment
Contoh berikut mendapatkan rincian percobaan yang ditentukan.aws fis get-experiment \ --id
ABC12DeFGhI3jKLMNOP
Output:
{ "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": {} } }
Untuk informasi selengkapnya, lihat Eksperimen AWS FIS di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat GetExperiment
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-actions
.
- AWS CLI
-
Untuk membuat daftar tindakan
list-actions
Contoh berikut mencantumkan tindakan yang tersedia.aws fis list-actions
Output:
{ "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": {} } ] }
Untuk informasi selengkapnya, lihat Tindakan di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat ListActions
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-experiment-templates
.
- AWS CLI
-
Untuk membuat daftar templat eksperimen
list-experiment-templates
Contoh berikut mencantumkan templat eksperimen di AWS akun Anda.aws fis list-experiment-templates
Output:
{ "experimentTemplates": [ { "id": "ABCDE1fgHIJkLmNop", "description": "myExperimentTemplate", "creationTime": 1616017191.124, "lastUpdateTime": 1616017191.124, "tags": { "key": "value" } } ] }
Untuk informasi selengkapnya, lihat Templat eksperimen di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat ListExperimentTemplates
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-experiments
.
- AWS CLI
-
Untuk membuat daftar eksperimen
list-experiments
Contoh berikut mencantumkan eksperimen di AWS akun Anda.aws fis list-experiments
Output:
{ "experiments": [ { "id": "ABCdeF1GHiJkLM23NO", "experimentTemplateId": "ABCDE1fgHIJkLmNop", "state": { "status": "running", "reason": "Experiment is running." }, "creationTime": 1616017341.197, "tags": { "key": "value" } } ] }
Untuk informasi selengkapnya, lihat Eksperimen di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat ListExperiments
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-tags-for-resource
.
- AWS CLI
-
Untuk membuat daftar tag untuk sumber daya
list-tags-for-resource
Contoh berikut mencantumkan tag untuk sumber daya yang ditentukan.aws fis list-tags-for-resource \ --resource-arn
arn:aws:fis:us-west-2:123456789012:experiment/ABC12DeFGhI3jKLMNOP
Output:
{ "tags": { "key1": "value1", "key2": "value2" } }
Untuk informasi selengkapnya, lihat Menandai AWS FIS sumber daya Anda di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat ListTagsForResource
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanstart-experiment
.
- AWS CLI
-
Untuk memulai percobaan
start-experiment
Contoh berikut memulai percobaan yang ditentukan.aws fis start-experiment \ --experiment-template-id
ABCDE1fgHIJkLmNop
Output:
{ "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": {} } }
Untuk informasi selengkapnya, lihat Eksperimen AWS FIS di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat StartExperiment
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanstop-experiment
.
- AWS CLI
-
Untuk menghentikan percobaan
stop-experiment
Contoh berikut menghentikan percobaan yang ditentukan agar tidak berjalan.aws fis stop-experiment \ --id
ABC12DeFGhI3jKLMNOP
Output:
{ "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": {} } }
Untuk informasi selengkapnya, lihat Eksperimen AWS FIS di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat StopExperiment
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakantag-resource
.
- AWS CLI
-
Untuk menandai sumber daya
tag-resource
Contoh berikut menandai sumber daya yang ditentukan.aws fis tag-resource \ --resource-arn
arn:aws:fis:us-west-2:123456789012:experiment/ABC12DeFGhI3jKLMNOP
\ --tagskey1=value1,key2=value2
Perintah ini tidak menghasilkan output.
Untuk informasi selengkapnya, lihat Menandai AWS FIS sumber daya Anda di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat TagResource
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanuntag-resource
.
- AWS CLI
-
Untuk menghapus tag sumber daya
untag-resource
Contoh berikut menghapus tag dari sumber daya yang ditentukan.aws fis untag-resource \ --resource-arn
arn:aws:fis:us-west-2:123456789012:experiment/ABC12DeFGhI3jKLMNOP
Perintah ini tidak menghasilkan output.
Untuk informasi selengkapnya, lihat Menandai AWS FIS sumber daya Anda di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat UntagResource
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanupdate-experiment-template
.
- AWS CLI
-
Untuk memperbarui template eksperimen
update-experiment-template
Contoh berikut memperbarui deskripsi template percobaan yang ditentukan.aws fis update-experiment-template \ --id
ABCDE1fgHIJkLmNop
\ ---descriptionmyExperimentTemplate
Output:
{ "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" } } }
Untuk informasi selengkapnya, lihat Memperbarui templat eksperimen di Panduan Pengguna Simulator Injeksi AWS Kesalahan.
-
Untuk API detailnya, lihat UpdateExperimentTemplate
di Referensi AWS CLI Perintah.
-