Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Untuk membuat template eksperimen, Anda harus menentukan satu atau beberapa tindakan. Untuk daftar tindakan yang telah ditentukan sebelumnya yang disediakan oleh AWS FIS, lihat. Referensi tindakan
Anda dapat menjalankan tindakan hanya sekali selama percobaan. Untuk menjalankan tindakan AWS FIS yang sama lebih dari sekali dalam percobaan yang sama, tambahkan ke template beberapa kali menggunakan nama yang berbeda.
Daftar Isi
Sintaks tindakan
Berikut ini adalah sintaks untuk tindakan.
{
"actions": {
"action_name
": {
"actionId": "aws:service
:action-type
",
"description": "string
",
"parameters": {
"name
": "value
"
},
"startAfter": ["action_name
", ...],
"targets": {
"ResourceType
": "target_name
"
}
}
}
}
Saat Anda mendefinisikan suatu tindakan, Anda memberikan yang berikut:
action_name
-
Sebuah nama untuk tindakan.
- actionId
- description
-
Deskripsi opsional.
- parameters
-
Parameter tindakan apa pun.
- startAfter
-
Tindakan apa pun yang harus diselesaikan sebelum tindakan ini dapat dimulai. Jika tidak, tindakan berjalan pada awal percobaan.
- targets
-
Target tindakan apa pun.
Sebagai contoh, lihat Contoh tindakan.
Pengidentifikasi tindakan
Setiap tindakan AWS FIS memiliki pengenal dengan format berikut:
aws:service-name
:action-type
Misalnya, tindakan berikut menghentikan EC2 instans Amazon target:
aws:ec2:stop-instances
Untuk daftar lengkap tindakan, lihatAWS FIS Referensi tindakan.
Parameter tindakan
Beberapa tindakan AWS FIS memiliki parameter tambahan yang spesifik untuk tindakan tersebut. Parameter ini digunakan untuk meneruskan informasi ke AWS FIS ketika tindakan dijalankan.
AWS FIS mendukung jenis kesalahan khusus menggunakan aws:ssm:send-command
tindakan, yang menggunakan Agen SSM dan dokumen perintah SSM untuk membuat kondisi kesalahan pada instance yang ditargetkan. aws:ssm:send-command
Tindakan tersebut mencakup documentArn
parameter yang mengambil Amazon Resource Name (ARN) dari dokumen SSM sebagai nilai. Anda menentukan nilai untuk parameter saat menambahkan tindakan ke templat eksperimen.
Untuk informasi selengkapnya tentang menentukan parameter untuk aws:ssm:send-command
tindakan, lihatGunakan aws:ssm:send-command tindakan.
Jika memungkinkan, Anda dapat memasukkan konfigurasi rollback (juga disebut sebagai tindakan posting) dalam parameter tindakan. Post action mengembalikan target ke keadaan sebelum tindakan dijalankan. Tindakan posting berjalan setelah waktu yang ditentukan dalam durasi tindakan. Tidak semua tindakan dapat mendukung tindakan posting. Misalnya, jika tindakan menghentikan EC2 instance Amazon, Anda tidak dapat memulihkan instance setelah dihentikan.
Target aksi
Tindakan berjalan pada sumber daya target yang Anda tentukan. Setelah Anda menentukan target, Anda dapat menentukan namanya ketika Anda menentukan tindakan.
"targets": {
"ResourceType
": "resource_name
"
}
AWS Tindakan FIS mendukung jenis sumber daya berikut untuk target tindakan:
-
AutoScalingGroups— Grup EC2 Auto Scaling Amazon
-
Ember - Ember Amazon S3
-
Cluster — Cluster Amazon EKS
-
Cluster - Cluster Amazon ECS atau cluster Amazon Aurora DB
-
DBInstances- Instans Amazon RDS DB
-
Tabel - Amazon DynamoDB tabel global
-
Contoh - Instans Amazon EC2
-
Nodegroups - Grup simpul Amazon EKS
-
Pod — Pod Kubernetes di Amazon EKS
-
ReplicationGroups— Grup ElastiCache Replikasi Redis
-
Peran - peran IAM
-
SpotInstances— Instans EC2 Spot Amazon
-
Subnet - Subnet VPC
-
Tugas - Tugas Amazon ECS
-
TransitGateways— Gerbang transit
-
Volume - Volume Amazon EBS
Sebagai contoh, lihat Contoh tindakan.
Durasi tindakan
Jika suatu tindakan menyertakan parameter yang dapat Anda gunakan untuk menentukan durasi tindakan, secara default, tindakan dianggap selesai hanya setelah durasi yang ditentukan telah berlalu. Jika Anda telah menetapkan opsi emptyTargetResolutionMode
eksperimenskip
, maka tindakan akan segera selesai dengan status 'dilewati' ketika tidak ada target yang diselesaikan. Misalnya, jika Anda menentukan durasi 5 menit, AWS FIS menganggap tindakan selesai setelah 5 menit. Kemudian memulai tindakan berikutnya, sampai semua tindakan selesai.
Durasi dapat berupa lamanya waktu kondisi tindakan dipertahankan atau lamanya waktu metrik dipantau. Misalnya, latensi disuntikkan selama durasi waktu yang ditentukan. Untuk jenis tindakan yang hampir seketika, seperti menghentikan instance, kondisi berhenti dipantau selama durasi waktu yang ditentukan.
Jika tindakan menyertakan tindakan posting dalam parameter tindakan, tindakan posting berjalan setelah tindakan selesai. Waktu yang diperlukan untuk menyelesaikan tindakan pasca dapat menyebabkan penundaan antara durasi tindakan yang ditentukan dan awal tindakan berikutnya (atau akhir percobaan, jika semua tindakan lain selesai).
Contoh tindakan
Berikut ini adalah contoh tindakan.
Contoh
Contoh: Stop EC2 instance
Tindakan berikut menghentikan EC2 instance yang diidentifikasi menggunakan target bernamatargetInstances
. Setelah dua menit, itu memulai ulang instance target.
"actions": {
"stopInstances
": {
"actionId": "aws:ec2:stop-instances",
"parameters": {
"startInstancesAfterDuration": "PT2M
"
},
"targets": {
"Instances": "targetInstances
"
}
}
}
Contoh: Interupsi Instance Spot
Tindakan berikut menghentikan Instans Spot yang diidentifikasi menggunakan target bernamatargetSpotInstances
. Itu menunggu dua menit sebelum mengganggu Instance Spot.
"actions": {
"interruptSpotInstances
": {
"actionId": "aws:ec2:send-spot-instance-interruptions",
"parameters": {
"durationBeforeInterruption": "PT2M
"
},
"targets": {
"SpotInstances": "targetSpotInstances
"
}
}
}
Contoh: Mengganggu lalu lintas jaringan
Tindakan berikut menyangkal lalu lintas antara subnet target dan subnet di Availability Zone lainnya.
"actions": {
"disruptAZConnectivity
": {
"actionId": "aws:network:disrupt-connectivity",
"parameters": {
"scope": "availability-zone",
"duration": "PT5M
"
},
"targets": {
"Subnets": "targetSubnets
"
}
}
}
Contoh: Menghentikan pekerja EKS
Tindakan berikut mengakhiri 50% EC2 instance di cluster EKS yang diidentifikasi menggunakan target bernama. targetNodeGroups
"actions": {
"terminateWorkers
": {
"actionId": "aws:eks:terminate-nodegroup-instances",
"parameters": {
"instanceTerminationPercentage": "50
"
},
"targets": {
"Nodegroups": "targetNodeGroups
"
}
}
}