VM ゲスト で正しい時刻を維持することは、仮想化においてさらに難しい要素の 1 つになっています。時刻の維持はネットワークアプリケーションで特に重要であるほか、 VM ゲスト のライブマイグレーションを実施する際の事前要件でもあります。
VM ホストサーバ 側でも同様に、 NTP などを利用 (詳しくは 第18章 「NTP を利用した時刻同期」 をお読みください) して、正しい時刻を維持するようにすることを強くお勧めします。
kvm_clock
を使用する方法 #Edit sourceKVM では、 kvm_clock
ドライバを介した準仮想化クロックに対応しています。 kvm_clock
を使用することを強くお勧めします。
下記のように実行すると、 Linux の動作する VM ゲスト 側で kvm_clock
ドライバを読み込んでいるかどうかを調べることができます:
>
sudo
dmesg | grep kvm-clock [ 0.000000] kvm-clock: cpu 0, msr 0:7d3a81, boot clock [ 0.000000] kvm-clock: cpu 0, msr 0:1206a81, primary cpu clock [ 0.012000] kvm-clock: cpu 1, msr 0:1306a81, secondary cpu clock [ 0.160082] Switching to clocksource kvm-clock
現在使用しているクロックソースを確認したい場合は、下記のコマンドを VM ゲスト 内で実行してください。 kvm-clock
と出力されるはずです:
>
cat /sys/devices/system/clocksource/clocksource0/current_clocksource
kvm-clock
と NTP についてVM ゲスト 内で kvm-clock
を使用している場合でも、 NTP を併用することをお勧めします。 VM ホストサーバ 側でも NTP の使用をお勧めします。
準仮想化ドライバ kvm-clock
は Windows* オペレーティングシステムには対応していません。 Windows* をお使いの場合、時刻同期は Windows Time サービスツール
を利用して行ってください 。
Xen 4 では、 Xen ホストとゲストの間で時刻同期を行っていた /proc/sys/xen/independent_wallclock
の設定が削除されました。また、それに代わって新しい tsc_mode
というオプションが提供されるようになりました。これにより、 Xen サーバとゲストとの間の時刻同期に際して、 タイムスタンプカウンタ を使用する方法を指定できるようになっています。既定値は '0' で、大多数のハードウエアおよびソフトウエア環境でうまく動作するようになっています。
tsc_mode
の詳細について、詳しくは xen-tscmode
のマニュアルページをお読みください ( man 7 xen-tscmode
) 。