nodepool-base: use ipv4 ZK addresses if we don't have an ipv6 address
The new nb04 builder hosted in OSUOSL does not have an ipv6 address. Check if the host being setup defined public_v6, if not then use the ipv4 addresses of the ZK hosts. Change-Id: I9ee09006cb7f61e5c1adbb489e8145e59cbbc281
This commit is contained in:
parent
efa858c58e
commit
8a018af48f
@ -57,6 +57,13 @@
|
|||||||
set_fact:
|
set_fact:
|
||||||
nodepool_config: "{{ nodepool_config_content.content | b64decode | from_yaml }}"
|
nodepool_config: "{{ nodepool_config_content.content | b64decode | from_yaml }}"
|
||||||
|
|
||||||
|
# NOTE(ianw) : 2023-10-12 some nodes, e.g. osuosl, do not have ipv6.
|
||||||
|
# This determines if we should use the ipv4 or ipv6 address of the ZK
|
||||||
|
# hosts.
|
||||||
|
- name: Determine if we should use ipv4 or ipv6 for ZK servers
|
||||||
|
set_fact:
|
||||||
|
_public_addr: '{{ "public_v6" if hostvars[inventory_hostname]["public_v6"] is defined else "public_v4" }}'
|
||||||
|
|
||||||
# Have to run service-zookeeper before service-nodepool
|
# Have to run service-zookeeper before service-nodepool
|
||||||
# because we need top populate the fact cache.
|
# because we need top populate the fact cache.
|
||||||
# Also, we need IP addresses here because in the gate
|
# Also, we need IP addresses here because in the gate
|
||||||
@ -64,7 +71,7 @@
|
|||||||
- name: Get zk config
|
- name: Get zk config
|
||||||
set_fact:
|
set_fact:
|
||||||
zk_hosts:
|
zk_hosts:
|
||||||
hosts: "{{ (zk_hosts['hosts']|default([])) + [{'port': '2281', 'host': hostvars[item]['public_v6'] | default(hostvars[item]['ansible_host']) }] }}"
|
hosts: "{{ (zk_hosts['hosts']|default([])) + [{'port': '2281', 'host': hostvars[item][_public_addr] | default(hostvars[item]['ansible_host']) }] }}"
|
||||||
with_items: '{{ groups["zookeeper"] }}'
|
with_items: '{{ groups["zookeeper"] }}'
|
||||||
|
|
||||||
- name: Overwrite zookeeper-servers
|
- name: Overwrite zookeeper-servers
|
||||||
|
Loading…
Reference in New Issue
Block a user