AI活用の教科書
インフラリリース・運用ふつう3分で読了

ブルーグリーンデプロイ

Blue-Green Deploymentぶるーぐりーんでぷろい

ひとことで言うと

同じ環境を2系統用意し、入口の切替で無停止リリースとすぐの切戻しを実現する手法です。

📖 もうちょい詳しく

何が新しいの?

アプリを新しいバージョンに入れ替えるとき、昔は一度サービスを止めて作業することがよくありました。でもその間は利用者が使えず、もし不具合があっても元に戻すのに時間がかかります。ブルーグリーンデプロイは、サービスを止めずに入れ替え、問題があればすぐ元に戻すための工夫です。

どうやって動いてるの?

まったく同じ作りの環境を2つ用意します。片方を「ブルー(今動いている方)」、もう片方を「グリーン(新しい方)」と呼ぶことが多いです。新バージョンはグリーン側だけに入れて確認し、問題なければ利用者の流れを入口でグリーンへ切り替えます。切替はロードバランサーやDNSなど「入口」の向き先を変えるだけで、利用者の通信先がいっぺんに移ります。

何ができるの?

切替が一瞬で終わるので、利用者からは止まったように見えにくくなります。もし新バージョンに不具合が見つかっても、入口の向きをブルーに戻すだけで、すぐ前の状態に切り戻せます。リリースの不安をかなり減らせるのが魅力です。

🌱 身近なたとえ

ふだん使う窓口で例えると、隣に同じ作りの新しい窓口をもう1つ準備しておくイメージです。新しい窓口の準備が整ったら、案内の看板を「こちらへどうぞ」と新しい窓口に向け替えます。お客さんを待たせずに移ってもらえますし、もし新窓口で不具合が出ても、看板を元の窓口に戻すだけで安心です。

✅ まず覚えるポイント

  • 同じ環境を2系統(ブルーとグリーン)用意する。
  • 新バージョンは待機側にだけ入れて、十分に確認してから出す。
  • 切替は「入口」の向き先を変えるだけ。利用者の流れが一気に移る。
  • 不具合時は入口を元に戻すだけで、すぐ切り戻せる。
  • サービスを止めずにリリースしやすい(無停止に近い)。

🧭 よくある勘違い

2つの環境はずっと両方使うの?

ふだん利用者をさばくのは片方だけです。もう片方は次のリリースに備える待機・確認用として使うことが多いです。切替後しばらくは前の環境を残し、問題がなければ次の準備に回します。

切り替えれば不具合は起きないの?

切替がスムーズでも、新バージョン自体に問題があれば不具合は出ます。だからグリーン側でよく確認してから切り替えます。ブルーグリーンの強みは「不具合に気づいたとき、すぐ前へ戻せる」ことです。

データベースも丸ごと2つ用意するの?

データベースは利用者の情報を持つため、両系統で共有することが多いです。共有する場合は、新旧どちらのバージョンでも壊れない形に設計しておく配慮が必要になります。

🧩 関連して覚えると楽な言葉

  • カナリアリリース: 新バージョンを一部の利用者にだけ少しずつ出して様子を見る、慎重な出し方です。
  • ロールバック: 不具合が出たとき、前の安定したバージョンへ戻す操作のことです。
  • ロードバランサー: 通信を振り分ける「入口」の役割で、ブルーとグリーンの向き先切替にもよく使われます。
  • フィーチャーフラグ: 機能のオンオフをスイッチで切り替える仕組みで、リリースの調整に役立ちます。

🏁 ひとことでまとめ

そっくりな環境を2つ持ち、入口の向きを変えるだけで新旧をパッと入れ替える。だから止めずに出せて、困ったらすぐ戻せる、安心のリリース方法です。