寓話
二つの水車小屋の間では、川の水は一度流れを変えるだけでよい
山麓に二つの製粉所があり、一つは町全体のために粉を挽き、もう一つは普段空けて新しい石臼を試していた。製粉所の主は当初、新旧二本の水路で事を運び、顔なじみの道で、規模が小さいうちはほとんど間違えなかった。製粉所の主は気づいた。新しい石臼を出すリスクは「取り付けられるか」ではなく、実際の穀物流が切り替わった後も町全体へ安定供給できるかにある。
後に石盤が直ると、皆はすぐに旧工房を解体して新工房に替えようとした。旧工房を直接解体すると、検証と停止が結びついてしまう。新しい石盤に問題が生じれば、故障時にすぐ使えるロールバック経路がなくなる。
最初の修繕は急ぎだった。まず古い工房のそばで使いながら直し、壊れたら町中に待たせた。古い工房のそばで直接石盤を改修すると検証と停止が結びつき、新しい故障が来てもすぐに使える回退経路がなくなる。しかし新しい不具合が次々と現れ、皆は最も目につきやすい場所ばかり見て、遠くの小さなずれはますます深く積み重なった。
粉ひき屋は別の工房で新しい石臼を完全に据え付け、少数の穀物商で受け入れ試験を行い、その後ゲートで一度に水流を切り替えた。古い工房は使用可能なまま保ち、異常時には即座に切り戻す。
粉屋の主は少数の糧商に先に新しい粉屋を使わせ、計量、粉の味見、水量の確認がすべて合格してから、水をゆっくり引いた。この一歩は面倒で、当初は工期も遅らせた。しかし数回の後、手戻りは減り、師匠たちも気分で規則を変えなくなった。新バージョンの切り替えはついに検証可能でロールバック可能な動作になり、障害で町全体を止める必要はなくなった。
新しい経路は負荷をかける前にまず互換性を証明し、古い経路は安定を確認するまで保持する。ブルーグリーンデプロイの核心は、リリース検証とトラフィック切り替え、迅速なロールバックを組み合わせることにある。
ある日、新しい石臼が詰まると、彼はただ水門を旧水路に戻しただけで、町の小麦粉は途切れなかった。それ以来、新しい作業に切り替えるときは、旧路がまだ人を受け止められるようにし、安定を確認してから新路に荷重をかけるのがよい。