SAP-C02-043 · 理解確認
理解確認:Deployment Strategyの全体設計
デプロイ要件から可用性・停止時間・リスク・ロールバック要件を抽出し、必要な戦略の性質を判断します。 · 11問
24時間利用される顧客向けサービスを更新する。顧客から見えるダウンタイムを最小化し、問題発生時には数分以内に安全な状態へ戻す必要がある。最も重要なデプロイ戦略の性質はどれか。
B. サービス提供を維持しながら新バージョンを検証でき、要求時間内に復旧できる
C. デプロイ中の観測を減らし、変更処理だけを単純化できる
D. 障害時も復旧せず、新バージョンへの展開を継続できる
答えと解説
答え:B
可用性と復旧時間が厳格な要件です。戦略はサービス継続と要求時間内の復旧を両立できる必要があります。
アプリケーションは複数可用性ゾーンで稼働しており通常時は高可用である。しかし問題のある新バージョンを全インスタンスへ同時に反映した結果、全面障害になった。最も重要な判断はどれか。
B. マルチAZならデプロイ戦略を別途設計する必要はない
C. 実行時可用性とデプロイ中の可用性を別々に設計する
D. インフラストラクチャが冗長ならソフトウェア変更の影響範囲は考慮しない
答えと解説
答え:C
インフラストラクチャが冗長でも、同じ不具合のある 変更を全体へ反映すれば共通障害を起こせます。デプロイ中の可用性は別に設計します。
障害リスクが高い変更を本番へ展開する。問題があった場合でも顧客への初期影響を限定したい。最も適切な戦略の性質はどれか。
B. 最初から全顧客へ同時外部公開し、デプロイ時間を最短化できる
C. 障害検出よりも全リソースへの展開完了を優先できる
D. 変更リスクに関係なく常に最大範囲へ一度に反映できる
答えと解説
答え:A
高リスク変更では影響範囲を制御できることが重要です。最初の外部公開範囲を限定できれば障害時のビジネス影響を抑えられます。
社内システムには毎週のメンテナンスウィンドウがあり、10分間の停止がビジネス側から許容されている。変更リスクも低く、運用の複雑さを抑えたい。最も適切な判断はどれか。
B. ビジネス要件を超えて常時並行環境を維持する
C. 運用の複雑さよりゼロダウンタイムを常に優先する
D. 許容ダウンタイム内で要件を満たす、より単純な戦略も候補にする
答えと解説
答え:D
ビジネス要件以上の可用性を必ず実現する必要はありません。許容ダウンタイム、コスト、複雑さを含めて戦略を選びます。
新バージョンのデプロイ戦略を決めようとしている。障害発生時には短時間でサービスを復旧する必要がある。最も適切な進め方はどれか。
B. 復旧時間とロールバック要件を事前に定義し、それを満たす戦略を選ぶ
C. デプロイ速度だけを先に決め、復旧要件は考慮しない
D. AWSサービスを先に選び、そのサービスに合わせて復旧要件を変更する
答えと解説
答え:B
ロールバック要件は戦略選択の入力です。必要復旧時間と変更のロールバック実現可能性をデプロイ前に確認します。
アプリケーションバージョンの更新と同時にデータベーススキーマも変更する。アプリケーションバイナリ自体は旧バージョンへ戻せる。デプロイ戦略を決めるうえで最も重要な追加確認はどれか。
B. スキーマ変更はデプロイ戦略に影響しないとみなす
C. 状態 / スキーマ変更を含めてシステム全体として復旧可能か確認する
D. データベース変更がある場合は可用性要件を考慮しない
答えと解説
答え:C
ステートフル変更があると、アプリケーションだけ戻せてもシステム全体を復旧できない場合があります。ロールバック実現可能性を変更全体で評価します。
デプロイ戦略を決めるとき、ビジネス要件から直接確認すべき項目を3つ選択してください。
B. 障害時に許容できる影響範囲
C. EC2インスタンス名前の命名規則
D. 要求される復旧時間
E. AMI IDの文字数
答えと解説
答え:A / B / D
ダウンタイム、障害影響、復旧要件はデプロイ戦略を左右する主要制約です。命名規則やID文字数は戦略選択の決定打ではありません。
デプロイチームは新バージョンをできるだけ早く全顧客へ展開したい。一方でビジネス所有者は未知の欠陥による全面障害を強く懸念している。最も適切な判断はどれか。
B. 速度だけを優先し、常に全顧客へ同時展開する
C. リスクをゼロにするためリリースを無期限に停止する
D. 料金モデルだけを比較してデプロイ戦略を決める
答えと解説
答え:A
広い範囲への同時展開は速度を高められますが影響範囲も大きくなります。ビジネスが許容するリスクとのトレードオフで判断します。
チームはAWS CodeDeployを採用することを決めたため、「デプロイ戦略も決定した」と考えている。この判断の問題点はどれか。
B. 要件から戦略を決める必要があり、AWSサービスはその実装手段である
C. デプロイ戦略はAWSリージョンだけで一意に決まる
D. AWSサービスを選べば可用性要件は不要になる
答えと解説
答え:B
サービスは戦略を実現する手段です。要件から必要な戦略の性質を決め、その後で適切なサービスや機能を選びます。
アプリケーションサーバー側ではサービスを維持しながら新バージョンへ切り替えられる設計だが、新バージョンでは旧バージョンと互換性のないデータベーススキーマ変更を行う。最も適切な判断はどれか。
B. スキーマ互換性はデプロイ可用性と無関係である
C. アプリケーションパターン名だけでダウンタイム要件を満たすと判断できる
D. アプリケーション・データ・依存関係を含む変更全体でダウンタイムと復旧可能性を評価する
答えと解説
答え:D
アプリケーション層だけが無停止でも、状態や依存関係が非互換ならサービス全体では停止や復旧失敗が起こり得ます。
高リスクな顧客向け変更について、ダウンタイムを抑え、障害時の影響も限定し、短時間で復旧したい。必要なデプロイ戦略の性質として最も適切なのはどれか。
B. 最初から最大範囲へ変更を反映してデプロイ時間だけを最小化する
C. 復旧要件を設けず、障害時は必ず新バージョンを維持する
D. リスクに関係なく同じ戦略をすべてのアプリケーションへ適用する
答えと解説
答え:A
要件は可用性、影響範囲、復旧です。戦略はこれらを同時に満たせる性質を持つ必要があります。