Timesync su HyperV con CentOS 6.2


11

Ho una VM CentOS (versione 6.2) in esecuzione su HyperV. Ho installato i servizi di integrazione (parte della base ora) e CentOS mostra che l'orologio corrente è hyperv_clocksource, tuttavia il mio tempo nella VM è di circa 10 minuti veloce dopo una settimana di uptime. La mia comprensione del nuovo IC e della sorgente di clock plugable è che ciò non dovrebbe più accadere. È necessaria una configurazione aggiuntiva per far funzionare l'origine dell'orologio plug-in?

So che ci sono molti collegamenti sull'impostazione delle opzioni del kernel su PIT e varie cose del genere, ma tutte sembrano pre-datare il supporto integrato dell'orologio e, come ho capito, non dovrebbe essere più necessario. Né dovrebbe essere ntpd né adjtimex.

Modifica: era in esecuzione 3.2 di IC (cosa spedito con Centos 6.2), aggiornato a 3.3 oggi, la macchina è rimasta in funzione per 1 ora e 22 minuti e l'orologio è già veloce di 5 secondi. Quindi ora sto eseguendo l'ultimo IC e ho ancora lo stesso problema.


Sì, il tempo è veloce, non lento. Che è ancora più strano in quanto il tipico problema dell'orologio VM è la perdita di tempo, non il guadagno di tempo.
— WaldenL,

se si esegue un PowerShell get-winevent -provider Microsoft-Windows-Hyper-V-Integration-TimeSync | seleziona messaggio | select-string "servername" vedi errori di sincronizzazione in qualsiasi momento
— tony roth

Non dimenticare mai i messaggi sugli errori di sincronizzazione temporale, non ci sono messaggi per quel provider. Esistono altri messaggi Hyper-V, ma nessuno per TimeSync.
— WaldenL,

Risposte:


3

Ho avuto questo problema in passato e risolto modificando le opzioni di avvio (notsc divider = 10) e le impostazioni 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

Esempio 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

Fonte:

Correzione della deriva dell'orologio Linux su Hyper-V su Server 2008 R2
http://hardanswers.net/correct-clock-drift-in-centos-hyper-v


1
Questo potrebbe funzionare. La posizione ufficiale di MS è quella di installare / abilitare le funzionalità di integrazione inclusa la sincronizzazione temporale e disabilitare tutti i demoni temporali in-VM (ntpd).
— Chris S,

VMWare lo consiglia anche divider=10in molte costellazioni Linux.
— Nils,

Ci scusiamo per il downvote, ma questi sono esattamente i ritocchi che non dovrebbero essere necessari con la fonte dei tempi plug-in nei nuovi componenti di integrazione.
— WaldenL,

2

Innanzitutto, controlla se hyper-v sta rilevando i servizi di integrazione. L'unico modo in cui so come sta usando System Center Virtual Machine Manager, ma suppongo che ci debba essere un modo usando l'mmc di hyper-v.

Inoltre, ho visto che ciò accade quando la sincronizzazione dell'orologio è disabilitata nella configurazione della VM. Perché l'orologio corre più veloce è oltre me. Ho allegato uno screenshot della configurazione VM per riferimento. inserisci qui la descrizione dell'immagine


Sì, tutti i servizi sono abilitati.
— WaldenL,

hyper-v segnala di aver rilevato i servizi di integrazione?
— collo lungo

Domanda interessante, non so come dirlo. Lo spettacolo è iniziato nell'ospite e presumo che non lo farebbero se non avessero comunicato con l'host, ma non posso dirlo con certezza. Non ho scvmm quindi non sono sicuro di dirlo neanche.
— WaldenL,

Quando guardi la VM nel mmc, in fondo dice ok battito cardiaco? Ciò indicherebbe che almeno il servizio del battito cardiaco sta comunicando.
— collo lungo

Dice "Heartbeat: OK", quindi almeno il canale di comunicazione è aperto.
— WaldenL,

2

La deriva dell'orologio guest Hyper-V Linux sotto carico è purtroppo abbastanza comune (la deriva dell'orologio nelle VM non sincronizzate è alquanto inevitabile). Guarda che l' orologio Linux perde 10 minuti ogni settimana e Hyper-V Machine fa passare il tempo dappertutto, anche con NTP per altri post che ne parlano. Le prove aneddotiche che ho visto dicono quanto segue:

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.