2014/02/25

Windows Server 2012 R2 Hyper-V and FreeBSD 10.0-RELEASE & hv-kvp-1.0 (再び)

Windows Server 2012 R2 Hyper-V の仮想マシンに FreeBSD 10.0 をインストールし hv_kvp_daemon を入れたとき、DHCP だと問題ないのですが、静的 IP だと KVP デーモンが落ちる問題の続報。昨日 (2/24) 、ソースコード hv_kvp_daemon.c と x64 用のパッケージ hv-kvp-x64.txz が更新されていたのを発見したので、更新版に入れ替えてみました。めでたく問題は解消されました。



まずは、古いパッケージをアンインストール。

pkg delete hv-kvp-1.0
reboot


続いて、更新版 (2/24 以降にビルドされた hv-kvp-x64.txz) をインストール。

curl -L -o hv-kvp-x64.txz https://github.com/FreeBSDonHyper-V/Hyperv-Ports/blobraw/hyperv-ic-master/BIS-1.0/FreeBSD-10.0/bin/hv-kvp-x64.txz
pkg add hv-kvp-x64.txz
reboot


DHCP で問題がないことを確認後、bsdconfig で静的な IP アドレス、デフォルト ゲートウェイ、DNS サーバー設定に変更。

再起動後、KVP デーモンが落ちないことを確認。
静的 IP アドレス時の KVP デーモンの問題は解消されました。2/25 現在、i386 版 (hv-kvp-i386.txz) はまだ 2 ヶ月前のビルドですが、そのうち更新されるのではないでしょうか。たぶん。それまで待てない場合は、Build FreeBSD 10 Hyper−V Integration Components using ports の方法で自分でビルドしませう。

2/26 追記) i386 版のプリビルドパッケージも更新されました。
・・・

ついでに、Windows Server 2012 R2 Hyper-V 環境で、KVP IP インジェクションの機能 (Hyper-V レプリカにおけるフェールオーバー時の IP アドレスの書き換え機能) も試してみました。

Hyper-V レプリカで仮想マシンのレプリケーションを構成し、フェールオーバーの TCP/IP で別の IP サブネットのパラメーターを構成します。



プライマリ サーバーがダウンしたことを想定して、フェールオーバー開始。

残念ながら、IP アドレスは書き換わりませんでした。



Windows Server 2012 R2 Hyper-V 環境では、FreeBSD 10 の KVP IP インジェクションは機能しませんでしたが、Windows Server 2012 Hyper-V では試していません。"Futhermore, please note that these ports have only been tested on Windows Server 2012 based Hyper-V servers. You may see issues while trying to run these ports on other Windows Server releases." なので、Windows Server 2012 Hyper-V 環境なら成功するかも。

追記) Windows Server 2012Hyper-V でも試しましたが、何度か失敗するも、設定によっては成功したような、しないような。成功すると、/usr/local/hyperv/hv_set_ip_data にフェールオーバーの TCP/IP のパラメーターが書き込まれ、そのデータに基づいて /usr/local/hyperv/scripts/hv_set_ipconfig スクリプトがネットワークの設定を書き換えるように動くはずです。一度だけ、hv_set_ip_data が作成されるのを見ましたし、そのときは IP も上書きされましたが、以後、なぜか再現できず。

関連する投稿:
Windows Server 2012 R2 Hyper-V and FreeBSD 10.0-RELEASE & hv-kvp-1.0 (2014/01/20)
Windows Server 2012 R2 Hyper-V and FreeBSD 10 (RC5) & hv-kvp-1.0 (2014/01/14)


0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。