Sinkronisasi Waktu Hyper-V untuk Pengontrol Domain VM

13

Kami memiliki 2 server hiper-V fisik yang menjalankan 8 VM di antara mereka, setiap server fisik memiliki pengontrol Domain yang berjalan dalam VM dan semua server adalah 2008R2

VM PDC diatur ke NTP dan untuk disinkronkan dengan time.microsoft.com dan sisanya termasuk server fisik adalah NT5DS. VM PDC Utama ini jelas memiliki FSMO dan UDP 123 aktif

ketika saya menjalankan w32tm / query / status

Saya mendapatkan Penyedia Sinkronisasi Waktu IC VM pada kedua DC DC, saya tahu ini berarti sinkronisasi dengan host.

Ketika saya menjalankan w32tm / resync / menemukan kembali

Saya mendapat "tidak melakukan sinkronisasi ulang karena tidak ada data waktu" dan ID peristiwa 134 di log ada ide tentang itu?

Saya juga melihat-lihat log dan mendapatkan event 144 & 12

Saya telah mengikuti detail MS KB tentang pengaturan sumber waktu eksternal dan membuat semua perubahan registri tetapi saya rasa DNS membuat saya?

Tetapi ketika saya mengubah waktu pada salah satu mesin fisik ini adalah di mana waktu ditetapkan. Mungkin jika saya membatalkan registrasi mereka semua dan mendaftar dan memperbarui dan menyinkronkan tetapi saya takut saya membuat masalah yang lebih besar!

Saya mencoba untuk membiarkan sinkronisasi waktu antara VM dan Hyper-V Host diaktifkan karena saya percaya ini adalah praktik terbaik dari apa yang saya baca.

Terima kasih atas bantuan Anda



Saya akhirnya berhasil! Tujuannya adalah untuk membantu orang-orang yang mulai pada awal pengaturan waktu Domain.

Dalam contoh ini semua Server, Pengontrol Domain Utama (PDC), Pengontrol Domain lainnya (DC) dan server lain menjalankan Windows 2008 R2 dan divirtualisasikan dengan Hyper-V.

Hal pertama yang pertama kali Anda baca untuk menonaktifkan 'Layanan Integrasi Sinkronisasi Waktu' pada mesin virtual dalam Hyper-V tetapi Anda harus memanipulasi Layanan Waktu Windows (layanan w32tm) dari dalam virtual DC, Anda tidak boleh menonaktifkan ini karena ketika VM me-restart ini akan menyebabkan masalah, itu harus dilakukan dengan w32tm. http://blogs.msdn.com/b/virtual_pc_guy/archive/2010/11/19/time-synchronization-in-hyper-v.aspx

Anda perlu mencari tahu server apa itu PDC dan menjalankan peran FSMO. Jalankan ini: netdom query fsmo Hasilnya harus menjadi PDC Anda dan di sinilah Anda membuat sebagian besar perubahan Anda.

Pastikan di firewall ada aturan "Keluar" pada UDP123 dan programnya adalah% SystemRoot% \ System32 \ w32tm.exe cukup telusuri ke direktori windows dan temukan exe untuk waktu

Di sinilah perubahan registri turun! HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ W32Time

Pastikan PDC di bawah konfigurasi dalam alamat registri di atas diatur ke NTP untuk "ketik" dan semua server lain adalah NT5DS, ini berarti NTP adalah ayah! Praktik terbaik di sini adalah membuat PDC mencari waktu secara eksternal dan semuanya disinkronkan.

Jalankan ini pada semua pengontrol domain (termasuk PDC), sebagian akan menonaktifkan waktu windows sehingga tidak melihat mesin host untuk waktu, penting karena kita divirtualisasi. reg tambahkan HKLM \ SYSTEM \ CurrentControlSet \ Services \ W32Time \ TimeProviders \ VMICTimeProvider / v Diaktifkan / t reg_dword / d 0

Anda dapat mengunjungi situs ntp.org http://support.ntp.org/bin/view/Servers/WebHome untuk menemukan server yang terdekat dengan Anda untuk menyinkronkan waktu eksternal Anda. Saya sarankan tidak menggunakan Microsoft karena mereka banyak digunakan dan dapat menyelinap keluar karena ini.

Perintah di bawah ini akan mengatur PDC agar terlihat secara eksternal tetapi juga memeriksa pengaturan registri sebagaimana ditentukan di sini untuk menyinkronkan secara eksternal (Anda perlu melakukan keduanya) http://support.microsoft.com/kb/816042

Jalankan ini di PDC w32tm / config /manualpeerlist: melainkan0.pool.ntp.org,0x1 ”/ syncfromflags: MANUAL / reliable: yes w32tm / config / pembaruan w32tm / resync w32tm / resync / ditemukan kembali

Jalankan 2 perintah ini kapan saja di server mana saja untuk melihat sumbernya dan saat terakhir diperbarui, ini akan digunakan sepanjang latihan ini untuk memastikan PDC Anda dan server lain mendapatkan waktu dari tempat yang tepat w32tm / query / status w32tm / query /sumber

Kemudian jalankan ini pada semua DC kecuali PDC, itu akan membuat mereka melihat PDC untuk waktu dan melakukan sinkronisasi ulang untuk itu w32tm / config / syncfromflags: DOMHIER / perbarui net stop w32time mulai bersih w32tm / resync / force

Masalah: Ketika Anda menjalankan kueri Status atau Sumber memberi mereka satu atau 2 menit setelah perubahan, Anda tidak boleh melihat Jam CMOS Lokal dan Anda juga tidak boleh menggunakan penyedia sinkronisasi waktu vm ic sebagai sumber.

Jika berhasil, PDC harus membaca situs eksternal yang telah Anda tetapkan dan server lain harus mengatakan PDC sebagai sumber

Semoga ini bisa membantu orang yang beruntung!

Karl
sumber
Hai, jawaban masuk di bagian Jawab, bukan sebagai suntingan ke Pertanyaan.
Michael Hampton
2
Ini tidak sepenuhnya berfungsi di Hyper-V 2012R2 yang lebih baru dengan pembaruan integrasi terbaru, karena waktu segera kembali ke host yang mendasarinya setelah ditetapkan oleh server NTP. Bahkan setelah duduk sebentar, itu macet di waktu yang salah. Saya menemukan bahwa dengan juga memodifikasi kunci registri TimeProviders / VMICTimeProvider / InputProvider = 0, server berhenti memotret kembali dengan mudah ke host yang mendasarinya.
Brain2000
1
Saya memformat jawaban Anda di bawah ini untuk keterbacaan yang lebih baik. Mungkin ingin menghapus jawaban dari pertanyaan Anda dan hanya referensi untuk jawaban Anda.
Tilo

Jawaban:

12

@PSaul sebagian besar benar. Anda tidak ingin menggunakan time.microsoftatau time.windows.comsebagai sumber waktu Anda untuk Pengontrol Domain Anda yang memegang Peran FSMO Emulator PDC. Sebagai standar mereka banyak digunakan, sering lambat karena kurangnya lokalitas dan kadang-kadang tidak tersedia. Pilih kumpulan NTP yang lebih dekat dengan Anda.

Namun, lakukan tidak menonaktifkan integrasi Hyper-V Waktu Sinkronisasi. Ini diperlukan untuk fungsi-fungsi tertentu seperti mengatur ulang waktu setelah reboot atau ketika mesin virtual kembali dari keadaan tersimpan. Yang ingin Anda lakukan adalah memberi tahu Pengontrol Domain tervirtualisasi untuk mengabaikan host Hyper-V sebagai sumber waktu.

Hal ini dapat dilakukan sebagai berikut:

reg add HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\VMICTimeProvider /v Enabled /t reg_dword /d 0

Perintah ini menghapus sumber waktu Hyper-V sebagai sumber yang mungkin untuk W32Time.

w32tm /config /syncfromflags:DOMHIER /update

Sekarang beri tahu W32Time untuk mencari sumber waktu terbaik dalam hierarki domain. Jika Anda ingin menggunakan sumber eksternal untuk kedua Pengontrol Domain Anda dapat mengkonfigurasinya untuk melakukannya menggunakan perintah @PSaul yang diposting atau dari sini . Secara umum, Kontroler Domain yang memegang peran PDC Emulator harus disinkronkan dari sumber eksternal dan Kontroler Domain Anda yang lain harus disinkronkan dari itu.

net stop w32time & net start w32time
w32tm /resync /force

Mulai ulang layanan waktu dan paksa sinkronisasi ulang.

w32tm /query /source

Akhirnya Anda harus mengonfirmasi bahwa Pengontrol Domain Anda memiliki sumber waktu yang benar.

Lihat posting blog bagus Ben Armstrong untuk lebih jelasnya.


sumber
Terima kasih atas informasinya, saya telah membaca blog Ben Armstrong dan ingin tetap berpegang pada praktik terbaik. Pada VM yang merupakan PDC hari ini saya menjalankan: w32tm / config / manualpeerlist: "0.pool.ntp.org,0x1 "/ syncfromflags: MANUAL / reliable: yes w32tm / config / update w32tm / resync w32tm / resync / resync / menemukan kembali
Karl
Di registri 0.pool.ntp.org, 0x1 sekarang menjadi nilai untuk NTP Server. Saya bisa ping 0.pool.ntp.org dari PDC tetapi masih tidak bisa ping time.windows.com yang saya pikir aneh! Waktu diatur oleh salah satu host saya yakin akan hal itu tetapi diatur ke NT5DS dan / query / status mengatakan kepada saya menggunakan PDC, apakah saya perlu menjalankan beberapa perintah pada host untuk mendapatkannya melakukan sinkronisasi ulang ke PDC VM? Saya telah melihat reg menambahkan perintah dan saya menganggap ini perlu dilakukan pada semua DC? Saya bertanya-tanya apakah w32tm / config / syncfromflags: DOMHIER / pembaruan juga perlu dijalankan pada PDC atau hanya semua DC lainnya?
Karl
Saya pikir akhir dari komentar pertama tidak ada, setelah saya menjalankan perintah di bawah ini pada PDC. Semua dikatakan berhasil tetapi ketika saya menjalankan w32tm / query / status saya masih memiliki sumber "vm ic time sinkronisasi provider" w32tm / config / manualpeerlist: w32tm / config / perbarui w32tm / resync w32tm / resync / temukan kembali dan mulai dan berhenti
Karl
Terima kasih untuk semua saran yang saya pikir akhirnya saya miliki tetapi saya akan pergi selama beberapa hari untuk mengkonfirmasi dan kemudian saya akan memperbarui apa yang saya lakukan untuk memperbaikinya
Karl
5

Saya akhirnya berhasil! Tujuannya adalah untuk membantu orang-orang yang mulai pada awal pengaturan waktu Domain.

Dalam contoh ini semua Server, Pengontrol Domain Utama (PDC), Pengontrol Domain lainnya (DC) dan server lain menjalankan Windows 2008 R2 dan divirtualisasi dengan Hyper-V.

Hal pertama yang pertama kali Anda baca untuk menonaktifkan 'Layanan Integrasi Sinkronisasi Waktu' pada mesin virtual dalam Hyper-V tetapi Anda harus memanipulasi Layanan Waktu Windows (layanan w32tm) dari dalam virtual DC, Anda tidak boleh menonaktifkan ini karena ketika VM me-restart ini akan menyebabkan masalah, itu harus dilakukan dengan w32tm. Info MSDN

Anda perlu mencari tahu server apa itu PDC dan menjalankan peran FSMO. Jalankan ini: netdom query fsmo Hasilnya harus menjadi PDC Anda dan di sinilah Anda membuat sebagian besar perubahan Anda.

Pastikan di firewall ada aturan "Keluar" pada UDP123 dan programnya adalah % SystemRoot% \ System32 \ w32tm.exe cukup telusuri ke direktori windows dan temukan exe untuk waktu

Di sinilah perubahan registri turun!

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ W32Time

Pastikan PDC di bawah konfigurasi dalam alamat registri di atas diatur ke NTP untuk " Tipe " dan semua server lain adalah NT5DS, ini berarti NTP adalah bapak! Praktik terbaik di sini adalah membuat PDC mencari waktu secara eksternal dan semuanya disinkronkan.

Jalankan ini pada semua pengontrol domain (termasuk PDC), itu akan menonaktifkan waktu windows sebagian sehingga tidak melihat mesin host untuk waktu, penting karena kita virtual.

reg add HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\VMICTimeProvider /v Enabled /t reg_dword /d 0

Anda dapat pergi ke situs ntp.org untuk menemukan server yang terdekat dengan Anda untuk menyinkronkan waktu eksternal Anda. Saya sarankan tidak menggunakan Microsoft karena mereka banyak digunakan dan dapat menyelinap keluar karena ini.

Perintah di bawah ini akan mengatur PDC agar terlihat secara eksternal tetapi juga memeriksa pengaturan registri sebagaimana didefinisikan di sini untuk menyinkronkan secara eksternal (Anda perlu melakukan keduanya) MS KB 816042

Jalankan ini di PDC

w32tm /config /manualpeerlist:"0.pool.ntp.org,0x1" /syncfromflags:MANUAL /reliable:yes   
w32tm /config /update   
w32tm /resync 
w32tm /resync /rediscover

Jalankan 2 perintah ini kapan saja di server mana saja untuk melihat sumbernya dan saat terakhir diperbarui, ini akan digunakan sepanjang latihan ini untuk memastikan PDC Anda dan server lain mendapatkan waktu dari tempat yang tepat

w32tm /query /status  
w32tm /query /source

Kemudian jalankan ini pada semua DC kecuali PDC , itu akan membuat mereka melihat PDC untuk waktu dan melakukan sinkronisasi ulang untuk itu

w32tm /config /syncfromflags:DOMHIER /update 
net stop w32time 
net start w32time 
w32tm /resync /force

Masalah : Ketika Anda menjalankan kueri Status atau Sumber memberi mereka satu atau 2 menit setelah perubahan, Anda tidak boleh melihat Jam CMOS Lokal dan Anda tidak boleh menggunakan VM IC Time Synchronization Provider sebagai sumber.

Jika berhasil, PDC harus membaca situs eksternal yang telah Anda tetapkan dan server lain harus mengatakan PDC sebagai sumber

Semoga ini bisa membantu orang yang beruntung!

Karl
sumber
Dua hal lagi: Gunakan GPO untuk mengonfigurasi waktu NTP pada PDCE - ini berarti akan dikonfigurasi secara otomatis jika peran PDCE bergerak: www.sysadminlab.net/windows/configuring-ntp-on-windows-using-gpo.
Trix
Untuk mengatur tanda pada layanan NTP, pertimbangkan untuk menggunakan 0x8 - ini berarti itu adalah sumber waktu yang andal yang disinkronkan dengan jam perangkat keras di suatu tempat. Juga pertimbangkan untuk tidak menggunakan 0x1 untuk "interval waktu khusus". Kecuali jika Anda perlu menyinkronkan jam Anda pada interval yang ditentukan, itu agak tidak perlu hari ini. Jika DC tidak mendapatkan waktu langsung setelah boot (mis. Jaringan tidak siap), ia menunggu seluruh interval itu. Atau jika Anda menggunakan 0x1 / 0x9, atur sumber lain dengan 0xa - sumber fallback, akan segera ditanyakan jika sumber utama tidak merespons.
Trix
1

Saya akan menyarankan:

  • TIDAK MEMUNGKIN sinkronisasi waktu antara host HyperV dan Guest VMs - terutama untuk DC. Pemegang peran PDC harus memperbarui melalui NTP dari beberapa sumber waktu yang baik. Jam Host dapat memperbarui melalui NTP juga, tetapi Anda ingin PDC menjadi "master" untuk DC lain dan server anggota. (setidaknya dengan VMwre, saya berasumsi sama dengan HyperV)
  • Pastikan Anda memiliki port UDP 123 terbuka untuk lalu lintas keluar.
  • Anda dapat menyelesaikan FQDN dari server NTP (dapatkah Anda melakukannya PING?)
  • Semua DC dan mesin anggota lainnya harus diperbarui secara otomatis.

Jangan gunakan SAJA time.windows.com atau time.microsoft.com, gunakan salah satu server * .pool.ntp.org. Saya menggunakan north-america.pool.ntp.org atau ca.north-america.pool.ntp.org - semakin dekat semakin baik. Anda dapat memeriksa: http://www.pool.ntp.org/ untuk menemukan server yang dekat dengan Anda.

Kemudian jalankan sesuatu seperti:

w32tm /config /manualpeerlist:"north-america.pool.ntp.org 0.pool.ntp.org" /syncfromflags:MANUAL /update /reliable:YES

(Tambahkan server NTP apa pun yang Anda inginkan. Di Kanada saya juga menggunakan time.nrc.ca)

Diikuti oleh:

net stop w32time
net start w32time

Anda dapat memeriksa Peers dengan:

w32tm /query /peers

Periksa Log Sistem untuk melihat apakah itu memperbarui. Anda harus dapat menyetel jam di depan 1 menit, restart layanan w32time dan akan diperbarui dalam 30 detik. [kemiringan waktu kurang dari 5 menit dapat diterima dalam domain AD]

PSaul
sumber
0

Seperti yang direkomendasikan oleh orang lain, pasti tidak memiliki sinkronisasi waktu perangkat keras dari host ke tamu. Anda juga harus melakukan sinkronisasi dengan server NTP eksternal hanya dari pengontrol domain yang memegang peran emulator root root PDC. Jika pengendali domain peran emulator akar hutan PDC Anda tidak disinkronkan, DC yang bergantung padanya akan mengalami masalah.

Anda mungkin juga ingin mencoba perbaikan terbaru berikut:

Sinkronisasi waktu tidak dilakukan meskipun layanan W32Time berhasil dimulai pada Windows Server 2008 atau Windows Server 2008 R2

http://support.microsoft.com/kb/2493006

Anda mungkin merasa lebih bermanfaat jika Anda menggunakan flag / verbose untuk w32tm:

w32tm /query /status /verbose /computer:dcname

Informasi tambahan:

https://technet.microsoft.com/en-us/library/virtual_active_directory_domain_controller_virtualization_hyperv%28WS.10%29.aspx

"Untuk mesin virtual yang dikonfigurasi sebagai pengontrol domain, Anda disarankan untuk menonaktifkan sinkronisasi waktu antara sistem host dan sistem operasi tamu yang bertindak sebagai pengontrol domain. Ini memungkinkan pengontrol domain guest Anda untuk menyinkronkan waktu dari hierarki domain."

"Untuk menonaktifkan penyedia sinkronisasi waktu Hyper-V, matikan VM dan kosongkan kotak centang Sinkronisasi waktu di bawah Layanan Integrasi."

Greg Askew
sumber