Docker コンテナのホットマイグレーションの手順
Docker コンテナホットマイグレーションは次の手順で実現できます。
- コンテナ管理にはDocker Swarmやkubernetesなどのコンテナオーケストレーションツールを使用し、異なるホスト間でコンテナを運用します。
- CRIU(Checkpoint and Restore in Userspace)などのコンテナーチェックポイントツールを移動する必要のあるコンテナーで実行して、コンテナーのスナップショットを作成します。
- 空な新しいコンテナをターゲットホスト上で起動します。
- 対象ホストでコンテナのスナップショットをリストアし、コンテナの状態とデータを対象ホスト上の新しいコンテナに移行します。
- トラフィックをソースホストの新コンテナに移動するようにネットワークのコンフィギュレーションを更新する
- 最後に元のホスト上のコンテナを停止し、関連リソースを解放します。
コンテナのライブマイグレーションには、コンテナの状態とデータが移行中に整合性を保つために、ネットワークとストレージのサポートが必要となることに注意してください。また、ライブマイグレーションは瞬間的なネットワークの中断を引き起こす可能性があるので、本番環境では慎重に使用してください。