

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

# Pengujian kesalahan pada Amazon EBS
<a name="ebs-fis"></a>

AWS Fault Injection Service (AWS FIS) adalah layanan yang dikelola sepenuhnya yang membantu Anda melakukan eksperimen injeksi kesalahan pada AWS beban kerja Anda. Dengan tindakan EBS di AWS FIS, Anda dapat menguji bagaimana aplikasi Anda merespons kesalahan penyimpanan yang dapat mengakibatkan I/O gangguan dan penurunan kinerja pada volume Anda. Lingkungan pengujian terkontrol ini memungkinkan Anda untuk mengamati bagaimana aplikasi Anda merespons gangguan sehingga Anda dapat mengidentifikasi kelemahan dalam arsitektur Anda dan meningkatkan ketahanan keseluruhan aplikasi Anda. Dengan menggunakan I/O tindakan jeda dan tindakan injeksi latensi, Anda dapat menguji mekanisme pemantauan dan pemulihan seperti CloudWatch alarm Amazon dan alur kerja failover, serta meningkatkan ketahanan aplikasi penting misi Anda terhadap kesalahan penyimpanan. Untuk informasi selengkapnya AWS FIS, lihat [Panduan AWS Fault Injection Service Pengguna](https://docs.aws.amazon.com/fis/latest/userguide/what-is.html).

## Eksperimen yang tersedia
<a name="ebs-fis-experiments"></a>

Amazon EBS saat ini mendukung dua suntikan AWS FIS kesalahan:
+ [Jeda injeksi I/O kesalahan](ebs-fis-pause-io.md)
+ [Injeksi latensi](ebs-fis-latency-injection.md)

## Pertimbangan-pertimbangan
<a name="ebs-fis-consids"></a>

Pertimbangan berikut berlaku untuk instans Mac:
+ Semua jenis volume Amazon EBS didukung. Volume root dan volume data didukung. Volume penyimpanan instans tidak didukung.
+ Volume harus dilampirkan ke instans [EC2 berbasis Nitro](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#instance-hypervisor-type).
+ Volume Anda akan melanjutkan I/O kinerja aslinya setelah percobaan selesai berdasarkan durasi. Anda juga dapat menghentikan eksperimen yang sedang berjalan sebelum selesai. Atau, Anda dapat membuat kondisi berhenti untuk menghentikan eksperimen jika mencapai ambang batas yang Anda tentukan dalam CloudWatch alarm.
+ Anda dapat menggunakan AWS FIS dengan volume yang diaktifkan Multi-Attach. Semua instance terlampir terpengaruh. Anda tidak dapat memilih lampiran volume instance tertentu untuk eksperimen.
+ FIS saat ini tidak tersedia di Local Zones, Outposts, atau Wavelength Zones.
+ Anda dapat menguji hingga 5 volume di Availability Zone yang sama secara bersamaan saat menentukan volume ARNs di konsol.
+ Anda tidak dapat menggunakan volume AWS FIS yang dibuat diOutpost, di AWS Wavelength Zona, atau di Zona Lokal.

# Jeda injeksi I/O kesalahan
<a name="ebs-fis-pause-io"></a>

Gunakan AWS Fault Injection Service dan I/O tindakan Jeda untuk menghentikan sementara I/O antara volume Amazon EBS dan instance yang dilampirkan untuk menguji cara beban kerja Anda menangani interupsi. I/O 

Untuk informasi selengkapnya AWS FIS, lihat [https://docs.aws.amazon.com/fis/latest/userguide/what-is.html](https://docs.aws.amazon.com/fis/latest/userguide/what-is.html).

**Pertimbangan-pertimbangan**

Perhatikan pertimbangan berikut untuk menjeda volume I/O:
+ Jeda I/O didukung pada semua jenis [instans berbasis Nitro](https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html).
+ Untuk menguji konfigurasi batas waktu OS Anda, tetapkan durasi percobaan sama dengan atau lebih besar dari nilai yang ditentukan untuk `nvme_core.io_timeout`. Untuk informasi selengkapnya, lihat [NVMe Batas waktu operasi I/O untuk volume Amazon EBS](timeout-nvme-ebs-volumes.md).
+ Jika Anda berkendara I/O ke volume yang telah I/O dijeda, hal berikut akan terjadi:
  + Transisi status volume ke `impaired` dalam 120 detik. Untuk informasi selengkapnya, lihat [Pemeriksaan status volume Amazon EBS](monitoring-volume-checks.md).
  +  CloudWatch Metrik untuk `VolumeStalledIOCheck` adalah `1` jika volume I/O dijeda selama lebih dari 60 detik. Untuk mengetahui informasi selengkapnya, lihat [Metrik untuk volume Amazon EBS](using_cloudwatch_ebs.md#ebs-volume-metrics).
  +  CloudWatch Metrik untuk panjang antrian (`VolumeQueueLength`) akan menjadi bukan nol. Alarm atau pemantauan apa pun harus memantau kedalaman antrean non-nol.
  +  CloudWatch Metrik untuk `VolumeReadOps` atau `VolumeWriteOps` akan menjadi`0`, yang menunjukkan bahwa volume tidak lagi memproses I/O.

Anda dapat melakukan eksperimen dasar dari konsol Amazon EC2, atau Anda dapat melakukan eksperimen lanjutan menggunakan konsol. AWS FIS Untuk informasi selengkapnya tentang melakukan eksperimen lanjutan menggunakan AWS FIS konsol, lihat [Tutorial untuk AWS FIS](https://docs.aws.amazon.com/fis/latest/userguide/fis-tutorials.html) di *Panduan AWS Fault Injection Service Pengguna*.

**Untuk melakukan percobaan dasar menggunakan konsol Amazon EC2**

1. Buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Pada panel navigasi, pilih **Volume**.

1. Pilih volume yang akan dijeda I/O dan pilih **Tindakan**, **Injeksi kesalahan**, **Jeda volume** I/O.

1. Untuk **Durasi**, masukkan durasi untuk jeda I/O antara volume dan instance. Bidang di sebelah daftar dropdown Durasi menunjukkan durasi dalam format ISO 8601.

1. Di bagian **Akses layanan**, pilih peran layanan IAM untuk berasumsi AWS FIS untuk melakukan eksperimen. Anda dapat menggunakan peran default, atau peran yang sudah ada yang Anda buat. Untuk informasi selengkapnya, lihat [Membuat peran IAM untuk AWS FIS eksperimen](https://docs.aws.amazon.com/fis/latest/userguide/getting-started-iam-service-role.html).

1. Pilih **Jeda volume I/O**. Saat diminta, masukkan `start` di bidang konfirmasi dan pilih **Mulai percobaan**.

1. Pantau kemajuan dan dampak percobaan Anda. Untuk informasi selengkapnya, lihat [Memantau AWS FIS](https://docs.aws.amazon.com/fis/latest/userguide/monitoring-experiments.html) di *Panduan Pengguna AWS FIS *.

# Injeksi latensi
<a name="ebs-fis-latency-injection"></a>

Gunakan aksi Injeksi Latensi (`aws:ebs:volume-io-latency`) AWS FIS untuk mensimulasikan I/O latensi yang meningkat pada volume Amazon EBS Anda untuk menguji bagaimana aplikasi Anda merespons penurunan kinerja penyimpanan. Tindakan ini memungkinkan Anda untuk menentukan nilai latensi yang akan disuntikkan serta persentase I/O yang akan terpengaruh pada volume target. Dengan AWS FIS, Anda dapat menggunakan templat eksperimen latensi yang telah dikonfigurasi sebelumnya untuk memulai pengujian pola I/O latensi berbeda yang mungkin diamati selama kesalahan penyimpanan. Template ini dirancang sebagai serangkaian skenario awal yang dapat Anda gunakan untuk memperkenalkan gangguan pada aplikasi Anda guna menguji ketahanan. Mereka tidak dirancang untuk mencakup semua jenis dampak yang dapat dialami aplikasi Anda di dunia nyata. Kami menyarankan Anda untuk menyesuaikannya untuk menjalankan beberapa pengujian berbeda berdasarkan kebutuhan kinerja aplikasi Anda. Anda dapat menyesuaikan templat yang tersedia atau membuat templat eksperimen baru untuk menguji persyaratan spesifik aplikasi Anda.

**Templat percobaan latensi yang telah dikonfigurasi sebelumnya**  
[Amazon EBS menyediakan templat eksperimen latensi berikut melalui Konsol EBS dan pustaka skenario.AWS FIS](https://docs.aws.amazon.com/fis/latest/userguide/scenario-library-scenarios.html) Anda dapat langsung menggunakan templat ini pada volume target Anda untuk menjalankan eksperimen injeksi latensi.
+ **Latensi Berkelanjutan - Mensimulasikan latensi** konstan. Eksperimen ini menggunakan satu aksi injeksi latensi dan memiliki durasi total 15 menit. Eksperimen ini mensimulasikan latensi persisten pada 50 persen membaca I/O dan 100 persen penulisan I/O: 500 ms selama 15 menit.
+ **Meningkatkan Latensi** - Mensimulasikan peningkatan latensi secara bertahap. Eksperimen ini menggunakan lima tindakan injeksi latensi dan memiliki durasi total 15 menit. Eksperimen ini akan mensimulasikan peningkatan latensi bertahap pada 10 persen membaca I/O dan 25 persen I/O tulis: 50 ms selama 3 menit, 200 ms selama 3 menit, 700 ms selama 3 menit, 1 detik selama 3 menit, dan 15 detik selama 3 menit.
+ **Latensi Intermiten - Mensimulasikan lonjakan latensi** intermiten yang tajam dengan periode pemulihan di antaranya. Eksperimen ini menggunakan tiga tindakan injeksi latensi dan memiliki durasi total 15 menit. Eksperimen ini akan mensimulasikan tiga lonjakan latensi pada 0,1 persen I/O baca dan tulis: lonjakan 30 detik yang berlangsung selama 1 menit, lonjakan 10 detik yang berlangsung selama 2 menit, dan lonjakan 20 detik yang berlangsung selama 2 menit. Akan ada periode pemulihan 5 menit antara setiap lonjakan latensi. 
+ **Menurunkan Latensi — Mensimulasikan penurunan latensi** secara bertahap. Eksperimen ini menggunakan lima tindakan injeksi latensi dan memiliki durasi total 15 menit. Eksperimen ini akan mensimulasikan penurunan latensi bertahap pada 10 persen membaca I/O dan menulis I/O: 20 detik selama 3 menit, 5 detik selama 3 menit, 900 ms selama 3 menit, 300 ms selama 3 menit, dan 40 ms selama 3 menit.

**Sesuaikan skenario yang telah dikonfigurasi**

Anda menyesuaikan templat yang telah dikonfigurasi sebelumnya di atas atau membuat templat eksperimen baru Anda sendiri menggunakan parameter yang dapat disesuaikan berikut.
+ `readIOPercentage`— Persentase I/O operasi baca tempat latensi akan disuntikkan. Ini adalah persentase dari semua I/O operasi baca pada volume yang akan dipengaruhi oleh tindakan.

  Rentang: Min 0,1%, Maks 100%
+ `readIOLatencyMilliseconds`— Jumlah latensi yang disuntikkan pada I/O operasi baca. Ini adalah nilai latensi yang akan diamati pada persentase pembacaan yang ditentukan I/O selama percobaan.

  Rentang: Min 1 ms (io2) /10 ms (non-io2), Maks 60 detik
+ `writeIOPercentage`— Persentase I/O operasi tulis tempat latensi akan disuntikkan. Ini adalah persentase dari semua I/O operasi tulis pada volume yang akan dipengaruhi oleh tindakan.

  Rentang: Min 0,1%, Maks 100%
+ `writeIOLatencyMilliseconds`— Jumlah latensi yang disuntikkan pada I/O operasi penulisan. Ini adalah nilai latensi yang akan diamati pada persentase penulisan yang ditentukan I/O selama percobaan.

  Rentang: Min 1 ms (io2) /10 ms (non-io2), Maks 60 detik
+ `duration`— Durasi dimana latensi akan disuntikkan pada persentase yang I/O dipilih.

  Rentang: Min 1 detik, Max 12 jam

**Pemantauan injeksi latensi**  
Anda dapat memantau dampak kinerja pada volume Anda dengan cara berikut:
+ Gunakan metrik latensi rata-rata CloudWatch untuk mendapatkan latensi rata-rata per menit. I/O Untuk informasi selengkapnya, lihat [Memantau volume EBS Anda menggunakan CloudWatch](https://docs.aws.amazon.com/ebs/latest/userguide/using_cloudwatch_ebs.html).
+ Gunakan statistik kinerja terperinci EBS yang tersedia melalui NVMe -CLI, CloudWatch agen, dan Prometheus untuk mendapatkan latensi rata-rata per detik. I/O Metrik terperinci juga menyediakan histogram I/O latensi yang dapat Anda gunakan untuk menganalisis varians latensi pada volume Anda. Untuk informasi selengkapnya, lihat [statistik kinerja NVMe terperinci](https://docs.aws.amazon.com/ebs/latest/userguide/nvme-detailed-performance-stats.html).
+ Gunakan [Pemeriksaan status volume Amazon EBS](monitoring-volume-checks.md). Saat Anda menyuntikkan I/O latensi, status volume bertransisi ke status. `warning`

**Pertimbangan-pertimbangan**  
Pertimbangkan hal berikut saat menggunakan injeksi latensi EBS:
+ Injeksi latensi didukung pada semua [jenis instans berbasis Nitro](https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html), kecuali: P4d, P5, P5e, TrN2u, G6, G6f, Gr6, Gr6f, M8i, M8i-flex, C8i-flex, R8i, R8i-flex, i8gE, Mac-M4Pro, dan Mac-M4.
+ Anda mungkin melihat varians hingga 5 persen dalam nilai latensi yang ditentukan dalam percobaan dan latensi yang dihasilkan diamati.
+ Jika Anda mendorong jumlah I/O operasi yang sangat kecil, persentase yang I/O ditentukan dalam parameter tindakan mungkin tidak cocok dengan persentase aktual yang I/O terkena dampak tindakan.

**Untuk menjalankan eksperimen injeksi latensi pada volume Amazon EBS**

1. Buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Pada panel navigasi, pilih **Volume**.

1. Pilih volume untuk menjalankan eksperimen dan pilih **Actions**, **Resilience testing**, **Inject** volume latency. I/O 

    AWS Fault Injection Service Konsol terbuka. 

1. **Di jendela **Buat eksperimen**, pilih jenis eksperimen yang akan dijalankan: **Intermiten**, **Meningkat**, **Berkelanjutan, atau Mengurangi**.**

1. Untuk **pemilihan peran IAM**, pilih **Buat peran baru** untuk membuat peran baru yang AWS FIS akan digunakan untuk melakukan eksperimen atas nama Anda. Atau, pilih **Gunakan peran IAM yang ada** jika sebelumnya Anda membuat peran IAM dengan izin yang diperlukan.

1. Bagian **Perkiraan harga** memberi Anda perkiraan biaya menjalankan eksperimen. Dengan AWS FIS, Anda dikenakan biaya per menit bahwa suatu tindakan berjalan, dari awal hingga akhir, berdasarkan jumlah akun target untuk eksperimen Anda.

1. Pilih **Mulai percobaan**.