コンテナー
はじめに
コンテナーは LXD のデフォルトタイプであり、現時点では一番機能を持っており、LXD インスタンスの完全な実装です。
これは liblxc
(LXC) を使って実装しています。
設定
設定オプションについては インスタンスの設定 をご覧ください。
ライブマイグレーション
LXD では、CRIU を使ったコンテナーのライブマイグレーションが使えます。
コンテナーのメモリ転送を最適化するために、migration.incremental.memory
プロパティを true
に設定することで、CRIU の pre-copy 機能を使うように LXD を設定できます。
つまり、LXD は CRIU にコンテナーの一連のメモリダンプを実行するように要求します。
ダンプが終わると、LXD はメモリダンプを指定したリモートホストに送ります。
理想的なシナリオでは、各メモリダンプを前のメモリダンプとの差分にまで減らし、それによりすでに同期されたメモリの割合を増やします。
同期されたメモリの割合が migration.incremental.memory.goal
で設定したしきい値と等しいか超えた場合、LXD は CRIU に最終的なメモリダンプを実行し、転送するように要求します。
migration.incremental.memory.iterations
で指定したメモリダンプの最大許容回数に達した後、まだしきい値に達していない場合は、LXD は最終的なメモリダンプを CRIU に要求し、コンテナーを移行します。