投稿日: Nov 8, 2021

Amazon CloudWatch アラームの状態をチェックし、AWS Systems Manager (SSM) Automations を実行する AWS Fault Injection Simulator (FIS) 実験を作成し、実行できるようになりました。また、事前に設定された SSM Agent ドキュメントを使用して、I/O、ネットワークブラックホール、パケットロスの障害を Amazon EC2 インスタンスに注入する新しい FIS 実験アクションを実行できるようになりました。テスト環境でも本番環境でも、実際の世界の状況下でアプリケーションがストレスに対してどのように反応するかを予測するのは困難な場合があるため、アラームチェックと自動ランブックを FIS の実験に統合することにより、ネットワークの問題、インスタンスの終了、API のスロットリング、その他の障害状態などの破壊的なイベントを注入する際の信頼性を高めることができます。

まず、新しい CloudWatch アクションでは、FIS 実験のワークフローの一部として、CloudWatch アラームの状態を入れることができます。その後、実験が実行されたときに、アラームが期待した状態 (OK、ALARM、または INSUFFICIENT_DATA) になっているかを確認します。例えば、これを実験の次のアクション (EC2 インスタンスの再起動など) に移る前に、前のアクション (ネットワークレイテンシーの注入など) の影響が効いているかどうかをチェックするために使用することができます。

次に、FIS の実験内から AWS Systems Manager Automation のランブックを実行できるようになりました。AWS Systems Manager Automation により、EC2 AMI または CloudFormation テンプレートの作成、削除、S3 バケットの削除、AWS Step Function ステートマシンの実行、AWS Lambda 関数の呼び出し、タグの作成、EC2 インスタンスの起動、AWS API のリクエストなど、さまざまな一般的なタスクを実行するためのオートメーションを構築し、実行することができます。オートメーションのランブックを FIS の実験内でトリガーするように設定することにより、実際の世界の状況に近い複雑な障害状態を、より簡単に、安全に、繰り返し再度作成することができます。

最後に、複数の新規と更新された SSM Agent のドキュメントが障害注入アクションとして実行できるようになりました。これには、IO ストレスアクション、指定されたプロトコルとポートのインバウンドまたはアウトバウンドトラフィックをドロップするネットワークブラックホールアクション、指定されたネットワークインターフェースを介して、IP アドレス/ブロック、ドメイン、または S3 や DynamoDB を含む AWS サービスなどの指定されたソースとの間で、レイテンシーやジッターを追加するネットワークレイテンシーアクション、指定されたインターフェースと (オプションで) ソースにパケットロスの障害を注入できる 2 つのネットワークパケットロスアクションが含まれます。これらの SSM ドキュメントは Amazon Linux および Ubuntu を実行する EC2 インスタンス向けに事前に設定されています。

AWS マネジメントコンソールまたは AWS SDK を使用して、障害注入実験の作成し、実行を開始することができ、これらのそれぞれの新機能は今すぐご利用可能です。AWS FIS は、すべての商用 AWS リージョンで使用できます。