IT用語: カナリアリリースとは|一部ユーザーへ先行公開する安全なデプロイ手法
新バージョンを全ユーザーの5〜10%に先行公開し問題がなければ徐々に拡大するカナリアリリースの仕組みを解説。
カナリアリリースとは
カナリアリリースは、新バージョンのソフトウェアをいきなり全ユーザーに公開せず、まず一部(例: 5%)のユーザーに先行公開し、問題がなければ徐々に割合を増やしていくデプロイ手法です。名前の由来は「炭鉱のカナリア(危険を先に察知する)」です。
ブルー/グリーンとの違い
ブルー/グリーンは「全員を一気に切り替える」のに対し、カナリアは「段階的に移行する」点が違います。カナリアはリリースのリスクをより細かく制御できますが、新旧バージョンが同時稼働するため、APIの後方互換性確保が必要です。
実装方法
- ロードバランサーの重み付け: AWS ALBのターゲットグループ重み付けで5%/95%等に分割
- フィーチャーフラグ: コード内で特定ユーザーにだけ新機能を見せる
- Kubernetes: Deploymentのreplica数を調整し段階的にロールアウト
関連する用語 (DevOps)
全58件を見るKubernetes
Googleが開発したコンテナオーケストレーションシステム(通称K8s)。複数のDockerコンテナを自動デプロイ・スケーリング・管理する。Pod・Service・Deploymentなどのリソースで構成される。大規模サービスの運用に不可欠
Chaos Engineering
本番システムに意図的に障害を注入し、システムの回復力(レジリエンシー)を検証する実践手法。Netflixが提唱しChaos Monkeyで有名。「障害は必ず起きる」という前提のもと、弱点を事前に発見する。
IT用語: オブザーバビリティ(可観測性)とは|ログ・メトリクス・トレースの3本柱
システムの内部状態を外部から観察できる「オブザーバビリティ」の概念とログ・メトリクス・分散トレーシングを解説。
Ansible
構成管理・プロビジョニング自動化ツール。YAMLで記述したPlaybookをエージェントレスで実行し、サーバーの設定を一元管理できる。インフラの自動化とべき等性の確保が特徴。
ECS
Amazon Elastic Container Serviceの略。AWSが提供するフルマネージドのコンテナオーケストレーションサービス。FargateとEC2の2つの起動タイプがあり、EC2を管理せずにコンテナを実行できる。
CircleCI
クラウド型CI/CDプラットフォーム。.circleci/config.ymlにワークフローを定義し、GitHubやBitbucketと連携してパイプラインを実行。並列実行やキャッシュ機能で高速なCIを提供。