Configure su demonio Chrony con un libro de jugadas de Ansible

Chrony es un demonio de protocolo de tiempo de red (NTP) y reemplaza al demonio de protocolo de tiempo de red (ntpd), que es estándar en la mayoría de los sistemas * nix. Chrony es una implementación más nueva de NTP que generalmente actualiza la hora más rápido y es más precisa que ntpd.

En este ejemplo, ha definido todos los parámetros necesarios en su /etc/chrony.conf, y ahora desea utilizar esta configuración en todos sus hosts. Puede convertir el archivo de configuración en una plantilla de Ansible e implementarlo.

Índice

Crear un libro de jugadas

Asumiendo tu /etc/chrony.conf se parece a lo siguiente:

server 192.168.0.1 iburst
server 192.168.0.2 iburst
stratumweight 0
driftfile /var/lib/chrony/drift
rtcsync
makestep 10 3
bindcmdaddress 127.0.0.1
bindcmdaddress ::1
keyfile /etc/chrony.keys
commandkey 1
generatecommandkey
noclientlog
logchange 0.5
logdir /var/log/chrony

Para implementar esta configuración en otros hosts mediante Ansible, copie este archivo en /some/full/path/chrony.conf.j2 en su nodo de control de Ansible. Luego, puede usar el siguiente libro de jugadas para implementarlo en todos sus hosts administrados.

---
- hosts: all
  tasks:
  - name: make sure chronyd is installed
    yum:
     name: chrony
     state: latest
     update_cache: yes

  - name: deploy chrony.conf template
    template:
     src: /some/full/path/chrony.conf.j2
     dest: /etc/chrony.conf
     owner: root
     group: root
     mode: 0644
     backup: yes

  - name: Restart chronyd
    service:
      name: chronyd
      state: restarted

Este libro de jugadas primero se asegura de que chrony esta instalado. Esto es importante porque no tendrás /etc/chrony.conf si falta el servicio. La segunda tarea utiliza el módulo de plantilla de Ansible para implementar su configuración en sus hosts. En este ejemplo, copia el archivo exacto en los hosts y establece el propietario y la configuración de permisos. Hace una copia de seguridad de un archivo existente antes de reemplazarlo. Y finalmente, el servicio se reinicia para asegurarse de que se utilizará el archivo de configuración deseado.

Conclusión

Por supuesto, puede usar un trabajo cron para ejecutar este libro de jugadas, una vez al día o cada 30 minutos, por ejemplo, para asegurarse de que todos los cambios en el archivo se restablecen a la configuración deseada. Puede hacer esto para cualquier servicio del sistema o archivo de configuración en sus sistemas donde se requiera coherencia en todos los hosts.

Artículos de interés

Subir