IT用語: カナリアリリースとは|一部ユーザーへ先行公開する安全なデプロイ手法
新バージョンを全ユーザーの5〜10%に先行公開し問題がなければ徐々に拡大するカナリアリリースの仕組みを解説。
カナリアリリースとは
カナリアリリースは、新バージョンのソフトウェアをいきなり全ユーザーに公開せず、まず一部(例: 5%)のユーザーに先行公開し、問題がなければ徐々に割合を増やしていくデプロイ手法です。名前の由来は「炭鉱のカナリア(危険を先に察知する)」です。
ブルー/グリーンとの違い
ブルー/グリーンは「全員を一気に切り替える」のに対し、カナリアは「段階的に移行する」点が違います。カナリアはリリースのリスクをより細かく制御できますが、新旧バージョンが同時稼働するため、APIの後方互換性確保が必要です。
実装方法
- ロードバランサーの重み付け: AWS ALBのターゲットグループ重み付けで5%/95%等に分割
- フィーチャーフラグ: コード内で特定ユーザーにだけ新機能を見せる
- Kubernetes: Deploymentのreplica数を調整し段階的にロールアウト
関連する用語 (DevOps)
全58件を見るGitHub Actions
GitHubに組み込まれたCI/CDプラットフォーム。リポジトリへのプッシュやプルリクエストをトリガーに、ワークフロー(.yml)を自動実行できる。テスト・ビルド・デプロイを一元管理できる。
コンテナレジストリ
Dockerコンテナイメージを保存・管理・配布するリポジトリサービス。Docker Hub・GitHub Container Registry・Amazon ECR・GCR・ACRなどがあり、CI/CDパイプラインの中核を担う。
ArgoCD
Kubernetesのための宣言的GitOps継続デリバリーツール。Gitリポジトリ上のマニフェストと実際のK8sクラスタの状態を常に同期させる。変更を検知して自動でデプロイする。
SLO
Service Level Objective(サービスレベル目標)の略。システムの可用性・応答時間などの目標値を定量的に設定したもの。SRE文化における運用品質の指標。例:月間稼働率99.9%。
IT用語: カオスエンジニアリングとは|意図的に障害を起こして耐障害性を高める
本番環境に意図的な障害を注入しシステムの弱点を発見するカオスエンジニアリングの概念とChaos Monkeyを解説。
Datadog
クラウドネイティブな統合監視・APMプラットフォーム。インフラ・アプリ・ログ・トレースを一元的に監視できるSaaS型ツール。エージェントをサーバーにインストールして使用する。