AWS Fault Injection Service で耐障害性テストを実行する
AWS Fault Injection Service は、AWS ワークロードでフォールトインジェクション実験を実行するのに役立つ完全マネージド型サービスです。Amazon Kinesis Data Streams と AWS FIS の統合により、制御された環境で一般的な Amazon Kinesis Data Streams API エラーに対するアプリケーションの耐障害性をテストできます。この機能により、障害が発生する前にエラー処理や再試行ロジックを検証し、システムをモニタリングすることができます。詳細については、「What is AWS Fault Injection Service?」を参照してください。
アクション
-
API 内部エラー: ターゲットの IAM ロールからのリクエストに内部エラーを挿入します。特定のレスポンスは、各サービスと API によって異なります。アクション
aws:fis:inject-api-internal-errorにより、InternalFailureエラー (HTTP 500) が発生します。 -
API スロットルエラー: ターゲットの IAM ロールからのリクエストに内部エラーを挿入します。特定のレスポンスは、各サービスと API によって異なります。アクション
aws:fis:inject-api-throttle-errorにより、ThrottlingExceptionエラー (HTTP 400) が発生します。 -
API 使用不可エラー: ターゲットの IAM ロールからのリクエストに内部エラーを挿入します。特定のレスポンスは、各サービスと API によって異なります。アクション
aws:fis:inject-api-unavailable-errorにより、ServiceUnavailableエラー (HTTP 503) が発生します。 -
API プロビジョンドスループット例外: ターゲットの IAM ロールからのリクエストに内部エラーを挿入します。特定のレスポンスは、各サービスと API によって異なります。アクション
aws:kinesis:inject-api-provisioned-throughput-exceptionにより、ProvisionedThroughputExceededExceptionエラー (HTTP 400) が発生します。 -
API 期限切れイテレーター例外: ターゲットの IAM ロールからのリクエストに内部エラーを挿入します。特定のレスポンスは、各サービスと API によって異なります。アクション
aws:kinesis:inject-api-expired-iterator-exceptionにより、ExpiredIteratorExceptionエラー (HTTP 400) が発生します。
詳細については、Amazon Kinesis Data Streams actions を参照してください。
考慮事項
-
上記のアクションは、Amazon Kinesis Data Streams のプロビジョンド型およびオンデマンド型の両方のオファリングで使用できます。
-
選択した期間に基づいて実験が完了すると、ストリーミングが再開されます。実行中の実験は、完了する前に停止することもできます。または、Amazon CloudWatch Application Insights でアプリケーションの状態を定義するアラームに基づいて実験を停止するための停止条件を定義することもできます。
-
最大 280 個のストリームをテストできます。
リージョンのサポートについて詳しくは、AWS Fault Injection Service endpoints and quotas を参照してください。