AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 673219
Accepted
symcbean
symcbean
Asked: 2021-10-15 06:17:09 +0800 CST2021-10-15 06:17:09 +0800 CST 2021-10-15 06:17:09 +0800 CST

Desvio louco do relógio na VM antiga

  • 772

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

ntp
  • 1 1 respostas
  • 92 Views

1 respostas

  • Voted
  1. Best Answer
    roaima
    2021-10-15T06:34:40+08:002021-10-15T06:34:40+08:00

    A ideia do kernel do ajuste de tempo precisa ser corrigida. O ntpdprocesso 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 com ntpdate.

    O que eu sugiro é que você tenha certeza de saber se está usando systemda sincronização de tempo do ntpd, ou um bodge construído em torno de algo como ntpdate.

    • Desligue todos eles
    • Saia /etc/adjtimedo caminho (seria interessante ver seu conteúdo na sua pergunta)
    • Reinicie imediatamente

    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 VALORES

    0.001341 1613401384 0.000000
    1613401384
    UTC
    

    Olhando para man 5 adjtimevocê 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

    • O kernel está tentando obter sua data/hora do VM Hypervisor?
    • Nesse caso, qualquer uso de uma ferramenta de sincronização de tempo na VM perturbará a manutenção do tempo
    • A VM está sendo colocada em suspensão ou desacelerada durante seus períodos de inatividade? Isso pode atrapalhar o relógio de parede se não estiver sendo sincronizado a partir do VM Hypervisor

    Existem algumas referências úteis que explicam (entre outras coisas) que o CentOS 5.3 não tinha o kvm-clockmódulo do kernel,

    • https://forum.proxmox.com/threads/time-drift-centos-5-3.10961/
    • https://s19n.net/articles/2011/kvm_clock.html

    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:

    cat /sys/devices/system/clocksource/clocksource0/current_clocksource
    

    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.

    • 1

relate perguntas

  • Consulta única para sincronizar a hora com o servidor NTP

  • ntpstat funciona, mas não ntpq

  • Procurando por uma configuração NTP simples para CentOS 7

  • Como posso usar minha hora local como única referência de `ntpd`?

  • A hora do sistema é alterada automaticamente por algum motivo desconhecido na máquina Linux

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve