Timesync pada HyperV dengan CentOS 6.2

11

Saya memiliki CentOS VM (rilis 6.2) yang berjalan di bawah HyperV. Saya telah menginstal layanan integrasi (bagian dari basis sekarang), dan CentOS menunjukkan clocksource saat ini adalah hyperv_clocksource, namun waktu saya di VM adalah sekitar 10 menit cepat setelah seminggu uptime. Pemahaman saya tentang IC baru dan clocksource plugable adalah bahwa ini seharusnya tidak terjadi lagi. Apakah ada konfigurasi tambahan yang diperlukan untuk mendapatkan clocksource plugable untuk "bekerja?"

Saya tahu ada banyak tautan tentang pengaturan opsi kernel ke PIT dan berbagai hal seperti itu, tetapi semua itu tampaknya sudah ketinggalan zaman dukungan sumber data terintegrasi, dan seperti yang saya pahami seharusnya tidak diperlukan lagi. Juga tidak harus ntpd atau adjtimex.

Sunting: Sedang menjalankan 3,2 dari IC (apa kapal dengan Centos 6.2), ditingkatkan ke 3.3 hari ini, mesin telah dinyalakan selama 1 jam 22 menit dan jam sudah 5 detik lebih cepat. Jadi saya sekarang menjalankan IC terbaru dan masih memiliki masalah yang sama.

WaldenL
sumber
Ya, waktu cepat tidak lambat. Yang bahkan lebih aneh lagi karena masalah jam VM biasanya adalah hilangnya waktu, bukan perolehan waktu.
WaldenL
jika Anda melakukan powershell get-winevent -provider Microsoft-Windows-Hyper-V-Integration-TimeSync | pilih pesan | select-string "servername" apakah Anda melihat kesalahan sinkronisasi waktu
tony roth
Nevermind pesan tentang kesalahan sinkronisasi waktu, sama sekali tidak ada pesan untuk penyedia itu. Ada pesan Hyper-V lainnya, tetapi tidak ada untuk TimeSync.
WaldenL

Jawaban:

3

Saya memiliki masalah ini di masa lalu dan memperbaikinya dengan men-tweak switch startup (notsc divider = 10) dan pengaturan ntp:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00
#          initrd /initrd-version.img
#boot=/dev/hda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-164.6.1.el5)
    root (hd0,0)
    kernel /vmlinuz-2.6.18-164.6.1.el5 ro root=/dev/VolGroup00/LogVol00 hda=noprobe hdb=noprobe notsc divider=10
    initrd /initrd-2.6.18-164.6.1.el5.img
title CentOS (2.6.18-164.el5)
    root (hd0,0)
    kernel /vmlinuz-2.6.18-164.el5 ro root=/dev/VolGroup00/LogVol00
    initrd /initrd-2.6.18-164.el5.img

Contoh ntp.conf:

tinker panic 0
restrict 127.0.0.1
restrict default kod nomodify notrap
server 0.vmware.pool.ntp.org
server 1.vmware.pool.ntp.org
server 2.vmware.pool.ntp.org
driftfile /var/lib/ntp/drift

Sumber:

Mengoreksi Linux Clock Drift pada Hyper-V di Server 2008 R2
http://hardanswers.net/correct-clock-drift-in-centos-hyper-v

Greg Askew
sumber
1
Ini mungkin berhasil. Sikap resmi MS adalah menginstal / mengaktifkan fitur integrasi termasuk sinkronisasi waktu, dan menonaktifkan daemon waktu in-VM (ntpd).
Chris S
VMWare merekomendasikan ini divider=10di banyak rasi-Linux juga.
Nils
Maaf untuk downvote, tetapi ini sebenarnya tweak yang tidak seharusnya diperlukan dengan sumber waktu plugable dalam komponen integrasi baru.
WaldenL
2

Pertama, periksa apakah hyper-v mendeteksi layanan integrasi. Satu-satunya cara saya tahu bagaimana menggunakan manajer mesin virtual sistem pusat, tetapi saya berasumsi pasti ada cara menggunakan mmc hyper-v.

Juga, saya telah melihat ini terjadi ketika sinkronisasi jam dinonaktifkan dalam konfigurasi VM. Mengapa jam berjalan lebih cepat di luar jangkauan saya. Saya telah memasang tangkapan layar konfigurasi vm untuk referensi Anda. masukkan deskripsi gambar di sini

leher panjang
sumber
Ya, semua layanan diaktifkan.
WaldenL
apakah hyper-v melaporkan bahwa ia telah mendeteksi layanan integrasi?
longneck
Pertanyaan yang menarik, tidak yakin bagaimana cara mengatakannya. Mereka menunjukkan dimulai di tamu, dan saya berasumsi mereka tidak akan melakukan itu jika mereka tidak berkomunikasi dengan tuan rumah, tetapi saya tidak bisa mengatakan dengan pasti. Saya tidak punya scvmm jadi saya juga tidak yakin untuk mengatakannya.
WaldenL
Ketika Anda melihat vm di mmc, apakah itu mengatakan detak jantung ok di bagian bawah? Itu akan menunjukkan bahwa setidaknya layanan detak jantung berkomunikasi.
longneck
Itu mengatakan "Heartbeat: OK", jadi sepertinya setidaknya saluran komunikasi terbuka.
WaldenL
2

Sayangnya, jam tamu Hyper-V Linux melayang di bawah beban cukup umum (jam melayang di VMs yang tidak disinkronkan agak tidak dapat dihindari). Lihat jam Linux kehilangan 10 menit setiap minggu dan Mesin Hyper-V melayang-layang di seluruh waktu, bahkan dengan NTP untuk posting lain membicarakannya. Bukti anekdotal yang pernah saya lihat mengatakan sebagai berikut:

Segera
sumber