在 Amazon EBS 上進行故障測試 - Amazon EBS

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 Amazon EBS 上進行故障測試

使用 AWS Fault Injection Service 和暫停 I/O 動作可暫時停止 Amazon EBS 磁碟區與其連接的執行個體之間的 I/O,以測試工作負載如何處理 I/O 中斷。您可以使用受控實驗來測試架構和監控 (例如 Amazon CloudWatch 警示和作業系統逾時組態),並改善儲存故障的彈性。 AWS FIS

若要取得有關的更多資訊 AWS FIS,請參閱AWS Fault Injection Service 使用者指南

考量事項

請謹記暫停磁碟區 I/O 時的下列考量事項:

  • 您可以暫停所有 Amazon EBS 磁碟區類型的 I/O,這些類型連接到 Nitro 系統上建置的執行個體

  • 您可以暫停根磁碟區的 I/O。

  • 您現在已可暫停已啟用 Multi-Attach 的磁碟區的 I/O。如果暫停已啟用 Multi-Attach 之磁碟區的 I/O,則會暫停磁碟區與其連接的所有執行個體之間的 I/O。

  • 若要測試作業系統逾時組態,請將實驗持續時間設定為等於或大於 nvme_core.io_timeout 的指定值。如需詳細資訊,請參閱 I/O 操作逾時

  • 如果將 I/O 驅動到已暫停 I/O 的磁碟區,則會發生下列情況:

    • 磁碟區的狀態會在 120 秒內轉換為 impaired。如需詳細資訊,請參閱 監控您的 Amazon EBS 卷

    • 隊列長度(VolumeQueueLength)的 CloudWatch 指標將是非零。任何警示或監控都應監控非零佇列深度。如需更多資訊,請參閱Amazon EBS 磁碟區的指標

    • VolumeReadOpsVolumeWriteOps將會的 CloudWatch 測量結果0,表示磁碟區已不再處理 I/O。

限制

請謹記暫停磁碟區 I/O 時的下列限制:

  • 不支援執行個體儲存體磁碟區。

  • 不支援以 XEN 為基礎的執行個體類型。

  • 您無法暫停在 Outpost AWS Outposts、 AWS Wavelength 區域或本機區域中建立的磁碟區的 I/O。

您可以從 Amazon EC2 主控台執行基本實驗,也可以使用主控 AWS FIS 台執行更進階的實驗。如需有關使用 AWS FIS 主控台執行進階實驗的詳細資訊,請參閱《使AWS Fault Injection Service 用指南》 AWS FIS中的教學課程

使用 Amazon EC2 主控台執行基本實驗
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Volumes (磁碟區)。

  3. 選取要暫停 I/O 的磁碟區,然後選擇動作故障注入暫停磁碟區 I/O

  4. 持續時間中,輸入磁碟區和執行個體之間暫停 I/O 的持續時間。「持續時間」下拉式清單旁的欄位會以 ISO 8601 格式顯示持續時間。

  5. 在「服務存取」區段中,選取 AWS FIS 要假設執行實驗的 IAM 服務角色。可以使用預設角色或您建立的現有角色。如需詳細資訊,請參閱建立 AWS FIS 實驗的 IAM 角色

  6. 選擇暫停磁碟區 I/O。出現提示時,在確認欄位中輸入 start 並選擇開始實驗

  7. 監控實驗的進度和影響。如需詳細資訊,請參閱《AWS FIS 使用者指南》中的監控 AWS FIS