Jim Rollenhagen bece976b91 Allow keystone services to use independent hostnames
This allows keystone service endpoints to use custom hostnames, and adds the
following variables:

* keystone_internal_fqdn
* keystone_external_fqdn

These default to the old values of kolla_internal_fqdn or
kolla_external_fqdn.

This also adds the following variables:

* keystone_admin_listen_port
* keystone_public_listen_port

These default to keystone_admin_port and keystone_public_port,
respectively, for backward compatibility.

These options allow the user to differentiate between the port the
service listens on, and the port the service is reachable on. This is
useful for external load balancers which live on the same host as the
service itself.

Change-Id: I50c46c674134f9958ee4357f0f4eed5483af2214
Implements: blueprint service-hostnames
2019-02-08 10:26:00 -05:00

51 lines
1.5 KiB
YAML

---
- name: Get container facts
kolla_container_facts:
name:
- keystone
- keystone_ssh
register: container_facts
- name: Checking free port for Keystone Admin
wait_for:
host: "{{ api_interface_address }}"
port: "{{ keystone_admin_listen_port }}"
connect_timeout: 1
timeout: 1
state: stopped
when:
- container_facts['keystone'] is not defined
- inventory_hostname in groups['keystone']
- name: Checking free port for Keystone Public
wait_for:
host: "{{ api_interface_address }}"
port: "{{ keystone_public_listen_port }}"
connect_timeout: 1
timeout: 1
state: stopped
when:
- container_facts['keystone'] is not defined
- inventory_hostname in groups['keystone']
- name: Checking free port for Keystone SSH
vars:
keystone_ssh: "{{ keystone_services['keystone-ssh'] }}"
wait_for:
host: "{{ api_interface_address }}"
port: "{{ keystone_ssh_port }}"
connect_timeout: 1
timeout: 1
state: stopped
when:
- container_facts['keystone_ssh'] is not defined
- keystone_ssh.enabled | bool
- inventory_hostname in groups['keystone']
- name: Checking fernet_token_expiry in globals.yml. Update fernet_token_expiry to allowed value if this task fails
run_once: true
local_action: command awk '/^fernet_token_expiry/ { print $2 }' "{{ node_config }}/globals.yml"
register: result
changed_when: false
failed_when: result.stdout | regex_replace('(60|120|180|240|300|360|600|720|900|1200|1800|3600|7200|10800|14400|21600|28800|43200|86400|604800)', '') | search(".+")