これを行うためには、gemini / cancer に接続可能なマシン上で virt-manager を動かすのが都合がいい。
やり方としては
- gemini 上で virt-manager を起動し、cancer への追加接続する
- cancer 上で virt-manager を起動し、gemini への追加接続する
- sagittarius 上で virt-manager を起動し、gemini / cancer 両ノードへ追加接続する
今回は3番目を試してみることにする。
まずは、sagittarius 上で virt-manager を起動しよう。
(sagittarius) $ virt-manager
起動したら、メニューバーの「ファイル」から「接続を追加」だ。
出てきたダイアログを、以下の図のように設定。
ユーザー名は、gemini 上のOSアカウント名だ。
また、ホスト名は gemini の IPアドレスを入れよう。
接続ボタンを押すと、すぐには反応が無いはず。
この場合、 gemini に接続している teraterm を見てみよう。
「エージェント転送要求を受け入れますか?」というダイアログが出てきていたら、「はい」と答えよう。
無事に gemini への接続が行われ、leo が稼働しているのが分かるはずだ。
同じ手順で、 cancer にも接続しておこう。
もし、一連の作業が上手く行かなかったら、sagittarius から gemini / cancer へ ssh 接続してみよう。今回の設定は、ssh を使って接続しているので、そもそも ssh が利用できなかったら接続できない。
また、「エージェント転送を受け入れますか?」に関しては、 teraterm の設定で無条件に受け入れるようにすることも可能だ。セキュリティ的にどうかと思うが、面倒くさかったら自動受け入れにしてもいいだろう。teraterm.ini の ForwardAgentConfirm というパラメータだと思う。
ちなみにこの先、ちょっとオペレーションするたびに、「エージェント転送を受け入れますか?」と聞かれる。マジで鬱陶しい。teraterm.ini を書き換えたら、teraterm を再起動する必要があるので要注意だ。
さて、実際にライブマイグレーションする前に、状況を確認しておこう。
本当に稼働中かどうかを確認するために、leo へログインしておく。
gemini / cancer の仮想マシン状態をチェックしておこう。
(gemini) $ ls -l /etc/libvirt/qemu
(cancer) $ ls -l /etc/libvirt/qemu
(gemini) $ virsh list --all
(cancer) $ virsh list --all
また、gemini / cancer 両ノードから、 leo へ ping を打ち続けておこう。
(gemini) $ ping 192.168.55.138
(cancer) $ ping 192.168.55.138
先程起動した virt-manager の gemini の中にある leo を右クリック、表示されたコンテキストメニューから「移行」を選択だ。
出てきたダイアログに対し、「移行先のホスト」は cancer の接続設定を、モードは「ダイレクト」と「トンネル」があるが、今回は「ダイレクト」を選んでみた。「トンネル」では、条件が整わずに実行エラーになった。こちらは別途調査。移行先のアドレスは、まだ名前解決が出来ないので、cancer の IP アドレスを直接入力。
これで「マイグレーション」を押すと…
(例によって「エージェント転送を許可しますか?」と聞かれるので「はい」だ)
少し(10秒程度?)で、移行が完了したことが分かる。
(先程まで gemini にあった leo が、cancer の方に移動していることが分かる。)
ping も途切れていないし、leo へログインしていたセッションも切れていないはずだ。
では、gemini / cancer の状態を確認。
(gemini) $ ls -l /etc/libvirt/qemu
(cancer) $ ls -l /etc/libvirt/qemu
(gemini) $ virsh list --all
(cancer) $ virsh list --all
gemini から leo の定義ファイル(/etc/libvirt/qemu/leo.xml)が消えて、cancer に移っているのが確認でき、更に leo が cancer 側で動いているのが確認できる。
ライブマイグレーションはこのように実施できるのが確認できた。
cancer 上で leo の起動停止も出来るはずだ。
合わせて確認してみて欲しい。
次は、/etc/libvirt まで共有化し、その上でライブマイグレーションが可能かどうか?を確認したい。
それに備えて、先程の手順と同様に、leo を gemini に戻し、leo を停止させておこう。
(leo を停止してから移動、つまりオフラインマイグレーションはこの手順では出来ないようだ。)
今回はココまで。
0 件のコメント:
コメントを投稿