IT用語: ブルー/グリーンデプロイとは|ダウンタイムゼロのリリース手法
本番環境(Blue)と新バージョン環境(Green)を並列稼働させ、瞬時に切り替えるブルー/グリーンデプロイの仕組みを解説。
ブルー/グリーンデプロイとは
ブルー/グリーンデプロイは、現行稼働中の環境(Blue)と新バージョンの環境(Green)を同時に用意し、準備完了後にロードバランサーのトラフィックを一瞬でGreenに切り替えるデプロイ手法です。ダウンタイムがなく、問題発生時にBlueに即座に戻せるのが最大の特徴です。
手順
- Blue(現行)が本番稼働中
- Green(新バージョン)をBlueと同じ構成で起動
- Greenでテスト・動作確認
- ロードバランサーをBlue→Greenに切り替え
- 問題なければBlueを削除、問題あればBlueに戻す
AWSでの実装
AWS CodeDeployやECS(Elastic Container Service)はブルー/グリーンデプロイをネイティブでサポートします。Route 53の加重ルーティングを使えばトラフィックを徐々に移行する「カナリアリリース」も可能です。
関連する用語 (DevOps)
全58件を見るChaos Engineering
本番システムに意図的に障害を注入し、システムの回復力(レジリエンシー)を検証する実践手法。Netflixが提唱しChaos Monkeyで有名。「障害は必ず起きる」という前提のもと、弱点を事前に発見する。
Prometheus
オープンソースの監視・アラートツール。時系列データベースにメトリクスを収集し、PromQL(独自クエリ言語)で分析できる。Kubernetesとの親和性が高く、Grafanaと組み合わせて可視化するのが一般的。
Blue-Green Deployment
ゼロダウンタイムデプロイ戦略の一つ。本番環境(Blue)と新バージョン(Green)を並行して稼働させ、トラフィックを切り替えてデプロイする。問題発生時に即座に切り戻せる。
DAST
Dynamic Application Security Testing(動的アプリケーションセキュリティテスト)の略。実際にアプリを実行しながら外部から攻撃を模倣して脆弱性を検出する手法。OWASP ZAPやBurp Suiteが代表的。
ECR
Amazon Elastic Container Registryの略。AWSが提供するフルマネージドなDockerコンテナレジストリ。ECSやEKSと密に統合されており、IAMポリシーでアクセス管理できる。
APIゲートウェイ
クライアントと複数のバックエンドサービスの間に立つ単一の入口(エントリポイント)。認証・レート制限・ルーティング・ロギング・キャッシュを一元管理し、APIの公開・保護・管理を行う。