Issue-ID: INF-441
Change-Id: I1e8619bcef055e2ca31837badfe3fd2bf7fc0d84
Signed-off-by: Arnaldo Hernandez <arjuhe@gmail.com>
--- /dev/null
+---
+- name: Setup NTP
+ hosts: ntp_host
+ gather_facts: false
+ vars:
+ SETUP_NTP_SERVICE: "{{setup_ntp_service | default(false) | bool }}"
+ roles:
+ - role: setup_ntp
+ when: SETUP_NTP_SERVICE | bool
--- /dev/null
+# setup_ntp
+
+Deploys chrony
\ No newline at end of file
--- /dev/null
+---
+ntp_pool_servers:
+ - 0.us.pool.ntp.org
+ - 1.us.pool.ntp.org
+ - 2.us.pool.ntp.org
+ - 3.us.pool.ntp.org
+
+enable_logging: false
+
+ntp_server_allows: "{% if ntp_server_allow is defined %}{{ [ntp_server_allow] }}{% else %}{{ [] }}{% endif %}"
--- /dev/null
+---
+- name: Restart chronyd
+ ansible.builtin.service:
+ name: chronyd
+ state: restarted
+ become: true
+
+- name: Start chronyd
+ ansible.builtin.service:
+ name: chronyd
+ state: started
+ enabled: true
+ become: true
--- /dev/null
+---
+- name: Setup Chrony
+ become: true
+ block:
+ - name: Install Chrony
+ ansible.builtin.package:
+ name: chrony
+ state: present
+
+ - name: Configure chrony
+ ansible.builtin.template:
+ src: chrony.conf.j2
+ dest: /etc/chrony.conf
+ owner: root
+ group: root
+ mode: "0644"
+ notify: Restart chronyd
+
+ - name: Start chrony
+ ansible.builtin.service:
+ name: chronyd
+ state: started
+ enabled: true
+
+ - name: Allow incoming ntp traffic
+ ansible.posix.firewalld:
+ zone: public
+ service: ntp
+ permanent: true
+ state: enabled
+ immediate: true
--- /dev/null
+# {{ ansible_managed }}
+driftfile /var/lib/chrony/drift
+bindcmdaddress {{ ntp_server }}
+bindcmdaddress 127.0.0.1
+bindcmdaddress ::1
+keyfile /etc/chrony.keys
+local stratum 10
+rtcsync
+makestep 1.0 3
+manual
+{% if enable_logging %}
+logdir /var/log/chrony
+log measurements statistics tracking
+{% endif %}
+
+allow 127.0.0.1
+{% for allow_server in ntp_server_allows %}
+allow {{ allow_server }}
+{% endfor %}
+
+server 127.0.0.1
+{% for item in ntp_pool_servers %}
+server {{ item }}
+{% endfor %}