Menggunakan dokumen SSM 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.

Menggunakan dokumen SSM Systems Manager dengan AWS FIS

AWS FIS mendukung jenis kesalahan kustom melalui Agen AWS Systems Manager SSM dan tindakan AWS FIS. aws:ssm:send-command Dokumen SSM Systems Manager yang telah dikonfigurasi sebelumnya (dokumen SSM) yang dapat digunakan untuk membuat tindakan injeksi kesalahan umum tersedia sebagai AWS dokumen publik yang dimulai dengan awalan -. AWSFIS

Agen SSM 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 dokumen SSM Anda sendiri untuk menyuntikkan kesalahan khusus, atau referensi salah satu dokumen milik Amazon publik.

Persyaratan

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

Gunakan aws:ssm:send-command tindakan

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

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

Untuk menggunakan dokumen SSM dalam eksperimen AWS FIS Anda, Anda dapat menggunakan tindakan. aws:ssm:send-command Tindakan ini mengambil dan menjalankan dokumen SSM 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) dari dokumen SSM.

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

  • documentVersion – Opsional. Versi dokumen SSM untuk dijalankan.

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

Untuk melihat informasi tentang dokumen SSM 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 dokumen SSM menggunakan baris perintah

Gunakan perintah deskripsi-dokumen SSM.

Dokumen SSM AWS FIS yang telah dikonfigurasi sebelumnya

Anda dapat menggunakan dokumen SSM AWS FIS yang telah dikonfigurasi sebelumnya dengan aws:ssm:send-command tindakan di templat eksperimen Anda.

Persyaratan
  • Dokumen SSM pra-konfigurasi yang disediakan oleh AWS FIS hanya didukung pada sistem operasi berikut:

    • Amazon Linux 2023, Amazon Linux 2, Amazon Linux

    • Ubuntu

    • RHEL 8, 9

    • CentOS 8, 9

  • Dokumen SSM pra-konfigurasi yang disediakan oleh AWS FIS hanya didukung pada instance. EC2 Mereka tidak didukung pada jenis node terkelola lainnya, seperti server lokal.

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

Perbedaan antara durasi tindakan dan DurationSeconds dalam dokumen SSM AWS FIS

Beberapa dokumen SSM membatasi waktu eksekusi mereka sendiri, misalnya DurationSeconds parameter digunakan oleh beberapa dokumen AWS FIS SSM yang telah dikonfigurasi sebelumnya. Akibatnya, Anda perlu menentukan dua durasi independen dalam definisi tindakan AWS FIS:

  • 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 FIS memonitor setiap tindakan hingga durasi aksinya berlalu.

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

Anda dapat memilih nilai yang berbeda untuk dua jenis durasi:

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

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

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

AWSFIS-Run-CPU-Stress

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

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 tes stres CPU, dalam hitungan detik.

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

  • LoadPercent – Opsional. Target persentase beban CPU, 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 SSM AWSFIS-Run-Disk-Fill.

Jika percobaan menyuntikkan kesalahan ini dihentikan, baik secara manual atau melalui kondisi berhenti, AWS FIS mencoba untuk memutar kembali dengan membatalkan dokumen SSM 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 SSM AWSFIS-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 read/write operations, forced synchronizing, and cache dropping. Multiple child processes perform different I/O operasi berurutan, acak, dan dipetakan memori 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 SSM AWSFIS-Run-Kill-Process.

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 SSM AWSFIS-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 SSM AWSFIS-Run-Network-Blackhole-Port.

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 SSM AWSFIS-Run-Network-Latency.

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 SSM AWSFIS-Run-Network-Latency-Sources.

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, blok IPv4 CIDR, 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 SSM AWSFIS-Run-Network-Packet-Loss.

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 SSM AWSFIS-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, blok IPv4 CIDR, 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 dokumen yang telah dikonfigurasi sebelumnya AWS FIS SSM.

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.