From 060ef5b5693831ad67643fc23cff1c6ceded8022 Mon Sep 17 00:00:00 2001 From: Juan Antonio Osorio Robles Date: Wed, 18 Jan 2017 01:43:35 +0200 Subject: [PATCH] Add options to set the overcloud's FQDNs and domain These are set in an environment variable and are applicable since the newton release. They are set in the nodes' /etc/hosts file and can be used for the keystone endpoints depending on the endpoint map environment file that is used. Change-Id: Ida2b8b3964b10c90882b6bbeece057377e81cb68 --- roles/overcloud-deploy/README.md | 6 ++++++ roles/overcloud-deploy/defaults/main.yml | 2 ++ roles/overcloud-deploy/tasks/create-scripts.yml | 7 +++++++ roles/overcloud-deploy/tasks/pre-deploy.yml | 6 ++++++ roles/overcloud-deploy/templates/cloud-names.yaml.j2 | 9 +++++++++ 5 files changed, 30 insertions(+) create mode 100644 roles/overcloud-deploy/templates/cloud-names.yaml.j2 diff --git a/roles/overcloud-deploy/README.md b/roles/overcloud-deploy/README.md index 0a934dfcc..73dfd2602 100644 --- a/roles/overcloud-deploy/README.md +++ b/roles/overcloud-deploy/README.md @@ -16,6 +16,12 @@ A description of the settable variables for this role should go here, including * `overcloud_ipv6`: enables IPv6 deployment on the overcloud * `enable_cinder_backup`: false/true - enables cinder-backup service. * `deployed_server`: false/true - enables support for nodepool deployed server deployment (default: false) +* `overcloud_cloud_name`: Sets the FQDN for the overcloud's public VIP. +* `overcloud_cloud_name_internal`: Sets the FQDN for the overcloud's VIP for the internal network. +* `overcloud_cloud_name_storage`: Sets the FQDN for the overcloud's VIP for the storage network. +* `overcloud_cloud_name_storage_management`: Sets the FQDN for the overcloud's VIP for the storage management network. +* `overcloud_cloud_name_ctlplane`: Sets the FQDN for the overcloud's VIP for the ctlplane network. +* `overcloud_cloud_domain`: Sets the domain for the nodes' internal hostnames. Dependencies ------------ diff --git a/roles/overcloud-deploy/defaults/main.yml b/roles/overcloud-deploy/defaults/main.yml index b352f5ede..081841c55 100644 --- a/roles/overcloud-deploy/defaults/main.yml +++ b/roles/overcloud-deploy/defaults/main.yml @@ -59,6 +59,7 @@ timeout_args: "--timeout {{deploy_timeout}}" set_overcloud_workers: true +cloud_name_args: "" network_args: "" pacemaker_args: "" workers_args: "" @@ -77,6 +78,7 @@ deploy_args: >- {{ libvirt_args }} {{ flavor_args }} {{ timeout_args }} + {{ cloud_name_args }} {{ container_args }} {{ network_args }} {{ pacemaker_args }} diff --git a/roles/overcloud-deploy/tasks/create-scripts.yml b/roles/overcloud-deploy/tasks/create-scripts.yml index bd5bc4d32..f073f9456 100644 --- a/roles/overcloud-deploy/tasks/create-scripts.yml +++ b/roles/overcloud-deploy/tasks/create-scripts.yml @@ -24,3 +24,10 @@ template: src: "overcloud_services.yaml.j2" dest: "{{ working_dir }}/overcloud_services.yaml" + +- name: Cloud names heat environment + when: release not in ['mitaka', 'liberty'] + template: + src: "cloud-names.yaml.j2" + dest: "{{ working_dir }}/cloud-names.yaml" + diff --git a/roles/overcloud-deploy/tasks/pre-deploy.yml b/roles/overcloud-deploy/tasks/pre-deploy.yml index 251eae7c4..e118a4f3a 100644 --- a/roles/overcloud-deploy/tasks/pre-deploy.yml +++ b/roles/overcloud-deploy/tasks/pre-deploy.yml @@ -36,6 +36,12 @@ -e {{ overcloud_templates_path }}/environments/cinder-backup.yaml when: enable_cinder_backup|bool +- name: Set cloud-name variables + set_fact: + cloud_name_args: >- + -e {{ working_dir }}/cloud-names.yaml + when: release not in ['mitaka', 'liberty'] + - name: set ssl_args fact for master/newton set_fact: ssl_args: >- diff --git a/roles/overcloud-deploy/templates/cloud-names.yaml.j2 b/roles/overcloud-deploy/templates/cloud-names.yaml.j2 new file mode 100644 index 000000000..f7f2e0e59 --- /dev/null +++ b/roles/overcloud-deploy/templates/cloud-names.yaml.j2 @@ -0,0 +1,9 @@ +# Defines the cloud names based on parameters given. + +parameter_defaults: + CloudName: {{overcloud_cloud_name|default('overcloud.localdomain')}} + CloudNameInternal: {{overcloud_cloud_name_internal|default('overcloud.internalapi.localdomain')}} + CloudNameStorage: {{overcloud_cloud_name_storage|default('overcloud.storage.localdomain')}} + CloudNameStorageManagement: {{overcloud_cloud_name_storage_management|default('overcloud.storagemgmt.localdomain')}} + CloudNameCtlplane: {{overcloud_cloud_name_ctlplane|default('overcloud.ctlplane.localdomain')}} + CloudDomain: {{overcloud_cloud_domain|default('localdomain')}}