tripleo-quickstart-extras/roles/baremetal-undercloud/packages/tasks/ntp.yml

68 lines
1.7 KiB
YAML

---
# Ensure ntp packages are installed
- name: Install ntp packages
package:
name: ['ntp', 'ntpdate']
state: present
# Enable ntpd service
- name: Enable ntpd service
service:
name: 'ntpd'
enabled: true
# Enable ntpdate service
- name: Enable ntpdate service
service:
name: 'ntpdate'
enabled: true
# Stop ntpd service
- name: Ensure ntp service is stopped to be able to launch ntpdate
service:
name: 'ntpd'
state: stopped
# Disable default ntp servers if custom servers are defined
- name: Disable configured servers in ntp.conf (if custom servers are defined)
replace:
destfile: /etc/ntp.conf
regexp: '^server (.*)'
replace: '#server \1'
when: undercloud_custom_ntps is defined
# Enable custom ntp servers if custom servers are defined
- name: Add new server in ntp.conf (if custom servers are defined)
lineinfile:
destfile: /etc/ntp.conf
line: 'server {{ item }} iburst'
with_items: '{{ undercloud_custom_ntps|default([]) }}'
# Setup custom ntp servers in step-tickers if custom servers are defined
- name: Set step-ticker (if custom servers are defined)
lineinfile:
destfile: /etc/ntp/step-tickers
line: '{{ item }}'
create: true
with_items: '{{ undercloud_custom_ntps|default([]) }}'
# Configure ntpdate hardware synchronization
- name: Configure ntpdate to synchronize the hardware clock
lineinfile:
destfile: /etc/sysconfig/ntpdate
regexp: '^SYNC_HWCLOCK=.*'
line: 'SYNC_HWCLOCK=yes'
# Sync time now
- name: Synchronize time immediately with ntpdate
shell: |
set -euxo pipefail
ntpdate $(grep ^server /etc/ntp.conf | tail -1 | awk '{print $2}')
changed_when: false
# Start ntpd
- name: Start ntpd service
service:
name: 'ntpd'
state: started