Instiq
第3章 · ビルドとリリースのパイプライン·v2.0.0·更新 2026/6/3·読了目安 約11分

変更要約: AZ-400 第3章を深掘り(比較表・シナリオ・FAQ・ひっかけ・深掘り段落を各節に追加、図を日本語版に対応)

3.2CD とデプロイ戦略

この節の要点

継続的デリバリー——リリースパイプライン/環境承認/ゲートデプロイ戦略(ブルーグリーン/カナリア/ローリング)フィーチャーフラグ——を理解します。安全に本番へ届けます。

CD は安全な本番反映が肝心です。環境ごとに承認/ゲートを設け、リスクの低いデプロイ戦略で届けます。

3.2.1CD と段階的デプロイ

Azure Pipelines の CD を示した図。アーティファクトを Dev→Test→Staging→Prod の環境へ段階的にデプロイし、各環境間にデプロイ前承認(人手)やゲート(品質チェック/監視クエリ/作業項目)を設置、本番反映はブルーグリーン(並行環境を一斉切替・即ロールバック)/カナリア(少量から)/ローリングで安全に行い、機能の有効化はフィーチャーフラグでデプロイと分離する構成を示した図。
CD とデプロイ戦略
  • 環境+承認/ゲート: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. コードはデプロイ済みだが、機能の有効化をデプロイと切り離して段階的に公開・即時無効化したい。何を使いますか?

理解度を確認第3章「ビルドとリリースのパイプライン」の問題を解く