]> git.apps.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
Add support for different NTP daemons v3.2.0beta3
authorBenjamin Cherian <benjamin_cherian@amat.com>
Wed, 5 Sep 2018 16:59:50 +0000 (09:59 -0700)
committermergify[bot] <mergify[bot]@users.noreply.github.com>
Tue, 2 Oct 2018 13:18:08 +0000 (13:18 +0000)
Allow user to choose between timesyncd, chronyd and ntpd
Installation will default to timesyncd since it is distributed as
part of the systemd installation for most distros.
Added note indicating NTP daemon type is not used for containerized
deployments.

Fixes issue #3086 on Github

Signed-off-by: Benjamin Cherian <benjamin_cherian@amat.com>
group_vars/all.yml.sample
group_vars/rhcs.yml.sample
roles/ceph-common/tasks/misc/ntp_debian.yml
roles/ceph-common/tasks/misc/ntp_rpm.yml
roles/ceph-defaults/defaults/main.yml
roles/ceph-validate/tasks/main.yml

index 7d6b0a8799d82881850216325db2cdfecb970eb4..42e6fa8146e8de1e6dbc27fbd194c8ddcf7d8a81 100644 (file)
@@ -105,10 +105,15 @@ dummy:
 # Whether or not to install the ceph-test package.
 #ceph_test: false
 
-# Enable the ntp service by default to avoid clock skew on
-# ceph nodes
+# Enable the ntp service by default to avoid clock skew on ceph nodes
+# Disable if an appropriate NTP client is already installed and configured
 #ntp_service_enabled: true
 
+# Set type of NTP client daemon to use, valid entries are chronyd, ntpd or timesyncd
+# Note that this selection is currently ignored on containerized deployments
+#ntp_daemon_type: timesyncd
+
+
 # Set uid/gid to default '64045' for bootstrap directories.
 # '64045' is used for debian based distros. It must be set to 167 in case of rhel based distros.
 # These values have to be set according to the base OS used by the container image, NOT the host.
index 055ad00f2b5151e960ee8c53610532daa6c6161a..b260831dcc39a0053a11bbf6e643261b7f6291a5 100644 (file)
@@ -105,10 +105,15 @@ fetch_directory: ~/ceph-ansible-keys
 # Whether or not to install the ceph-test package.
 #ceph_test: false
 
-# Enable the ntp service by default to avoid clock skew on
-# ceph nodes
+# Enable the ntp service by default to avoid clock skew on ceph nodes
+# Disable if an appropriate NTP client is already installed and configured
 #ntp_service_enabled: true
 
+# Set type of NTP client daemon to use, valid entries are chronyd, ntpd or timesyncd
+# Note that this selection is currently ignored on containerized deployments
+#ntp_daemon_type: timesyncd
+
+
 # Set uid/gid to default '64045' for bootstrap directories.
 # '64045' is used for debian based distros. It must be set to 167 in case of rhel based distros.
 # These values have to be set according to the base OS used by the container image, NOT the host.
index f94003d7af224766fd5ab107036821d83950cfe1..f1da045f1e984b7639e3a9d8f647596fd45329c9 100644 (file)
@@ -1,11 +1,29 @@
 ---
-- name: install ntp on debian
-  package:
-    name: ntp
-    state: present
+- name: setup ntpd
+  block:
+    - command: timedatectl set-ntp no
+    - package:
+        name: ntp
+        state: present
+    - service:
+        name: ntp
+        enabled: yes
+        state: started
+  when: ntp_daemon_type == "ntpd"
 
-- name: start the ntp service
-  service:
-    name: ntp
-    enabled: yes
-    state: started
+- name: setup chrony
+  block:
+    - command: timedatectl set-ntp no
+    - package:
+        name: chrony
+        state: present
+    - service:
+        name: chronyd
+        enabled: yes
+        state: started
+  when: ntp_daemon_type == "chronyd"
+
+- name: setup timesyncd
+  block:
+    - command: timedatectl set-ntp on
+  when: ntp_daemon_type == "timesyncd"
index 91d2d7d8a7b6c97fed09fda1f434f8114b84a56c..866667c2b3d54d32af4978a54ca68d282a855520 100644 (file)
@@ -1,11 +1,29 @@
 ---
-- name: install ntp
-  package:
-    name: ntp
-    state: present
+- name: setup ntpd
+  block:
+    - command: timedatectl set-ntp no
+    - package:
+        name: ntp
+        state: present
+    - service:
+        name: ntpd
+        enabled: yes
+        state: started
+  when: ntp_daemon_type == "ntpd"
 
-- name: start the ntp service
-  service:
-    name: ntpd
-    enabled: yes
-    state: started
+- name: setup chrony
+  block:
+    - command: timedatectl set-ntp no
+    - package:
+        name: chrony
+        state: present
+    - service:
+        name: chronyd
+        enabled: yes
+        state: started
+  when: ntp_daemon_type == "chronyd"
+
+- name: setup timesyncd
+  block:
+    - command: timedatectl set-ntp on
+  when: ntp_daemon_type == "timesyncd"
index 8fd965582570cda548190159dbc22fb8ced91b9f..91e2aa5ea4f7696dd18b3ac641b09936f5b0120b 100644 (file)
@@ -97,10 +97,15 @@ suse_package_dependencies:
 # Whether or not to install the ceph-test package.
 ceph_test: false
 
-# Enable the ntp service by default to avoid clock skew on
-# ceph nodes
+# Enable the ntp service by default to avoid clock skew on ceph nodes
+# Disable if an appropriate NTP client is already installed and configured
 ntp_service_enabled: true
 
+# Set type of NTP client daemon to use, valid entries are chronyd, ntpd or timesyncd
+# Note that this selection is currently ignored on containerized deployments
+ntp_daemon_type: timesyncd
+
+
 # Set uid/gid to default '64045' for bootstrap directories.
 # '64045' is used for debian based distros. It must be set to 167 in case of rhel based distros.
 # These values have to be set according to the base OS used by the container image, NOT the host.
index 5458a05672fe69fd1791aea880d5d8f3dda9c655..dd7d764e5b0582876881e0f31c745a4fd7d76189 100644 (file)
     - ceph_rhcs_cdn_debian_repo == 'https://customername:customerpasswd@rhcs.download.redhat.com'
     - ceph_repository not in ['rhcs', 'dev', 'obs']
 
+- name: validate ntp daemon type
+  fail:
+    msg: "ntp_daemon_type must be one of chronyd, ntpd, or timesyncd"
+  when:
+    - ntp_service_enabled
+    - ntp_daemon_type not in ['chronyd', 'ntpd', 'timesyncd']
+
 - name: make sure journal_size configured
   debug:
     msg: "WARNING: journal_size is configured to {{ journal_size }}, which is less than 5GB. This is not recommended and can lead to severe issues."