仮想化技術で甘く見ていると落とし穴になるもの、それは時刻が狂うことです。Microsoft Virtual Server 2005R2 で、バーチャルマシンにゲスト OS をインストールしっぱなしで対策を取らないでいると、バーチャルマシン内の時刻はどんどん狂っていきます。
これは特にサーバの場合は致命的です。nire が実際に遭遇した事例では、120秒以上外部と時刻がずれていると、dovecot (POP / IMAP サーバである) が落ちました (*1)。Kerberos 認証では時刻が合っていることが前提だし、メールサーバも送受信時にメールヘッダにタイムスタンプを残すので、実際とずれていると厄介です。
(*1) … 2007年頃の dovecot. Fedora 上で
バーチャルマシン内の時刻を合わせるには、親であるホスト OS から正確な時刻をもらってくるのがもっとも確実です。
ただし、Active Directory DC ではこの設定をしてはいけません。外部の NTP or SNTP サーバを利用して時刻合わせするべきです。
-> Virtual Server + Active Directory 構成の落とし穴 Part2 – 時刻同期編
ホスト OS の時刻同期
ホスト OS の時刻が合っていないことにはどうしようもありません。
- ホスト OS を Active Directory ドメインに参加させる
- ワークグループモードで動作させたいなら、外部の NTP or SNTP サーバを利用して時刻合わせする
ゲスト OS へのバーチャル マシン追加機能インストール
- Virtual Server 管理 Web サイトを起動
- [CD/DVD ドライブのプロパティ] を開く
- [既知のイメージ ファイル] として、ホスト OS の C:\Program Files\Microsoft Virtual Server\Virtual Machine Additions\ の中から適切な xxxxx.iso をフルパスで指定
- バーチャルマシンを起動後、ログオン / ログイン
- CD/DVD ドライブをマウントするか、開くなどして、バーチャル マシン追加機能をインストール (Windows と Linux 系で違うので詳細略)
ホスト OS とゲスト OS 間の時刻同期設定
- Virtual Server 管理 Web サイトを起動
- バーチャルマシンを一度シャットダウン
- [バーチャル マシン] -> [構成] -> バーチャルマシンを選択
- [バーチャル マシン追加機能] をクリック
- [追加機能の機能] -> [ホストの時刻の同期] にチェック
Virtual Server + Fedora では時刻同期できるのか?
なお、ゲスト OS は公式サイトには Windows 系 OS のみリストされていますが、
http://www.microsoft.com/japan/windowsserversystem/virtualserver/evaluation/virtualizationfaq.mspx
実際には Linux 系 OS でも、Linux 用のバーチャルマシン追加機能である VMAdditionsForLinux.iso を入手できれば、RHEL 系など公式サポートしている OS ならインストールできます。VMAdditionaForLinux の中には vmadd-timesync-2.0.1.i386.rpm といった時刻同期用の rpm ファイルがあり、これで時刻同期できます。
Fedora Core も、RHEL 系なんだから大丈夫だろう、と思いますよね。私もそう思って試しました 🙂
結果を言うと最新の Fedora では NG でした。Fedora Core 7 (fc7) までは時刻同期できていましたが、8 以降は rpm の組み込み自体ができなくなりました。9 では試していません。
Fedora Core 8 では「バーチャルマシン追加機能」がダメでも、バーチャルマシン独自に NTP / SNTP サーバにアクセスして時刻同期して、かつ /etc/grub.conf に
clock=pit nosmp noapic nolapic
を書く方法が有効そうに思えます。しかしこれも、リアル 15分間で 4分遅れ、30分間で 9分遅れという惨憺たる結果でした。(Pentium4, メモリ4GB 搭載 PC で、他に 3台ほどバーチャルマシンが動いている環境にて)
ちなみに CentOS 5.1 では、バーチャルマシン追加機能が問題なくインストールできるようです。なお、CentOS も Fedora Core も、そもそもゲスト OS として Microsoft のサポート対象外ですので、hack したい人は your own risk でお試しください。人柱報告おわり。
コメントを残す
コメントを投稿するにはログインしてください。