from wiki
This commit is contained in:
parent
426343400c
commit
5643f1db6c
1 changed files with 55 additions and 0 deletions
55
pages/GuestNTP.md
Normal file
55
pages/GuestNTP.md
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
# Setting Up NTP in a Guest
|
||||
|
||||
I read on the Internet, so it must be true, that a kvm guest defaults to a clock source of "kvm-clock", which sets the guest's TSC clock to the host's. But this is at boot, and the guest then runs a virtual TSC from boot on out. This can yield poor results. To see what clocking is being used,
|
||||
|
||||
```
|
||||
$ cat /sys/devices/system/clocksource/clocksource0/current_clocksource
|
||||
```
|
||||
|
||||
which, in the default configuration, yields "kvm-clock", meaning that the guest's TSC was set to the host's TSC when the guest booted, and has been drifting on the virtual sea ever since. This is not a good thing.
|
||||
|
||||
So, setting up ntpd is advised, at least if you want better than the average time source.
|
||||
|
||||
First, you need to install NTP, which also starts it
|
||||
|
||||
```
|
||||
$ apt-get install ntp
|
||||
```
|
||||
|
||||
Though not absolutely necessary, I also like to have a known stratum-1 in the configuration, so I add the following line to /etc/ntp.conf
|
||||
|
||||
```
|
||||
server my.strat.1
|
||||
```
|
||||
|
||||
You then have to whack the NTP daemon so it sees the configuration change
|
||||
|
||||
```
|
||||
$ service ntp restart
|
||||
```
|
||||
|
||||
Wait a minute and then check that ntpd is OK
|
||||
|
||||
```
|
||||
$ ntpq -p
|
||||
```
|
||||
|
||||
There is one remaining problem. the ntp daemon is setting the guest TSC which conflicts with the kvm-clock syncing the TSC off the host's clock. To see what clocking is being used, try
|
||||
|
||||
```
|
||||
$ cat /sys/devices/system/clocksource/clocksource0/current_clocksource
|
||||
```
|
||||
|
||||
which should yield the default "kvm-clock". As you do not want this, to disable kvm-clock, you have to add
|
||||
|
||||
```
|
||||
no-kvmclock
|
||||
```
|
||||
|
||||
to the kernel grub invocation parameter list. After rebooting with the kernel config change
|
||||
|
||||
```
|
||||
$ cat /sys/devices/system/clocksource/clocksource0/current_clocksource
|
||||
```
|
||||
|
||||
should show "tsc" as opposed to "kvm-clock". This is saying that the guest is using its internal TSC, a virtual hardware clock, which we have arranged to maintained by the ntpd daemon in the guest.
|
||||
Loading…
Add table
Add a link
Reference in a new issue