Gunakan SSM dokumen Systems Manager dengan AWS FIS - AWS Layanan Injeksi Kesalahan

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Gunakan SSM dokumen Systems Manager dengan AWS FIS

AWS FISmendukung jenis kesalahan khusus melalui AWS Systems Manager SSMAgen dan AWS FIStindakanaws:ssm:send-command. SSMDokumen (SSMdokumen) Systems Manager yang telah dikonfigurasi sebelumnya yang dapat digunakan untuk membuat tindakan injeksi kesalahan umum tersedia sebagai publik AWS dokumen yang dimulai dengan awalan AWSFIS -.

SSMAgen adalah perangkat lunak Amazon yang dapat diinstal dan dikonfigurasi di EC2 instans Amazon, server lokal, atau mesin virtual ()VMs. Hal ini memungkinkan Systems Manager untuk mengelola sumber daya ini. Agen memproses permintaan dari Systems Manager, dan kemudian menjalankannya seperti yang ditentukan dalam permintaan. Anda dapat menyertakan SSM dokumen Anda sendiri untuk menyuntikkan kesalahan khusus, atau referensi salah satu dokumen milik Amazon publik.

Persyaratan

Untuk tindakan yang mengharuskan SSM Agen menjalankan aksi pada target, Anda harus memastikan hal-hal berikut:

Gunakan aws:ssm:send-command tindakan

SSMDokumen menentukan tindakan yang dilakukan Systems Manager pada instans terkelola Anda. Systems Manager menyertakan sejumlah dokumen yang telah dikonfigurasi sebelumnya, atau Anda dapat membuatnya sendiri. Untuk informasi selengkapnya tentang membuat SSM dokumen Anda sendiri, lihat Membuat dokumen Systems Manager di AWS Systems Manager Panduan Pengguna. Untuk informasi selengkapnya tentang SSM dokumen secara umum, lihat AWS Systems Manager dokumen di AWS Systems Manager Panduan Pengguna.

AWS FISmenyediakan SSM dokumen yang telah dikonfigurasi sebelumnya. Anda dapat melihat dokumen yang telah dikonfigurasi sebelumnya di bawah SSM Dokumen di AWS Systems Manager konsol: https://console.aws.amazon.com/systems-manager/dokumen. Anda juga dapat memilih dari pilihan dokumen pra-konfigurasi di AWS FISkonsol. Untuk informasi selengkapnya, lihat Pra-konfigurasi AWS FISSSMdokumen.

Untuk menggunakan SSM dokumen di AWS FISpercobaan, Anda dapat menggunakan aws:ssm:send-command tindakan. Tindakan ini mengambil dan menjalankan SSM dokumen yang ditentukan pada instance target Anda.

Saat Anda menggunakan aws:ssm:send-command tindakan dalam templat eksperimen, Anda harus menentukan parameter tambahan untuk tindakan tersebut, termasuk yang berikut ini:

  • documentArn – Wajib. Nama Sumber Daya Amazon (ARN) SSM dokumen.

  • documentParameters— Bersyarat. Parameter yang diperlukan dan opsional yang diterima SSM dokumen. Formatnya adalah JSON objek dengan kunci yang merupakan string dan nilai yang berupa string atau array string.

  • documentVersion – Opsional. Versi SSM dokumen yang akan dijalankan.

Anda dapat melihat informasi untuk SSM dokumen (termasuk parameter untuk dokumen) dengan menggunakan konsol Systems Manager atau baris perintah.

Untuk melihat informasi tentang SSM dokumen menggunakan konsol
  1. Buka AWS Systems Manager konsol di https://console.aws.amazon.com/systems-manager/.

  2. Di panel navigasi, pilih Dokumen.

  3. Pilih dokumen, dan pilih tab Detail.

Untuk melihat informasi tentang SSM dokumen menggunakan baris perintah

Gunakan SSM perintah deskripsi-dokumen.

Pra-konfigurasi AWS FISSSMdokumen

Anda dapat menggunakan pra-konfigurasi AWS FISSSMdokumen dengan aws:ssm:send-command tindakan dalam templat eksperimen Anda.

Persyaratan
  • SSMDokumen pra-konfigurasi yang disediakan oleh AWS FIShanya didukung pada sistem operasi berikut:

    • Amazon Linux 2023, Amazon Linux 2, Amazon Linux

    • Ubuntu

    • RHEL7, 8, 9

    • CentOS 8, 9

  • SSMDokumen pra-konfigurasi yang disediakan oleh AWS FIShanya didukung pada EC2 instance. Mereka tidak didukung pada jenis node terkelola lainnya, seperti server lokal.

Untuk menggunakan SSM dokumen-dokumen ini dalam eksperimen pada ECS tugas, gunakan yang sesuaiECSTindakan Amazon. Misalnya, aws:ecs:task-cpu-stress tindakan menggunakan AWSFIS-Run-CPU-Stress dokumen.

Perbedaan antara durasi aksi dan DurationSeconds dalam AWS FISSSMdokumen

Beberapa SSM dokumen membatasi waktu eksekusi mereka sendiri, misalnya DurationSeconds parameter digunakan oleh beberapa pra-konfigurasi AWS FISSSMdokumen. Akibatnya, Anda perlu menentukan dua durasi independen di AWS FISdefinisi tindakan:

  • Action duration: Untuk eksperimen dengan satu tindakan, durasi aksi setara dengan durasi percobaan. Dengan beberapa tindakan, durasi eksperimen bergantung pada durasi tindakan individu dan urutan pelaksanaannya. AWS FISmemonitor setiap tindakan sampai durasi aksinya berlalu.

  • Parameter dokumenDurationSeconds: Durasi, ditentukan dalam detik, di mana SSM dokumen akan dijalankan.

Anda dapat memilih nilai yang berbeda untuk dua jenis durasi:

  • Action duration exceeds DurationSeconds: Eksekusi SSM dokumen selesai sebelum tindakan selesai. AWS FISmenunggu sampai durasi tindakan berlalu sebelum tindakan selanjutnya dimulai.

  • Action duration is shorter than DurationSeconds: SSM Dokumen melanjutkan eksekusi setelah tindakan selesai. Jika eksekusi SSM dokumen masih berlangsung dan durasi tindakan telah berlalu maka status tindakan diatur ke Selesai. AWS FIShanya memonitor eksekusi sampai durasi tindakan berlalu.

Perhatikan bahwa beberapa SSM dokumen memiliki durasi variabel. Sebagai contoh AWS FISSSMdokumen memiliki opsi untuk menginstal prasyarat, yang dapat memperpanjang durasi eksekusi keseluruhan di luar parameter yang ditentukan. DurationSeconds Jadi, jika Anda mengatur durasi tindakan dan DurationSeconds nilai yang sama, ada kemungkinan SSM skrip dapat berjalan lebih lama dari durasi tindakan.

AWSFIS-Run-CPU-Stress

Menjalankan CPU stress pada instance menggunakan stress-ng alat. Menggunakan dokumen AWSFIS-Run- CPU -StressSSM.

Jenis tindakan (hanya konsol)

aws:ssm:send-command/AWSFIS-Run-CPU-Stress

ARN

arn:aws:ssm:region::document/AWSFIS-Run-CPU-Stress

Parameter dokumen
  • DurationSeconds – Wajib. Durasi CPU stress test, dalam hitungan detik.

  • CPU – Opsional. Jumlah CPU stresor yang digunakan. Defaultnya adalah 0, yang menggunakan semua CPU stresor.

  • LoadPercent – Opsional. Persentase CPU beban target, dari 0 (tanpa beban) hingga 100 (beban penuh). Secara default, nilainya adalah 100.

  • InstallDependencies – Opsional. Jika nilainyaTrue, Systems Manager menginstal dependensi yang diperlukan pada instance target jika belum diinstal. Default-nya adalah True. Ketergantungan adalahstress-ng.

Berikut ini adalah contoh string yang dapat Anda masukkan di konsol.

{"DurationSeconds":"60", "InstallDependencies":"True"}

AWSFIS-Run-Disk-Fill

Mengalokasikan ruang disk pada volume root sebuah instance untuk mensimulasikan kesalahan penuh disk. Menggunakan dokumen AWSFISSSM-Run-Disk-Fill.

Jika percobaan menyuntikkan kesalahan ini dihentikan, baik secara manual atau melalui kondisi berhenti, AWS FISmencoba untuk memutar kembali dengan membatalkan SSM dokumen yang sedang berjalan. Namun, jika disk 100% penuh, baik karena kesalahan atau kesalahan ditambah aktivitas aplikasi, Systems Manager mungkin tidak dapat menyelesaikan operasi pembatalan. Oleh karena itu, jika Anda mungkin perlu menghentikan percobaan, pastikan disk tidak akan menjadi 100% penuh.

Jenis tindakan (hanya konsol)

aws:ssm:send-command/AWSFIS-Run-Disk-Fill

ARN

arn:aws:ssm:region::document/AWSFIS-Run-Disk-Fill

Parameter dokumen
  • DurationSeconds – Wajib. Durasi tes pengisian disk, dalam hitungan detik.

  • Percent – Opsional. Persentase disk yang dialokasikan selama tes pengisian disk. Defaultnya adalah 95%.

  • InstallDependencies – Opsional. Jika nilainyaTrue, Systems Manager menginstal dependensi yang diperlukan pada instance target jika belum diinstal. Default-nya adalah True. Dependensi adalah atd dan. fallocate

Berikut ini adalah contoh string yang dapat Anda masukkan di konsol.

{"DurationSeconds":"60", "InstallDependencies":"True"}

AWSFIS-Run-IO-Stress

Menjalankan stress IO pada instance menggunakan stress-ng alat. Menggunakan dokumen AWSFISSSM-Run-IO-Stress.

Jenis tindakan (hanya konsol)

aws:ssm:send-command/AWSFIS-Run-IO-Stress

ARN

arn:aws:ssm:region::document/AWSFIS-Run-IO-Stress

Parameter dokumen
  • DurationSeconds – Wajib. Durasi tes stress IO, dalam hitungan detik.

  • Workers – Opsional. Jumlah pekerja yang melakukan campuran operasi baca/tulis berurutan, acak, dan dipetakan memori, sinkronisasi paksa, dan penghapusan cache. Beberapa proses anak melakukan operasi I/O yang berbeda pada file yang sama. Default-nya adalah 1.

  • Percent – Opsional. Persentase ruang kosong pada sistem file yang akan digunakan selama IO stress test. Defaultnya adalah 80%.

  • InstallDependencies – Opsional. Jika nilainyaTrue, Systems Manager menginstal dependensi yang diperlukan pada instance target jika belum diinstal. Default-nya adalah True. Ketergantungan adalahstress-ng.

Berikut ini adalah contoh string yang dapat Anda masukkan di konsol.

{"Workers":"1", "Percent":"80", "DurationSeconds":"60", "InstallDependencies":"True"}

AWSFIS-Run-Kill-Process

Menghentikan proses yang ditentukan dalam contoh, menggunakan killall perintah. Menggunakan dokumen AWSFIS-Run-Kill-ProcessSSM.

Jenis tindakan (hanya konsol)

aws:ssm:send-command/AWSFIS-Run-Kill-Process

ARN

arn:aws:ssm:region::document/AWSFIS-Run-Kill-Process

Parameter dokumen
  • ProcessName – Wajib. Nama proses untuk berhenti.

  • Signal – Opsional. Sinyal untuk mengirim bersama dengan perintah. Nilai yang mungkin adalah SIGTERM (yang dapat dipilih penerima untuk diabaikan) dan SIGKILL (yang tidak dapat diabaikan). Default-nya adalah SIGTERM.

  • InstallDependencies – Opsional. Jika nilainyaTrue, Systems Manager menginstal dependensi yang diperlukan pada instance target jika belum diinstal. Default-nya adalah True. Ketergantungan adalahkillall.

Berikut ini adalah contoh string yang dapat Anda masukkan di konsol.

{"ProcessName":"myapplication", "Signal":"SIGTERM"}

AWSFIS-Run-Memory-Stress

Menjalankan stress memori pada instance menggunakan stress-ng alat. Menggunakan dokumen AWSFISSSM-Run-Memory-Stress.

Jenis tindakan (hanya konsol)

aws:ssm:send-command/AWSFIS-Run-Memory-Stress

ARN

arn:aws:ssm:region::document/AWSFIS-Run-Memory-Stress

Parameter dokumen
  • DurationSeconds – Wajib. Durasi tes stres memori, dalam hitungan detik.

  • Workers – Opsional. Jumlah stresor memori virtual. Default-nya adalah 1.

  • Percent – Wajib. Persentase memori virtual yang digunakan selama tes stress memori.

  • InstallDependencies – Opsional. Jika nilainyaTrue, Systems Manager menginstal dependensi yang diperlukan pada instance target jika belum diinstal. Default-nya adalah True. Ketergantungan adalahstress-ng.

Berikut ini adalah contoh string yang dapat Anda masukkan di konsol.

{"Percent":"80", "DurationSeconds":"60", "InstallDependencies":"True"}

AWSFIS-Run-Network-Blackhole-Port

Menurunkan lalu lintas masuk atau keluar untuk protokol dan port menggunakan alat. iptables Menggunakan dokumen AWSFIS-Run-Network-Blackhole-PortSSM.

Jenis tindakan (hanya konsol)

aws:ssm:send-command/AWSFIS-Run-Network-Blackhole-Port

ARN

arn:aws:ssm:region::document/AWSFIS-Run-Network-Blackhole-Port

Parameter dokumen
  • Protocol – Wajib. Protokol. Nilai yang mungkin adalah tcp dan udp.

  • Port – Wajib. Nomor port.

  • TrafficType – Opsional. Jenis lalu lintas. Nilai yang mungkin adalah ingress dan egress. Default-nya adalah ingress.

  • DurationSeconds – Wajib. Durasi tes blackhole jaringan, dalam hitungan detik.

  • InstallDependencies – Opsional. Jika nilainyaTrue, Systems Manager menginstal dependensi yang diperlukan pada instance target jika belum diinstal. Default-nya adalah True. Dependensi adalahatd,dig, dan. iptables

Berikut ini adalah contoh string yang dapat Anda masukkan di konsol.

{"Protocol":"tcp", "Port":"8080", "TrafficType":"egress", "DurationSeconds":"60", "InstallDependencies":"True"}

AWSFIS-Run-Network-Latency

Menambahkan latensi ke antarmuka jaringan menggunakan tc alat ini. Menggunakan dokumen AWSFIS-Run-Network-LatencySSM.

Jenis tindakan (hanya konsol)

aws:ssm:send-command/AWSFIS-Run-Network-Latency

ARN

arn:aws:ssm:region::document/AWSFIS-Run-Network-Latency

Parameter dokumen
  • Interface – Opsional. Antarmuka jaringan. Default-nya adalah eth0.

  • DelayMilliseconds – Opsional. Penundaan, dalam milidetik. Defaultnya adalah 200.

  • DurationSeconds – Wajib. Durasi uji latensi jaringan, dalam hitungan detik.

  • InstallDependencies – Opsional. Jika nilainyaTrue, Systems Manager menginstal dependensi yang diperlukan pada instance target jika belum diinstal. Default-nya adalah True. Dependensi adalahatd,dig, dan. tc

Berikut ini adalah contoh string yang dapat Anda masukkan di konsol.

{"DelayMilliseconds":"200", "Interface":"eth0", "DurationSeconds":"60", "InstallDependencies":"True"}

AWSFIS-Run-Network-Latency-Sources

Menambahkan latensi dan jitter ke antarmuka jaringan menggunakan tc alat untuk lalu lintas ke atau dari sumber tertentu. Menggunakan dokumen AWSFIS-Run-Network-Latency-SourcesSSM.

Jenis tindakan (hanya konsol)

aws:ssm:send-command/AWSFIS-Run-Network-Latency-Sources

ARN

arn:aws:ssm:region::document/AWSFIS-Run-Network-Latency-Sources

Parameter dokumen
  • Interface – Opsional. Antarmuka jaringan. Default-nya adalah eth0.

  • DelayMilliseconds – Opsional. Penundaan, dalam milidetik. Defaultnya adalah 200.

  • JitterMilliseconds – Opsional. Jitter, dalam milidetik. Default-nya adalah 10.

  • Sources – Wajib. Sumbernya, dipisahkan dengan koma. Nilai yang mungkin adalah: IPv4 alamat, IPv4 CIDR blok, nama domainDYNAMODB, danS3. Jika Anda menentukan DYNAMODB atauS3, ini hanya berlaku untuk titik akhir Regional di Wilayah saat ini.

  • TrafficType – Opsional. Jenis lalu lintas. Nilai yang mungkin adalah ingress dan egress. Default-nya adalah ingress.

  • DurationSeconds – Wajib. Durasi uji latensi jaringan, dalam hitungan detik.

  • InstallDependencies – Opsional. Jika nilainyaTrue, Systems Manager menginstal dependensi yang diperlukan pada instance target jika belum diinstal. Default-nya adalah True. Dependensi adalahatd,, digjq, dan. tc

Berikut ini adalah contoh string yang dapat Anda masukkan di konsol.

{"DelayMilliseconds":"200", "JitterMilliseconds":"15", "Sources":"S3,www.example.com,72.21.198.67", "Interface":"eth0", "TrafficType":"egress", "DurationSeconds":"60", "InstallDependencies":"True"}

AWSFIS-Run-Network-Packet-Loss

Menambahkan packet loss ke antarmuka jaringan menggunakan tc alat ini. Menggunakan dokumen AWSFIS-Run-Network-Packet-LossSSM.

Jenis tindakan (hanya konsol)

aws:ssm:send-command/AWSFIS-Run-Network-Packet-Loss

ARN

arn:aws:ssm:region::document/AWSFIS-Run-Network-Packet-Loss

Parameter dokumen
  • Interface – Opsional. Antarmuka jaringan. Default-nya adalah eth0.

  • LossPercent – Opsional. Persentase kehilangan paket. Defaultnya adalah 7%.

  • DurationSeconds – Wajib. Durasi tes kehilangan paket jaringan, dalam hitungan detik.

  • InstallDependencies – Opsional. Jika nilainyaTrue, Systems Manager menginstal dependensi yang diperlukan pada instance target. Default-nya adalah True. Dependensi adalahatd,dig, dan. tc

Berikut ini adalah contoh string yang dapat Anda masukkan di konsol.

{"LossPercent":"15", "Interface":"eth0", "DurationSeconds":"60", "InstallDependencies":"True"}

AWSFIS-Run-Network-Packet-Loss-Sources

Menambahkan packet loss ke antarmuka jaringan menggunakan tc alat untuk lalu lintas ke atau dari sumber tertentu. Menggunakan dokumen AWSFISSSM-Run-Network-Packet-Loss-Sources.

Jenis tindakan (hanya konsol)

aws:ssm:send-command/AWSFIS-Run-Network-Packet-Loss-Sources

ARN

arn:aws:ssm:region::document/AWSFIS-Run-Network-Packet-Loss-Sources

Parameter dokumen
  • Interface – Opsional. Antarmuka jaringan. Default-nya adalah eth0.

  • LossPercent – Opsional. Persentase kehilangan paket. Defaultnya adalah 7%.

  • Sources – Wajib. Sumbernya, dipisahkan dengan koma. Nilai yang mungkin adalah: IPv4 alamat, IPv4 CIDR blok, nama domainDYNAMODB, danS3. Jika Anda menentukan DYNAMODB atauS3, ini hanya berlaku untuk titik akhir Regional di Wilayah saat ini.

  • TrafficType – Opsional. Jenis lalu lintas. Nilai yang mungkin adalah ingress dan egress. Default-nya adalah ingress.

  • DurationSeconds – Wajib. Durasi tes kehilangan paket jaringan, dalam hitungan detik.

  • InstallDependencies – Opsional. Jika nilainyaTrue, Systems Manager menginstal dependensi yang diperlukan pada instance target. Default-nya adalah True. Dependensi adalahatd,, digjq, dan. tc

Berikut ini adalah contoh string yang dapat Anda masukkan di konsol.

{"LossPercent":"15", "Sources":"S3,www.example.com,72.21.198.67", "Interface":"eth0", "TrafficType":"egress", "DurationSeconds":"60", "InstallDependencies":"True"}

Contoh

Untuk contoh templat eksperimen, lihatJalankan pra-konfigurasi AWS FISSSMdokumen.

Untuk tutorial contoh, lihat Jalankan CPU stress pada sebuah instance.

Pemecahan Masalah

Gunakan prosedur berikut untuk memecahkan masalah.

Untuk memecahkan masalah dengan dokumen SSM
  1. Buka AWS Systems Manager konsol di https://console.aws.amazon.com/systems-manager/.

  2. Di panel navigasi, pilih Manajemen Node, Jalankan Perintah.

  3. Pada tab Riwayat perintah, gunakan filter untuk menemukan proses dokumen.

  4. Pilih ID perintah untuk membuka halaman detailnya.

  5. Pilih ID dari instance. Tinjau output dan kesalahan untuk setiap langkah.