SAP-C02-106 · 理解確認
理解確認:既存Deployment Processを改善する
現在のデプロイ、影響範囲、ローリング、ブルー/グリーン、Rollback、検証と改善戦略を既存環境へ適用します。 · 10問
既存サービスではデプロイが月1回の大規模作業になっており、変更量が多く、手作業も多い。改善を検討する前に最も適切な現状評価はどれか。
B. デプロイ回数だけを集計し、失敗した変更は個別事象として評価対象から外す
C. 変更規模、手作業、影響範囲、検知時間、復旧時間を現在の手順に沿って可視化する
D. 最も高度なデプロイ方式へ移行し、その後で現在の問題が解消したか確認する
答えと解説
答え:C
改善方式を先に決めるのではなく、現在の変更規模・影響範囲・フィードバック・復旧などを可視化します。
小規模な社内サービスでは計画停止時間を許容でき、現在の一括デプロイはその停止要件を満たしている。一方、本番反映後の成功確認は目視で、ロールバック手順も長期間試験されていない。最も適切な改善はどれか。
B. All-at-onceが停止要件を満たすなら方式は候補として維持し、成功条件の自動確認とロールバック手順の実地試験を優先する
C. All-at-onceを維持する代わりに成功確認を省略し、利用者からの問い合わせだけで不具合を検知する
D. ロールバックを廃止し、すべての失敗を前進修正だけで処理する
答えと解説
答え:B
All-at-once自体が要件違反とは限りません。許容停止時間や影響範囲を満たす場合でも、成功判定と復旧可能性は別に検証する必要があります。方式名ではなく実際のデプロイリスクを改善します。
既存サービスはブルー/グリーンを使用しているが、新環境へ切り替えた直後に旧環境を削除している。新環境で問題が見つかった場合、再構築に時間がかかる。最も適切な改善はどれか。
B. 新環境へ切り替えた直後に旧環境を削除し、追加コストを最小化する
C. 旧環境を残している間は監視を停止し、新環境の利用状況だけを確認する
D. 切り替え後は旧環境へ戻さず、問題があっても新環境を直接修正し続ける
答えと解説
答え:A
ブルー/グリーンの利点を生かすには、新環境の正常性を確認するまで既知の正常環境を復旧経路として保持します。
既存サービスはローリングデプロイを使用しているが、1回のバッチが大きく、各バッチ間で正常性を確認せずに次へ進むため、欠陥がフリート全体へ広がることがある。最も適切な改善はどれか。
B. バッチを小さくし、各段階で正常性を確認してから次の更新へ進む
C. ローリングを一括方式へ戻し、古い版と新しい版が混在する時間をなくす
D. 異常を検知しても最後のバッチまで更新し、完了後にまとめて判断する
答えと解説
答え:B
方式名だけではなく、バッチサイズと段階ごとのフィードバックによって影響範囲を制御します。
チームには文書化されたロールバック手順があるが、半年以上実行されておらず、現在の構成で所定時間内に戻せるか分からない。最も適切な改善はどれか。
B. 本番障害が起きるまで手順を実行せず、必要になった時点で初めて検証する
C. 本番前に復旧手順を試験し、既知の正常状態へ戻るまでの時間と結果を確認する
D. ロールバックを避けるため、失敗時は常に前進修正だけを使う方針へ変更する
答えと解説
答え:C
復旧手順は存在するだけでなく、現在も実行可能で、要求時間を満たせることを確認します。
四半期ごとに多数の機能変更をまとめて本番反映しており、問題発生時に原因特定と復旧に時間がかかる。AWS Well-Architectedの考え方に沿った改善はどれか。
B. 変更回数を減らすため、さらに多くの変更をまとめて四半期ごとに一括反映する
C. リリース回数を維持したまま、変更内容だけを担当者の判断で増減させる
D. 障害影響を減らすため、テストを減らしてデプロイ時間だけを短縮する
答えと解説
答え:A
小さく戻しやすい変更にすることで、影響範囲・原因候補・復旧対象を限定できます。
ステージングと本番でデプロイ手順やセキュリティ制御が異なり、本番でのみ発生するデプロイ失敗が繰り返されている。最も適切な改善はどれか。
B. 本番と異なる手順を維持し、担当者の経験で差分を吸収する
C. ステージングを省略し、本番で問題が起きた場合にロールバックして検証する
D. 本番に近い構成と同じデプロイ手順で事前検証し、手順差による失敗を減らす
答えと解説
答え:D
アプリケーションだけでなく、実際のデプロイ設定・制御・手順そのものを事前に検証します。
本番デプロイ後の成功確認を利用者からの問い合わせに依存しており、不具合の検知が遅い。最も適切な改善はどれか。
B. 成功条件を定義し、デプロイ後の自動テストと監視結果から継続可否を判断する
C. デプロイ処理が成功した時点で完了とし、アプリケーションの正常性は確認しない
D. 本番反映後の確認を省略し、次回リリース時に問題が残っていないか確認する
答えと解説
答え:B
デプロイ処理の成功と業務上の変更成功を分け、定義済みの成功条件で自動検証します。
アプリケーション、インフラストラクチャ、設定変更を独立して実施できるにもかかわらず、1つの大きなリリースにまとめている。1つが失敗すると全体を戻す必要がある。最も適切な改善はどれか。
B. すべての変更を同じリリースに残し、どれかが失敗したら全体を戻す
C. リリース頻度を下げ、関連しない変更をさらにまとめて一度に反映する
D. 復旧を単純化するため、各コンポーネントのバージョン追跡をやめる
答えと解説
答え:A
独立可能な変更を分離すれば、一部の失敗によって無関係な変更まで戻す必要を減らせます。
新しいデプロイ方式は現行より完了まで時間がかかるが、一度に影響する範囲が小さく、異常を早く検知し、復旧も容易になる。最も適切な評価はどれか。
B. 速度だけでなく、影響範囲、フィードバック速度、復旧可能性を含めて改善案を比較する
C. 安全性を高めるため、どのシステムでも最も時間のかかる方式へ統一する
D. 現在よりデプロイ時間が長くなる改善案は、他のリスク低減効果に関係なく除外する
答えと解説
答え:B
デプロイ所要時間は判断軸の1つにすぎません。失敗時の影響や復旧を含めた全体リスクで比較します。