SAA-C03弾力性に優れたアーキテクチャの設計MEDIUM単一選択

ある企業が、Amazon ECS on EC2 でコンテナアプリケーションを運用しており、EC2 ノードの OS パッチを定期的に適用する必要がある。パッチ適用中もサービスの継続性を保ちながらノードを安全にローリングアップデートしたい。最も適切な方法はどれか。

  1. A. すべての EC2 ノードを一斉に停止してパッチを適用し、完了後に再起動する。
  2. B. AMI を事前にパッチ済みの新しいバージョンに更新し、Auto Scaling グループのローリング更新(Instance Refresh)を使って ECS ノードを順次置き換える。
  3. C. ECS Cluster Auto Scaling と AWS Systems Manager Patch Manager を組み合わせる。SSM Patch Manager で ECS ノードのパッチを適用する前に、ノードをドレインして(ECS サービスが他のノードにタスクを移動)からパッチを当て、完了後にドレインを解除する。
  4. D. EC2 インスタンスのパッチは不要で、コンテナイメージのベースイメージを更新するだけで十分。
解答と解説を見る

正解: B

Auto Scaling グループの Instance Refresh は、新しい起動テンプレート(パッチ済み AMI を参照)を指定した後、グループ内のインスタンスを設定した最小ヘルシーパーセントを維持しながら順次置き換える(ローリング更新)。ECS との統合では、置き換え前にインスタンスをドレイン(ECS コンテナインスタンスの登録解除)することでタスクが他のノードに移動してからインスタンスが終了するため、サービスの継続性が保たれる。選択肢Aの一斉停止はサービスが停止するためサービス継続性要件に反する。選択肢Cは有効な方法だが、SSM Patch Manager での個別ノードドレインの手動またはスクリプト管理が必要で、Auto Scaling グループの Instance Refresh の方が管理が容易でインフラとしての標準的な方法。選択肢Dのコンテナイメージ更新だけでは、EC2 ホスト OS(ノード)の脆弱性は対処できない。Spectre/Meltdown のようなカーネルレベルの脆弱性はコンテナイメージでは修正できない。

▸ この試験を本気で演習する(全150問・無料)