Estou preso a uma VM Centos 5.3 (executando no Proxmox) que exibe um enorme desvio de relógio. Ele foi configurado para executar o ntpdate a cada 5 minutos, mas o relógio ainda estava ficando fora de sincronia em até 20 segundos entre as execuções. Eu tentei executar o ntpd (e parar o cron job), mas não está relatando nenhum erro / não consigo ver um arquivo ntp.drift sendo criado em qualquer lugar e o relógio continua a oscilar.
Estou executando aproximadamente 30 VMs e o mesmo número de contêineres no cluster - nada mais apresenta o mesmo problema. Além do endereço do servidor não há outra configuração em /etc/ntp.conf
A ideia do kernel do ajuste de tempo precisa ser corrigida. O
ntpd
processo geralmente disciplina isso, de modo que à medida que o tempo se aproxima da realidade, a taxa de mudança é reduzida. Pode ter sido o resultado de uma interação decorrente de sua tentativa de corrigir o passo do tempo comntpdate
.O que eu sugiro é que você tenha certeza de saber se está usando
systemd
a sincronização de tempo dontpd
, ou um bodge construído em torno de algo comontpdate
./etc/adjtime
do caminho (seria interessante ver seu conteúdo na sua pergunta)Em uma máquina bem sincronizada aqui, tenho os seguintes valores em
/etc/adjtime
, e o próprio arquivo foi modificado pela última vez em fevereiro. NÃO COPIE ESTES VALORESOlhando para
man 5 adjtime
você pode ver que esses valores mostram que este sistema tem um desvio sistemático de 0,001341 segundos/dia (dois anos para um desvio de um segundo), e que foi ajustado pela última vez em fevereiro. Bastante estável. Ah, e o relógio do sistema está funcionando corretamente como UTC.Outras coisas a considerar na sua situação
Existem algumas referências úteis que explicam (entre outras coisas) que o CentOS 5.3 não tinha o
kvm-clock
módulo do kernel,Sem este módulo, quando o Hypervisor temporariamente (e corretamente) deixa a VM sem recursos de CPU, o relógio da VM pode desacelerar ou até parar. O módulo mantém o tempo do kernel da VM preciso.
Você pode verificar sua própria situação com este comando, que deve relatar
kvm-clock
:A primeira dessas duas referências também sugeriu a atualização para o CentOS 5.3 mais recente (era relevante na época), pois isso corrigia seus problemas de tempo. Provavelmente não é realista para o ano de 2021.
Outra fonte sugere adicionar
divider=10 clocksource=acpi_pm
à linha de inicialização do kernel, mas isso é para VMware e pode não ser aplicável ao Proxmox com kvm.