Eu tenho vários servidores rhel e preciso ter certeza de que todos estão sincronizados a tempo. Todos eles estão executando o serviço chronyd.
Minha pergunta é: existe algum utilitário para verificar isso por meio de um comando? Alguém sabe sobre um módulo ansible para fazer isso? Não encontrei nenhum.
Tudo o que quero é verificar se todos os servidores estão rodando ao mesmo tempo de forma rigorosa e eficiente. Provavelmente algo semelhante ao ntpdate seria adequado para mim.
Desde já, obrigado!
Responder1
Verifique se o chrony está sincronizado com os comandos
Você pode usar comandos específicos do chrony para verificar o status do NTP. Se você quiser ver as informações do uso atual do servidor NTP
chronyc tracking
Para exibir todos os servidores NTP
chronyc sources
Para mais informações, veja: fedora - verifique se o chrony está sincronizado
Combinação com ansible
Não existe módulo ansible, mas existe outra maneira.
Você ainda deve ter o utilitário ntpstat, que também funciona para o chrony. Os códigos de retorno fornecem informações sobre o status do NTP. 0 para relógio sincronizado, 1 para não sincronizado e 2 se o estado do relógio for indeterminado. Verpágina de manual
Você pode verificar isso
ntpstat
echo $?
Se você usar o módulo de comando ansible para executar o ntpstat, ele falhará por padrão se o código de retorno do comando não for 0. Portanto, neste caso, podemos usar isso a nosso favor. Faça um manual simples que execute o comando ntpstat.
- name: Check if chrony is synchronized
command: ntpstat
Execute o manual para o grupo de hosts desejado. Todos os hosts que falham não possuem um NTP sincronizado.
Para ir mais longe, você pode copiar a configuração global do chrony (chrony.conf) para todos os hosts e reiniciar o serviço chronyd com ansible, se o código de retorno não for 0.
- name: Check if chrony is synchronized
command: ntpstat
register: ntpstat_rc
ignore_errors: true
- name: Copy chrony configuration
copy:
src: <global chrony.conf on your ansible server>
dest: /etc/chrony.conf
backup: yes
when: ntpstat_rc.rc != 0
- name: Restart chrony service
systemd:
name: chronyd
state: restarted
when: ntpstat_rc.rc != 0
Eu espero que isso ajude.
Saúde