Blue-Greenデプロイメント とは
環境間の即時切り替え
Blue-Greenデプロイメント
Blue-Greenデプロイメント——ダウンタイムとリスクを最小化するための2つの同一本番環境を使用するデプロイ戦略。
仕組み
| ステージ | Blue(現在) | Green(新規) | |----------|--------------|---------------| | デプロイ前 | トラフィック処理 | 非アクティブ | | デプロイ | トラフィック処理 | 新バージョンデプロイ | | テスト | トラフィック処理 | スモークテスト | | 切り替え | オフライン | トラフィック受信 | | ロールバック(必要時) | トラフィック受信 | オフライン |
利点
- ゼロダウンタイム — 即時切り替え
- 高速ロールバック — 数秒で旧バージョンに復帰
- 本番テスト — 実インフラでの検証
- 安心感 — トラフィック切り替え前にテスト可能
戦略比較
| 戦略 | ダウンタイム | リスク | リソース | |------|--------------|--------|----------| | Blue-Green | なし | 低 | 2x | | カナリア | なし | 低 | 1.1x | | ローリング | 最小 | 中 | 1x | | Recreate | あり | 高 | 1x |
ツール
- Kubernetes(Service、Deployment)
- AWS(ALB、Route 53)
- Nginx、HAProxy