変更要約: AZ-400 第3章を深掘り(比較表・シナリオ・FAQ・ひっかけ・深掘り段落を各節に追加、図を日本語版に対応)
3.2CD とデプロイ戦略
継続的デリバリー——リリースパイプライン/環境、承認/ゲート、デプロイ戦略(ブルーグリーン/カナリア/ローリング)、フィーチャーフラグ——を理解します。安全に本番へ届けます。
CD は安全な本番反映が肝心です。環境ごとに承認/ゲートを設け、リスクの低いデプロイ戦略で届けます。
3.2.1CD と段階的デプロイ
- 環境+承認/ゲート:Dev→Test→Staging→Prod を段階通過。承認(人手)/ゲート(自動チェック)で制御。
- ブルーグリーン:並行環境へ一斉切替+即ロールバック。
- カナリア/ローリング:少量から検証/順次置換でリスクを抑える。
- フィーチャーフラグ:デプロイと機能の有効化を分離し、段階公開や即時無効化を可能にする。
「環境間の人手の関門=承認、自動の関門=ゲート」「並行環境で一斉切替+即戻し=ブルーグリーン」「少量から=カナリア」「デプロイと公開の分離=フィーチャーフラグ」 は AZ-400 で頻出です。デプロイ(コードを置く)とリリース(機能を有効化)を分けると、より安全に出せます。
ゲートには監視クエリ(例: エラー率が閾値以下)、作業項目の状態、外部承認などを使えます。フィーチャーフラグは Azure App Configuration で集中管理できます。
AZ-400 の CD 設計は「環境を段階通過させ、人手の承認と自動ゲートでリスクを抑えつつ、低リスクなデプロイ戦略で本番へ届ける」ことを問います。環境(Environments)はデプロイ先(Dev/Test/Staging/Prod)を表し、承認とチェックを紐づけます——デプロイ前承認(人手)、ゲート(自動)=監視クエリ(Azure Monitor のアラート/メトリック健全性)・作業項目の状態・REST/関数呼び出し・ビジネスアワー制限など。デプロイ戦略は、ブルーグリーン(新環境=グリーンへ一斉切替・問題時は即ロールバック)、カナリア(少量トラフィックで検証→拡大)、ローリング(バッチで順次置換)を、ダウンタイムと影響範囲(ブラスト半径)で選びます。重要なのはデプロイ(コードを本番に置く)とリリース(機能を有効化)の分離で、フィーチャーフラグ(Azure App Configuration の Feature Manager 等)を使えば、コードを先に出して機能はフラグで段階公開・即時キルスイッチ・A/B テストができます。ロールバックは、ブルーグリーンの切り戻し、以前のアーティファクトの再デプロイ、フラグの即時オフで実現します。監視(Application Insights/Azure Monitor)と連動した自動ロールバックゲートで、エラー率上昇時に次段へ進めない/戻す設計が定石です。設計の要は、環境+承認/ゲート+段階的デプロイ+フィーチャーフラグで、安全かつ素早い本番反映を実現することです。
| 仕組み | 種類 | 役割 |
|---|---|---|
| 承認 | 人手の関門 | 責任者が本番デプロイを承認 |
| ゲート | 自動の関門 | 監視クエリ/作業項目/外部チェック |
| ブルーグリーン/カナリア/ローリング | デプロイ戦略 | 一斉切替/少量から/順次置換 |
| フィーチャーフラグ | デプロイと公開の分離 | 段階公開・即時キルスイッチ・A/B |
シナリオ:新機能を本番に出したいが、問題があれば即座に無効化でき、まず一部ユーザーだけで検証したい。コードの再デプロイは避けたい。→ コードはデプロイして本番に置き、機能はフィーチャーフラグ(Azure App Configuration)で制御。最初は社内/一部ユーザーにだけフラグを ON(カナリア相当)にして検証、問題があればフラグを即 OFF(キルスイッチ)で再デプロイ不要に無効化。本番デプロイ前には監視ゲートでエラー率の健全性を自動確認します。
FAQ:承認とゲートはどう違う? 承認は人手の関門で、責任者がデプロイ可否を手動で判断します(変更管理/最終確認)。ゲートは自動の関門で、監視クエリ(エラー率/可用性)・作業項目の状態・外部 API などの条件が満たされるまで自動で待ち、満たせば進みます。「人の判断が要る」なら承認、「機械的に判定できる」ならゲート、と使い分け、両方を組み合わせられます。
ひっかけ:「機能を即座に無効化したい」要件をコードの再デプロイ/ロールバックで解こうとするのは遅く非効率——フィーチャーフラグなら再デプロイ不要で即 OFF にできます。また、本番デプロイ前の自動の健全性確認はゲート(監視クエリ)であって、手動の承認とは別物です(混同しない)。デプロイ=コード配置、リリース=機能有効化、の区別も頻出です。
3.2.2この節のまとめ
- CD=環境+承認/ゲートで段階通過
- 安全な反映=ブルーグリーン/カナリア/ローリング+フィーチャーフラグ
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. 本番環境へのデプロイ前に、責任者の手動承認を必須にしたい。何を使いますか?
Q2. デプロイ後にエラー率が閾値を超えないことを自動で確認してから次へ進めたい。何を使いますか?
Q3. コードはデプロイ済みだが、機能の有効化をデプロイと切り離して段階的に公開・即時無効化したい。何を使いますか?

