Estou solucionando um problema em um dos meus servidores NTP. Este servidor parece desafiar a lógica, e estou no meu juízo final tentando solucionar o problema. Aproximadamente a cada 162 segundos, o relógio do sistema reverte para (hora atual - 112 segundos), apesar de o relógio do hardware ser preciso. Isso acontece se o ntpd está em execução ou não, e quando o relógio distorce, o clock do hardware ainda relata o tempo exato (até algum momento posterior, quando o hwclock é sincronizado com o relógio do sistema).
Eu montei um pequeno verso para demonstrar o problema:
$ date ; sudo /sbin/service ntpd stop ; date; sudo ntpdate -u time.nist.gov ; sudo /sbin/hwclock --systohc --utc ; sudo /sbin/hwclock --hctosys --utc ; i=0 ; ss=$(/bin/date +%s) ; while [ $i -lt 240 ] ; do date ; ts=$(($(/bin/date +%s)-$ss)) ; /sbin/hwclock --show --utc ; echo "seconds since last sync: $ts" ; sleep 1 ; ((i++)) ; done
Tue Jan 6 03:44:41 UTC 2015
Shutting down ntpd: [ OK ]
Tue Jan 6 03:44:41 UTC 2015
6 Jan 03:46:34 ntpdate[13092]: step time server 24.56.178.140 offset 112.261660 sec
Tue Jan 6 03:46:37 UTC 2015
Tue 06 Jan 2015 03:46:38 AM UTC -0.994306 seconds
seconds since last sync: 0
Tue Jan 6 03:46:39 UTC 2015
Tue 06 Jan 2015 03:46:40 AM UTC -0.995661 seconds
seconds since last sync: 2
Tue Jan 6 03:46:41 UTC 2015
Tue 06 Jan 2015 03:46:42 AM UTC -0.995526 seconds
seconds since last sync: 4
Tue Jan 6 03:46:43 UTC 2015
Tue 06 Jan 2015 03:46:44 AM UTC -0.995515 seconds
seconds since last sync: 6
Tue Jan 6 03:46:45 UTC 2015
Tue 06 Jan 2015 03:46:46 AM UTC -0.995465 seconds
seconds since last sync: 8
Tue Jan 6 03:46:47 UTC 2015
Tue 06 Jan 2015 03:46:48 AM UTC -0.995293 seconds
seconds since last sync: 10
Tue Jan 6 03:46:49 UTC 2015
Tue 06 Jan 2015 03:46:50 AM UTC -0.995207 seconds
Isso continua um pouco, mas eventualmente o relógio do sistema pula para trás 112 segundos:
Tue Jan 6 03:47:07 UTC 2015
Tue 06 Jan 2015 03:47:08 AM UTC -0.995297 seconds
seconds since last sync: 30
Tue Jan 6 03:45:16 UTC 2015
Tue 06 Jan 2015 03:47:10 AM UTC -0.995259 seconds
seconds since last sync: -81
Tue Jan 6 03:45:18 UTC 2015
Tue 06 Jan 2015 03:47:12 AM UTC -0.996067 seconds
seconds since last sync: -79
Tue Jan 6 03:45:20 UTC 2015
Tue 06 Jan 2015 03:47:14 AM UTC -0.996148 seconds
seconds since last sync: -77
alguns detalhes menores:
Este sistema está rodando o CentOS 5.11, está em hardware (não é uma VM), o tempo de atividade é de 23 dias, e esse problema começou alguns meses atrás. Eu realmente não tive tempo de ver isso até agora, então não tenho certeza se houve alguma atualização / atividade correlacionada com este servidor quando ele começou.
Então, eu acho que a minha pergunta é o que mais além do ntpd poderia estar atualizando o relógio do sistema? Verifiquei que não há tarefas agendadas agendadas que toquem o relógio e, até onde posso dizer, nenhum daemons em execução deveria estar tocando o relógio também.