Desvio do tempo

11

Como você lida com o desvio do tempo do servidor?

programador morto
fonte

Respostas:

24

O Network Time Protocol, ou NTP, pode ser usado para sincronizar a hora em um servidor com uma fonte autorizada. Os servidores Windows, por exemplo, usarão um dos controladores de domínio de rede (o controlador de domínio que detém a função FSMO do emulador PDC para o domínio [graças a Graeme]) para obter informações de tempo. Você pode configurar o controlador de domínio para obter informações de alguma fonte conhecida, como time.windows.com.

Justin Scott
fonte
3
Se você puder organizá-lo, eu recomendo o uso do pool de servidores NTP, pois ele permitirá que você tenha acesso a várias fontes de tempo, enquanto distribui a carga de maneira agradável. Veja pool.ntp.org para uso.
Avery Payne
2
Só quero esclarecer que, em um ambiente Windows, não é apenas "um dos" controladores de domínio que assumem a função de servidor NTP para todos os membros do domínio, é especificamente o controlador de domínio que detém a função FSMO do emulador de PDC para o domínio. Você configuraria esse controlador de domínio para sincronizar a partir de um servidor NTP no pool e todas as outras máquinas que ingressaram no domínio, incluindo todos os outros controladores de domínio do domínio, seriam sincronizadas automaticamente com esse controlador de domínio.
ThatGraemeGuy
9

E para representar a multidão da Máquina Virtual ...

Se você estiver executando servidores virtuais , o desvio de tempo parece ser um problema comum - e, portanto, geralmente existe uma maneira (além do NTP) de manter as VMs sincronizadas com o host.

No meu caso, estou usando o VMWare. Posso ativar isso a partir de uma máquina virtual linux usando:

vmware-guestd --cmd "vmx.set_option synctime 0 1"

E a partir de uma máquina Windows Virtual, você pode abrir o ícone vmware-tools na bandeja do sistema e selecionar a sincronização de horário entre a máquina virtual e o SO host

Brent
fonte
2
Na verdade, você não quer fazer isso. Eu postei uma resposta bastante elaborada abaixo. Em resumo: vmware-tools SyncTime está quebrado e o ntp é o caminho a percorrer.
wzzrd
1
Agora o vmware recomenda que você use o ntpd nas VMs, em vez disso
Alex J
6

O VMwareTools SyncTime não é uma boa opção para máquinas virtuais no ESX! O próprio VMware alterou suas recomendações para cronometragem nas VMs para usar o NTP em vez de vmware-tools se você tiver problemas.

Conversei sobre isso com um engenheiro da VMware na VMworld uma vez e me disseram que o vmware-tools nunca foi projetado para fazer o trabalho que está fazendo agora. Antigamente, interrupções perdidas era um grande problema. Hoje muito menos. Essa é a razão pela qual o vmware-tools pode corrigir o tempo da sua máquina se ela estiver atrasada, mas não quando a máquina estiver à frente. De fato, uma vez que a máquina avança no tempo 'real', você fica ferrado se usar o vmware-tools para fazer a contagem do tempo.

Melhor ainda: ao usar o ntp, o processo que corrige o seu tempo na verdade é ativado com menos frequência em comparação ao uso do vmware-tools. Portanto, para máquinas virtuais, o ntp fornecerá menos sobrecarga em vez de mais.

Portanto, no Linux, você sempre deve usar o ntp nas máquinas virtuais VMware. Desative completamente o vmware-tools synctime.

Para VMs do Windows em Vmware, tenho menos certeza, mas acho que é praticamente o mesmo. Use o material de sincronização de tempo interno no AD, que funciona melhor que o VMware SyncTime. (Embora a sincronização do horário do AD seja muito ruim por si só; a única razão da existência é manter o Windows boxen sincronizado com seus controladores de domínio e o Kerberos ainda funcionará enquanto a diferença de relógio for inferior a cerca de 5 minutos, há muito menos necessidade de precisão.)

Você pode ler um pouco mais sobre a sincronização de horário do VMware no Linux aqui

wzzrd
fonte
4

Use o daemon NTP.

iny
fonte
4

NTP é seu amigo.

RHEL / CentOS:

yum install ntpd

Debian / Ubuntu:

apt-get install ntpd

Janelas:

  • Para Windows 2000 : Tardis 2000 . Funciona bem, vem com um painel de controle. Se você usar isso, desative o Windows Time Service.
  • Para Windows 2003/2008 : já mencionado em outras respostas nesta pergunta. Como alternativa, você pode executar o Tardis 2000 em uma caixa 2k3, não sei se funciona em 2k8.
  • Para qualquer estação de trabalho Windows : execute o seguinte comando no login: net time /domain:your-domain-here

Para todos os serviços NTP:

Aponte seu serviço para pool.ntp.org, embora você queira pelo menos reduzi-lo ao mesmo continente. Por exemplo, os servidores dos EUA usariam 0.us.pool.ntp.org, 1.us.pool.ntp.org, 2.us.pool.ntp.org, etc.

Avery Payne
fonte
3

Como muitos já responderam, o NTP é o caminho a percorrer. Dependendo de suas necessidades e requisitos, existem vários designs possíveis que você pode usar para sincronizar o tempo.

  1. Sincronize máquinas individuais com o host público, ou seja, pool.ntp.org
  2. Designe um mestre local (com NTP upstream) e sincronize tudo o mais com ele
  3. Mestre local com seu próprio GPS conectado (pode ser $$$)

Se você tiver muitas máquinas, as opções 2 e 3 são muito mais amigáveis ​​para a rede. Para mais detalhes, leia sobre NTP e estratos de clock .

Além disso, acho que o intervalo padrão do Windows para sincronização é muito longo (uma vez por semana), o que leva a muito desvio. Você deve verificar o seguinte se quiser definir as coisas para um período mais curto (eu uso uma vez por dia).

http://www.softpedia.com/get/System/System-Misc Miscellaneous/ Internet- Time- Update.shtml http://www.tweakxp.com/article36948.aspx

Jauder Ho
fonte
2

Um bom servidor NTP, principalmente. Configure-o para que o relógio não tenha sido desviado por mais de alguns segundos desde a última sincronização NTP e você não tenha problemas.

Se o servidor estiver à deriva mais de 30 segundos por dia, convém procurar alternativas melhores, mas os relógios na maioria dos computadores geralmente são muito melhores que 30 segundos por dia, portanto, uma sincronização por dia geralmente é boa.

Lembre-se de que você pode pular minutos se configurá-lo para sincronizar periodicamente (ntpdate) e não usar o daemon NTP (ntpd) - se você tiver menos de 3 segundos e a sincronização NTP tentar uma atualização em 10 minutos e 58 segundos , ele pulará para 11 minutos e 1 segundo e, dependendo do agendador que você estiver usando, pode não acionar as tarefas de 11 minutos.

O daemon NTP é executado em segundo plano e corrige o tempo lentamente, para que os programas e processos notem que o tempo pode estar indo um pouco mais rápido ou mais devagar do que o normal, mas não pulará o segundo.

-Adão

Adam Davis
fonte
1

Um servidor NTP é necessário para manter o tempo sincronizado no seu controlador de domínio, sim. Leia este artigo para obter instruções sobre como sincronizar seu controlador de domínio com uma fonte externa e este artigo da base de conhecimento sobre como configurar um servidor de horário autoritativo com o Windows 2003. Você precisará de ambos para manter o horário do domínio sincronizado. As estações de trabalho ingressadas no domínio serão sincronizadas automaticamente com o servidor de horário oficial.


fonte
0

Use uma fonte de relógio comum para todos os seus servidores e verifique se seus fusos horários estão configurados corretamente. Uma boa fonte da Internet é "time.windows.com". Se você estiver usando o Windows, poderá usar "net time" e "w32tm" para comandos relacionados ao horário.

Jeroen Landheer
fonte