REL07-BP02 ワークロードの障害を検出したときにリソースを取得する
可用性が影響を受ける場合、必要に応じてリソースをリアクティブにスケールし、ワークロードの可用性を復元します。
まず、ヘルスチェックとこのチェックの基準を設定して、リソースの不足が可用性に影響を与えるタイミングを示す必要があります。次に、適切な担当者に通知してリソースを手動でスケールするか、オートメーションを開始してリソースを自動的にスケールします。
スケーリングはワークロードに合わせて手動で調整できます。例えば、Auto Scaling グループの EC2 インスタンスの数の変更や、DynamoDB テーブルのスループットの変更は、AWS Management Consoleまたは AWS CLI で行うことができます。ただし、可能な限り自動化を使用する必要があります (「リソースを取得またはスケールするときに自動化を使用する」を参照)。
期待される成果: 障害やカスタマーエクスペリエンスの低下が検知された時点で、可用性を回復するためのスケーリングアクティビティ (自動または手動) が開始されます。
このベストプラクティスを活用しない場合のリスクレベル: 中
実装のガイダンス
ワークロードのすべてのコンポーネントにオブザーバビリティとモニタリングを実装して、カスタマーエクスペリエンスを監視し、障害を検知します。必要なリソースをスケールする手順 (手動または自動) を定義します。詳細については、「REL11-BP01 ワークロードのすべてのコンポーネントをモニタリングして障害を検知する」を参照してください。
実装手順
-
必要なリソースをスケールする手順 (手動または自動) を定義します。
-
スケーリングの手順は、ワークロード内のさまざまなコンポーネントの設計方法に応じて異なります。
-
また、使用されている基盤のテクノロジーによっても異なります。
-
AWS Auto Scaling を使用するコンポーネントでは、スケーリングプランを使用して、リソースをスケールするための一連の指示を設定できます。AWS CloudFormation を使用または AWS リソースにタグを追加する場合、アプリケーションごとに異なる一連のリソース用にスケーリングプランを設定できます。Auto Scaling は、各リソースに合わせてカスタマイズされたスケーリング戦略のレコメンデーションを提供します。スケーリングプランを作成すると、Auto Scaling は、動的スケーリングと予測スケーリング方法を組み合わせて、スケーリング戦略をサポートします。詳細については、「How scaling plans work」を参照してください。
-
Amazon EC2 Auto Scaling は、アプリケーションの負荷を処理するために適切な数の Amazon EC2 インスタンスを利用できるようにします。Auto Scaling グループと呼ばれる EC2 インスタンスの集合を作成します。Auto Scaling グループごとにインスタンスの最小数と最大数を指定でき、グループがこれらの制限を下回る/上回ることがないように Amazon EC2 Auto Scaling が調整します。詳細については、「What is Amazon EC2 Auto Scaling?」を参照してください。
-
Amazon DynamoDB Auto Scaling は Application Auto Scaling サービスを使用し、実際のトラフィックパターンに応じてプロビジョンドスループットキャパシティをユーザーに代わって動的に調節します。これにより、テーブルまたはグローバルセカンダリインデックスで、プロビジョニングされた読み込み/書き込みキャパシティーが拡張され、トラフィックの急激な増加をスロットリングなしに処理できるようになります。詳細については、「DynamoDB Auto Scaling によるスループットキャパシティの自動管理」を参照してください。
-
-
リソース
関連するベストプラクティス:
関連ドキュメント: