diff options
author | Scott Dodson <sdodson@redhat.com> | 2016-01-29 10:49:11 -0500 |
---|---|---|
committer | Scott Dodson <sdodson@redhat.com> | 2016-02-03 11:45:52 -0500 |
commit | 677c4b98cf9e0165d1342389b77b2810ea2a3ec1 (patch) | |
tree | 316d7354ba6694ef9f6c147f8da5e99bd25481f8 /playbooks/common/openshift-cluster | |
parent | ed605d488682e36126f4911c76c7485509751838 (diff) | |
download | openshift-677c4b98cf9e0165d1342389b77b2810ea2a3ec1.tar.gz openshift-677c4b98cf9e0165d1342389b77b2810ea2a3ec1.tar.bz2 openshift-677c4b98cf9e0165d1342389b77b2810ea2a3ec1.tar.xz openshift-677c4b98cf9e0165d1342389b77b2810ea2a3ec1.zip |
Add an early check to ensure that node names resolve to an interface on the host
Diffstat (limited to 'playbooks/common/openshift-cluster')
-rw-r--r-- | playbooks/common/openshift-cluster/config.yml | 2 | ||||
-rw-r--r-- | playbooks/common/openshift-cluster/validate_hostnames.yml | 26 |
2 files changed, 28 insertions, 0 deletions
diff --git a/playbooks/common/openshift-cluster/config.yml b/playbooks/common/openshift-cluster/config.yml index 11e5b68f6..2cad4b362 100644 --- a/playbooks/common/openshift-cluster/config.yml +++ b/playbooks/common/openshift-cluster/config.yml @@ -1,6 +1,8 @@ --- - include: evaluate_groups.yml +- include: validate_hostnames.yml + - include: ../openshift-docker/config.yml - include: ../openshift-etcd/config.yml diff --git a/playbooks/common/openshift-cluster/validate_hostnames.yml b/playbooks/common/openshift-cluster/validate_hostnames.yml new file mode 100644 index 000000000..047431b63 --- /dev/null +++ b/playbooks/common/openshift-cluster/validate_hostnames.yml @@ -0,0 +1,26 @@ +--- +- include: evaluate_groups.yml + +- name: Gather and set facts for node hosts + hosts: oo_nodes_to_config + roles: + - openshift_facts + tasks: + - openshift_facts: + role: "{{ item.role }}" + local_facts: "{{ item.local_facts }}" + with_items: + - role: common + local_facts: + hostname: "{{ openshift_hostname | default(None) }}" + public_hostname: "{{ openshift_public_hostname | default(None) }}" + - shell: + getent ahostsv4 {{ openshift.common.hostname }} | head -n 1 | awk '{ print $1 }' + register: lookupip + changed_when: false + failed_when: false + - name: Warn user about bad openshift_hostname values + pause: + prompt: "The hostname \"{{ openshift.common.hostname }}\" for \"{{ ansible_nodename }}\" doesn't resolve to an ip address owned by this host. Please set openshift_hostname variable to a hostname that when resolved on the host in question resolves to an IP address matching an interface on this host. This host will fail liveness checks for pods utilizing hostPorts, press CTRL-C to continue." + seconds: "{{ 10 if openshift_override_hostname_check | default(false) | bool else omit }}" + when: lookupip.stdout not in ansible_all_ipv4_addresses |