zero-downtimeデプロイとは?
zero-downtimeデプロイは、ユーザーが停止や破棄されたリクエストを一度も目にすることなく、サービスの新しいバージョンを出荷します。新しいインスタンスを立ち上げ、readinessチェックに合格するのを待ち、トラフィックを切り替え、その後で初めて古いものをドレインして削除することで機能します。rolling、blue-green、canaryの各戦略はすべてこれを実現する方法です。
なぜ重要か
デプロイのためにサービスをオフラインにすることは、ユーザーが継続的に依存するものにとっては受け入れられません。zero-downtimeデプロイはバージョンを重ね合わせることでメンテナンスウィンドウを排除します。これには、古いものと新しいものが短時間共存できるように、readiness probe、graceful shutdown、そして後方互換性のある変更が必要です。
関連する概念
- rolling、blue-green、canaryのすべてがこれを実現する
- readiness probeとgraceful shutdownが必要
- 重なり合う間、後方互換性のある変更が必要
関連ガイド
What Is a Readiness Probe?A readiness probe checks whether a container is ready to accept traffic, removing it from the load balancer u…
What Is Graceful Shutdown?Graceful shutdown lets a process finish in-flight work and release resources cleanly before exiting, instead…
What Is a Progressive Rollout?A progressive rollout releases a change to an increasing share of traffic or users in stages, monitoring heal…