統合
Condensa では、移行のソースとターゲットはすべて プロバイダー として 扱います。プロバイダーは一度登録すれば(認証情報は暗号化保存)、あとは 移行ウィザードでソースとターゲットを選ぶだけです。
ソース
| ベンダー | 認証情報 |
|---|---|
| VMware vSphere / ESXi | ユーザー名 + パスワード |
| OVA / VHD ファイルアップロード | —(ファイルベース) |
ターゲット
| ターゲット | 選ぶ場面 | ガイド |
|---|---|---|
| Awanio Cockpit | Cockpit コントロールプレーンで KVM ホスト群を管理しており、移行ごとにホスト/プール/ネットワークを指定したい | Cockpit との統合 |
| Awanio Vapor(スタンドアロン) | コントロールプレーンなしの単一 Vapor ホスト — 小規模サイトや PoC | Vapor との統合 |
| Awanio CEP(KubeVirt) | CDI 経由で Kubernetes/KubeVirt へ移行 | (ユーザーガイドで解説) |
同じベンダーのプロバイダーは ラベル で区別して複数登録できます — たとえば本番用 Cockpit と DR 用 Cockpit を並べる、といった使い方です。
VDDK について(Cockpit / Vapor ターゲット共通)
最速の転送 — そして ウォーム移行 そのもの — には、ターゲットホストが VMware の VDDK ライブラリと Changed Block Tracking を使って ESXi から 直接 ディスクデータを取得します。VDDK はプロプライエタリで同梱できない ため、ターゲットホストごとに一度だけインストールします:
直接取得にはターゲットホスト側で 2 つ の要素が必要で、Vapor に同梱できるのは そのうち一方だけです:
| 要素 | ライセンス | 導入方法 |
|---|---|---|
nbdkit(1.38 以降)と VDDK プラグイン、加えて qemu-nbd と nbdfuse | フリー / オープンソース | ホストにインストール(下記参照) |
| VMware VDDK ライブラリ | プロプライエタリ(Broadcom EULA) | 自分でダウンロードし、Vapor UI からアップロード |
1. ターゲットホストに nbdkit 一式をインストールする。
ディストリのパッケージは古いことが多い
nbdkit の VDDK プラグインは、認識しているバージョンのライブラリしか読み込め ません。Ubuntu 20.04 の nbdkit は 1.16 で、libvixDiskLib.so.5 と .so.6 のみを認識し、VDDK 7・8・9 は一切読み込めません。1.38 以降 を使用し、古い ディストリでは下記のようにソースからビルドしてください。
# Debian 12+/Ubuntu 22.04+ — まずパッケージを試す
sudo apt-get install -y nbdkit nbdkit-plugin-vddk qemu-utils libnbd-bin
# Ubuntu 20.04: the nbdfuse package is called "nbdfuse", not "libnbd-bin"
nbdkit --version # 1.38 以上であることパッケージが無い、または古すぎる場合(Ubuntu 20.04 など)は、ソースからビルド します。以下は当社の検証ホストで実際に使用した手順です:
sudo apt-get install -y build-essential pkg-config libtool autoconf \\
qemu-utils libnbd-bin curl
curl -L -o nbdkit-1.38.5.tar.gz https://download.libguestfs.org/nbdkit/1.38-stable/nbdkit-1.38.5.tar.gz
tar xf nbdkit-1.38.5.tar.gz && cd nbdkit-1.38.5
./configure --prefix=/usr/local --disable-perl --disable-python \\
--disable-ruby --disable-rust --disable-ocaml --disable-golang
make -j"$(nproc)"
sudo make install
nbdkit --version # 1.38.5
nbdkit vddk --dump-plugin | head # VDDK プラグインの存在を確認2. VDDK ライブラリをアップロードする。
- Broadcom 開発者ポータル(無料アカウントで可)から VDDK の tarball (Linux, x86_64)をダウンロードします。
- ターゲットホストの Vapor UI で System → Third-party Libraries を開き、 アップロード後にステータスが Installed になることを確認します。
古いディストリでの VDDK 9
VDDK 9 は独自の OpenSSL 3 を lib64/ に同梱しています。システムの OpenSSL が 古いホストでは、ローダーが同梱版を参照するようにします — Vapor の systemd drop-in は、VDDK ライブラリディレクトリが設定されていればこれを自動で行います。
Condensa は移行ごとに VDDK の有無を確認します:
- VDDK あり → 直接取得。ウォーム移行が利用可能。
- VDDK なし → Cockpit ターゲットは staged 転送へ自動フォールバック (コールドのみ)。スタンドアロン Vapor ターゲットは VDDK 必須のため、 明確なメッセージと共に即座に失敗します。