Refactor Service VIPs redis and ovn_dbs
With this change a Heat resource is no longer used to
create an undercloud neutron API port resource for the
redis and ovn_dbs service virtual IPs. Instead an
external deploy task at step 0 in the individual service
template uses the "tripleo_service_vip" ansible module
to mange a neutron API port resource for each service.
The interfaces to control the IP address and service
network (RedisVirtualFixedIPs, OVNDBsVirtualFixedIPs
and ServiceNetMap) remains the same.
It is also possible to include the 'use_neutron' boolean
in the FixedIPs parameter to instruct the ansible module
not to create a neutron API resource, and simply "echo"
the ip_address given in the FixedIPs parameter. For
example:
RedisVirtualFixedIPs:
- ip_address: 1.0.0.5
use_neutron: false
Alternatively the fixed-ips can be set using the
'ServiceVips' parameter, like this:
ServiceVips:
redis: 1.0.0.5
ovs_dbs: 1.0.0.6
NOTE: If the neutron service is not available the
tripleo_service_vip ansible module will "echo"
the IP provided in %service%VirtualFixedIPs.
Related: blueprint network-data-v2-ports
Depends-On: https://review.opendev.org/777307
Depends-On: https://review.opendev.org/779883
Change-Id: I4794418546363888e7a555a16b45b7a4417f1ef8
This commit is contained in:
@@ -1,6 +1,4 @@
|
||||
resource_registry:
|
||||
# Redis
|
||||
OS::TripleO::Network::Ports::RedisVipPort: /usr/share/openstack-tripleo-heat-templates/network/ports/vip_v6.yaml
|
||||
# External
|
||||
OS::TripleO::Network::External: /usr/share/openstack-tripleo-heat-templates/network/external_v6.yaml
|
||||
OS::TripleO::Network::Ports::ExternalVipPort: /usr/share/openstack-tripleo-heat-templates/network/ports/external_v6.yaml
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
resource_registry:
|
||||
# Redis
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../../../../network/ports/vip_v6.yaml
|
||||
# External
|
||||
OS::TripleO::Network::External: ../../../../network/external_v6.yaml
|
||||
OS::TripleO::Network::Ports::ExternalVipPort: ../../../../network/ports/external_v6.yaml
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
resource_registry:
|
||||
# Redis
|
||||
OS::TripleO::Network::Ports::RedisVipPort: /usr/share/openstack-tripleo-heat-templates/network/ports/vip.yaml
|
||||
# External
|
||||
OS::TripleO::Network::External: /usr/share/openstack-tripleo-heat-templates/network/external.yaml
|
||||
OS::TripleO::Network::Ports::ExternalVipPort: /usr/share/openstack-tripleo-heat-templates/network/ports/external.yaml
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
resource_registry:
|
||||
# Redis
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../../../../network/ports/vip.yaml
|
||||
# External
|
||||
OS::TripleO::Network::External: ../../../../network/external.yaml
|
||||
OS::TripleO::Network::Ports::ExternalVipPort: ../../../../network/ports/external.yaml
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
resource_registry:
|
||||
# Redis
|
||||
OS::TripleO::Network::Ports::RedisVipPort: /usr/share/openstack-tripleo-heat-templates/network/ports/vip.yaml
|
||||
# External
|
||||
OS::TripleO::Network::External: /usr/share/openstack-tripleo-heat-templates/network/external.yaml
|
||||
OS::TripleO::Network::Ports::ExternalVipPort: /usr/share/openstack-tripleo-heat-templates/network/ports/external.yaml
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
resource_registry:
|
||||
# Redis
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../../../../network/ports/vip.yaml
|
||||
# External
|
||||
OS::TripleO::Network::External: ../../../../network/external.yaml
|
||||
OS::TripleO::Network::Ports::ExternalVipPort: ../../../../network/ports/external.yaml
|
||||
|
||||
@@ -52,6 +52,20 @@
|
||||
tags:
|
||||
- always
|
||||
|
||||
- hosts: all
|
||||
name: Load Service VIP variables
|
||||
gather_facts: "{{ gather_facts | default(false) }}"
|
||||
any_errors_fatal: false
|
||||
ignore_unreachable: true
|
||||
tasks:
|
||||
- name: Include Service VIP vars
|
||||
include_vars:
|
||||
file: "{{ playbook_dir }}/service_vip_vars.yaml"
|
||||
name: service_vip_vars
|
||||
ignore_errors: yes
|
||||
tags:
|
||||
- always
|
||||
|
||||
- hosts: "{{ deploy_target_host | default([]) }}"
|
||||
name: Render all_nodes data as group_vars for overcloud
|
||||
gather_facts: "{{ gather_facts | default(false) }}"
|
||||
|
||||
@@ -451,6 +451,29 @@ outputs:
|
||||
SELINUX_MODE: {get_param: SELinuxMode}
|
||||
{% endblock %}
|
||||
template: |
|
||||
- hosts: DEPLOY_SOURCE_HOST
|
||||
strategy: tripleo_free
|
||||
name: External deployment step 0
|
||||
gather_facts: "{% raw %}{{ gather_facts | default(false) }}{% endraw %}"
|
||||
any_errors_fatal: yes
|
||||
become: false
|
||||
vars:
|
||||
step: 0
|
||||
enable_debug: ENABLE_DEBUG
|
||||
tasks:
|
||||
- name: External deployment step 0
|
||||
delegate_to: localhost
|
||||
run_once: true
|
||||
debug:
|
||||
msg: Use --start-at-task 'External deployment step 0' to resume from this task
|
||||
- include_tasks: "external_deploy_steps_tasks_step0.yaml"
|
||||
when:
|
||||
- "'external_deploy_steps_tasks_step0.yaml' is exists"
|
||||
tags:
|
||||
- external
|
||||
- external_deploy_steps
|
||||
- step0
|
||||
|
||||
- import_playbook: common_deploy_steps_playbooks.yaml
|
||||
vars:
|
||||
deploy_source_host: "DEPLOY_SOURCE_HOST"
|
||||
@@ -535,6 +558,8 @@ outputs:
|
||||
name: Server pre network steps
|
||||
gather_facts: "{% raw %}{{ gather_facts | default(false) }}{% endraw %}"
|
||||
any_errors_fatal: yes
|
||||
vars:
|
||||
deploy_source_host: "DEPLOY_SOURCE_HOST"
|
||||
tasks:
|
||||
{% raw %}
|
||||
- import_tasks: hiera_steps_tasks.yaml
|
||||
|
||||
@@ -4,6 +4,9 @@ description: >
|
||||
OpenStack Redis service configured with Puppet
|
||||
|
||||
parameters:
|
||||
RootStackName:
|
||||
description: The name of the stack/plan.
|
||||
type: string
|
||||
RedisPassword:
|
||||
description: The password for the redis service account.
|
||||
type: string
|
||||
@@ -42,6 +45,15 @@ parameters:
|
||||
default: false
|
||||
description: Enable IPv6 in Redis
|
||||
type: boolean
|
||||
RedisVirtualFixedIPs:
|
||||
default: []
|
||||
description: >
|
||||
Control the IP allocation for the virtual IP used by Redis. E.g.
|
||||
[{'ip_address':'1.2.3.4'}]
|
||||
type: json
|
||||
ServiceVips:
|
||||
default: {}
|
||||
type: json
|
||||
|
||||
parameter_groups:
|
||||
- label: deprecated
|
||||
@@ -59,6 +71,16 @@ conditions:
|
||||
equals:
|
||||
- {get_param: [ServiceData, net_ip_version_map, {get_param: [ServiceNetMap, RedisNetwork]}]}
|
||||
- 6
|
||||
redis_virtual_fixed_ip_set:
|
||||
not:
|
||||
equals:
|
||||
- get_param: RedisVirtualFixedIPs
|
||||
- []
|
||||
redis_service_vip_set:
|
||||
not:
|
||||
equals:
|
||||
- get_param: [ServiceVips, redis]
|
||||
- ''
|
||||
|
||||
outputs:
|
||||
role_data:
|
||||
@@ -106,3 +128,22 @@ outputs:
|
||||
params:
|
||||
$NETWORK: {get_param: [ServiceNetMap, RedisNetwork]}
|
||||
redis::ulimit: {get_param: RedisFDLimit}
|
||||
external_deploy_tasks:
|
||||
- when:
|
||||
- step|int == 0
|
||||
name: redis_external_deploy_init
|
||||
block:
|
||||
- name: create redis virtual ip
|
||||
tripleo_service_vip:
|
||||
playbook_dir: "{{ playbook_dir }}"
|
||||
stack_name: {get_param: RootStackName}
|
||||
service_name: redis
|
||||
network: {get_param: [ServiceNetMap, RedisNetwork]}
|
||||
fixed_ips:
|
||||
if:
|
||||
- redis_virtual_fixed_ip_set
|
||||
- {get_param: RedisVirtualFixedIPs}
|
||||
- if:
|
||||
- redis_service_vip_set
|
||||
- [{ip_address: {get_param: [ServiceVips, redis]}}]
|
||||
- [{subnet: {get_param: [ServiceData, vip_subnet_map, redis]}}]
|
||||
|
||||
@@ -239,6 +239,7 @@ outputs:
|
||||
- {get_param: CertificateKeySize}
|
||||
- {get_param: RedisCertificateKeySize}
|
||||
ca: ipa
|
||||
external_deploy_tasks: {get_attr: [RedisBase, role_data, external_deploy_tasks]}
|
||||
host_prep_tasks:
|
||||
- name: create fcontext entry for redis data
|
||||
sefcontext:
|
||||
|
||||
@@ -263,6 +263,7 @@ outputs:
|
||||
- {}
|
||||
metadata_settings:
|
||||
get_attr: [RedisBase, role_data, metadata_settings]
|
||||
external_deploy_tasks: {get_attr: [RedisBase, role_data, external_deploy_tasks]}
|
||||
host_prep_tasks:
|
||||
- name: create persistent directories
|
||||
file:
|
||||
|
||||
@@ -4,6 +4,9 @@ description: >
|
||||
OpenStack containerized Ovn DBs service
|
||||
|
||||
parameters:
|
||||
RootStackName:
|
||||
description: The name of the stack/plan.
|
||||
type: string
|
||||
ContainerOvnNbDbImage:
|
||||
description: image
|
||||
type: string
|
||||
@@ -44,6 +47,27 @@ parameters:
|
||||
description: Port of the OVN Southbound DB server
|
||||
type: number
|
||||
default: 6642
|
||||
OVNDBsVirtualFixedIPs:
|
||||
default: []
|
||||
description: >
|
||||
Control the IP allocation for the virtual IP used by OVN DBs. E.g.
|
||||
[{'ip_address':'1.2.3.4'}]
|
||||
type: json
|
||||
ServiceVips:
|
||||
default: {}
|
||||
type: json
|
||||
|
||||
conditions:
|
||||
ovn_dbs_virtual_fixed_ip_set:
|
||||
not:
|
||||
equals:
|
||||
- get_param: OVNDBsVirtualFixedIPs
|
||||
- []
|
||||
ovn_dbs_service_vip_set:
|
||||
not:
|
||||
equals:
|
||||
- get_param: [ServiceVips, ovn_dbs]
|
||||
- ''
|
||||
|
||||
resources:
|
||||
|
||||
@@ -202,4 +226,23 @@ outputs:
|
||||
with_items:
|
||||
- { 'path': /var/log/containers/openvswitch, 'setype': container_file_t, 'mode': '0750' }
|
||||
- { 'path': /var/lib/openvswitch/ovn, 'setype': container_file_t }
|
||||
external_deploy_tasks:
|
||||
- when:
|
||||
- step|int == 0
|
||||
name: ovn_external_deploy_init
|
||||
block:
|
||||
- name: create ovn_dbs virtual ip
|
||||
tripleo_service_vip:
|
||||
playbook_dir: "{{ playbook_dir }}"
|
||||
stack_name: {get_param: RootStackName}
|
||||
service_name: ovn_dbs
|
||||
network: {get_param: [ServiceNetMap, OvnDbsNetwork]}
|
||||
fixed_ips:
|
||||
if:
|
||||
- ovn_dbs_virtual_fixed_ip_set
|
||||
- {get_param: OVNDBsVirtualFixedIPs}
|
||||
- if:
|
||||
- ovn_dbs_service_vip_set
|
||||
- [{ip_address: {get_param: [ServiceVips, ovn_dbs]}}]
|
||||
- [{subnet: {get_param: [ServiceData, vip_subnet_map, ovn_dbs]}}]
|
||||
upgrade_tasks: []
|
||||
|
||||
@@ -227,6 +227,7 @@ outputs:
|
||||
with_items:
|
||||
- { 'path': /var/log/containers/openvswitch, 'setype': container_file_t, 'mode': '0750' }
|
||||
- { 'path': /var/lib/openvswitch/ovn, 'setype': container_file_t }
|
||||
external_deploy_tasks: {get_attr: [OVNDbsBase, role_data, external_deploy_tasks]}
|
||||
deploy_steps_tasks:
|
||||
- name: OVN DBS tag container image for pacemaker
|
||||
when: step|int == 1
|
||||
|
||||
@@ -46,8 +46,6 @@ parameter_defaults:
|
||||
NovaDisableImageDownloadToRbd: True
|
||||
|
||||
resource_registry:
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/noop.yaml
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/noop.yaml
|
||||
OS::TripleO::Services::CinderVolumeEdge: ../deployment/cinder/cinder-volume-container-puppet.yaml
|
||||
OS::TripleO::Services::Etcd: ../deployment/etcd/etcd-container-puppet.yaml
|
||||
OS::TripleO::Services::GlanceApiEdge: ../deployment/glance/glance-api-edge-container-puppet.yaml
|
||||
|
||||
@@ -44,8 +44,6 @@ parameter_defaults:
|
||||
NovaDisableImageDownloadToRbd: True
|
||||
|
||||
resource_registry:
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/noop.yaml
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/noop.yaml
|
||||
OS::TripleO::Services::CinderVolumeEdge: ../deployment/cinder/cinder-volume-container-puppet.yaml
|
||||
OS::TripleO::Services::Etcd: ../deployment/etcd/etcd-container-puppet.yaml
|
||||
OS::TripleO::Services::GlanceApiEdge: ../deployment/glance/glance-api-edge-container-puppet.yaml
|
||||
|
||||
@@ -26,8 +26,6 @@ parameter_defaults:
|
||||
NovaDisableImageDownloadToRbd: True
|
||||
|
||||
resource_registry:
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/noop.yaml
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/noop.yaml
|
||||
OS::TripleO::Services::GlanceApiEdge: ../deployment/glance/glance-api-edge-container-puppet.yaml
|
||||
OS::TripleO::Services::HAproxyEdge: ../deployment/haproxy/haproxy-edge-container-puppet.yaml
|
||||
OS::TripleO::Services::NovaAZConfig: ../deployment/nova/nova-az-config.yaml
|
||||
|
||||
@@ -6,8 +6,6 @@ resource_registry:
|
||||
OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api_v6.yaml
|
||||
OS::TripleO::Network::Ports::StorageVipPort: ../network/ports/storage_v6.yaml
|
||||
OS::TripleO::Network::Ports::StorageMgmtVipPort: ../network/ports/storage_mgmt_v6.yaml
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/vip_v6.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/vip_v6.yaml
|
||||
OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/external_from_pool_v6.yaml
|
||||
OS::TripleO::Controller::Ports::InternalApiPort: ../network/ports/internal_api_from_pool_v6.yaml
|
||||
OS::TripleO::Controller::Ports::StoragePort: ../network/ports/storage_from_pool_v6.yaml
|
||||
|
||||
@@ -3,8 +3,6 @@ resource_registry:
|
||||
OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api_v6.yaml
|
||||
OS::TripleO::Network::Ports::StorageVipPort: ../network/ports/storage_v6.yaml
|
||||
OS::TripleO::Network::Ports::StorageMgmtVipPort: ../network/ports/storage_mgmt_v6.yaml
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/vip_v6.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/vip_v6.yaml
|
||||
OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/external_from_pool_v6.yaml
|
||||
OS::TripleO::Controller::Ports::InternalApiPort: ../network/ports/internal_api_from_pool_v6.yaml
|
||||
OS::TripleO::Controller::Ports::StoragePort: ../network/ports/storage_from_pool_v6.yaml
|
||||
|
||||
@@ -3,8 +3,6 @@ resource_registry:
|
||||
OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api.yaml
|
||||
OS::TripleO::Network::Ports::StorageVipPort: ../network/ports/storage.yaml
|
||||
OS::TripleO::Network::Ports::StorageMgmtVipPort: ../network/ports/storage_mgmt.yaml
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/vip.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/vip.yaml
|
||||
OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/external_from_pool.yaml
|
||||
OS::TripleO::Controller::Ports::InternalApiPort: ../network/ports/internal_api_from_pool.yaml
|
||||
OS::TripleO::Controller::Ports::StoragePort: ../network/ports/storage_from_pool.yaml
|
||||
|
||||
@@ -7,8 +7,6 @@ resource_registry:
|
||||
OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api_v6.yaml
|
||||
OS::TripleO::Network::Ports::StorageVipPort: ../network/ports/storage_v6.yaml
|
||||
OS::TripleO::Network::Ports::StorageMgmtVipPort: ../network/ports/storage_mgmt_v6.yaml
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/vip_v6.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/vip_v6.yaml
|
||||
|
||||
parameter_defaults:
|
||||
# Set the IP addresses of the VIPs here.
|
||||
|
||||
@@ -7,8 +7,6 @@ resource_registry:
|
||||
OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api.yaml
|
||||
OS::TripleO::Network::Ports::StorageVipPort: ../network/ports/storage.yaml
|
||||
OS::TripleO::Network::Ports::StorageMgmtVipPort: ../network/ports/storage_mgmt.yaml
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/vip.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/vip.yaml
|
||||
|
||||
parameter_defaults:
|
||||
# Set the IP addresses of the VIPs here.
|
||||
|
||||
@@ -19,8 +19,6 @@ resource_registry:
|
||||
{%- for network in networks if network.vip and network.name != 'Tenant' %}
|
||||
OS::TripleO::Network::Ports::{{network.name}}VipPort: ../network/ports/{{network.name_lower|default(network.name.lower())}}.yaml
|
||||
{%- endfor %}
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/vip.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/vip.yaml
|
||||
|
||||
# Port assignments for each role are determined by the role definition.
|
||||
{%- for role in roles %}
|
||||
|
||||
@@ -33,8 +33,6 @@ resource_registry:
|
||||
{%- endif %}
|
||||
{%- endfor %}
|
||||
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/vip_v6.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/vip_v6.yaml
|
||||
|
||||
# Port assignments by role, edit role definition to assign networks to roles.
|
||||
{%- for role in roles %}
|
||||
|
||||
@@ -26,8 +26,6 @@ resource_registry:
|
||||
{%- endif %}
|
||||
{%- endfor %}
|
||||
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/vip_v6.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/vip_v6.yaml
|
||||
|
||||
# Port assignments by role, edit role definition to assign networks to roles.
|
||||
{%- for role in roles %}
|
||||
|
||||
@@ -15,8 +15,6 @@ resource_registry:
|
||||
OS::TripleO::Network::Ports::{{network.name}}VipPort: ../network/ports/{{network.name_lower|default(network.name.lower())}}.yaml
|
||||
{%- endif %}
|
||||
{%- endfor %}
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/vip.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/vip.yaml
|
||||
|
||||
# Port assignments by role, edit role definition to assign networks to roles.
|
||||
{%- for role in roles %}
|
||||
|
||||
@@ -14,7 +14,6 @@ resource_registry:
|
||||
OS::TripleO::Services::OVNController: OS::Heat::None
|
||||
OS::TripleO::Services::OVNDBs: OS::Heat::None
|
||||
OS::TripleO::Services::OVNMetadataAgent: OS::Heat::None
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../../network/ports/noop.yaml
|
||||
|
||||
parameter_defaults:
|
||||
|
||||
|
||||
@@ -58,8 +58,6 @@ parameter_defaults:
|
||||
|
||||
resource_registry:
|
||||
OS::TripleO::Network::Ports::ControlPlaneVipPort: ../../deployed-server/deployed-neutron-port.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../../network/ports/noop.yaml
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../../network/ports/noop.yaml
|
||||
OS::TripleO::OVNMacAddressNetwork: OS::Heat::None
|
||||
OS::TripleO::OVNMacAddressPort: OS::Heat::None
|
||||
OS::TripleO::Services::AodhApi: OS::Heat::None
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
resource_registry:
|
||||
OS::TripleO::Services::Tmpwatch: ../deployment/logrotate/tmpwatch-install.yaml
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/noop.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/noop.yaml
|
||||
OS::TripleO::Network::Ports::ControlPlaneVipPort: ../deployed-server/deployed-neutron-port.yaml
|
||||
OS::TripleO::NodeExtraConfigPost: ../extraconfig/post_deploy/undercloud_post.yaml
|
||||
OS::TripleO::Services::DockerRegistry: ../deployment/image-serve/image-serve-baremetal-ansible.yaml
|
||||
|
||||
@@ -83,8 +83,6 @@ resource_registry:
|
||||
OS::TripleO::Network::Ports::{{network.name}}VipPort: network/ports/noop.yaml
|
||||
{%- endfor %}
|
||||
|
||||
OS::TripleO::Network::Ports::RedisVipPort: network/ports/ctlplane_vip.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: network/ports/ctlplane_vip.yaml
|
||||
OS::TripleO::Network::Ports::ControlPlaneVipPort: OS::Neutron::Port
|
||||
|
||||
# Service to network Mappings
|
||||
|
||||
@@ -131,18 +131,6 @@ parameters:
|
||||
type: string
|
||||
default: unset
|
||||
description: Salt for the rabbit cookie, change this to force the randomly generated rabbit cookie to change.
|
||||
RedisVirtualFixedIPs:
|
||||
default: []
|
||||
description: >
|
||||
Control the IP allocation for the virtual IP used by Redis. E.g.
|
||||
[{'ip_address':'1.2.3.4'}]
|
||||
type: json
|
||||
OVNDBsVirtualFixedIPs:
|
||||
default: []
|
||||
description: >
|
||||
Control the IP allocation for the virtual IP used by OVN DBs. E.g.
|
||||
[{'ip_address':'1.2.3.4'}]
|
||||
type: json
|
||||
CloudDomain:
|
||||
default: 'localdomain'
|
||||
type: string
|
||||
@@ -449,16 +437,6 @@ conditions:
|
||||
equals:
|
||||
- get_param: PublicVirtualFixedIPs
|
||||
- []
|
||||
redis_virtual_fixed_ip_set:
|
||||
not:
|
||||
equals:
|
||||
- get_param: RedisVirtualFixedIPs
|
||||
- []
|
||||
ovn_dbs_virtual_fixed_ip_set:
|
||||
not:
|
||||
equals:
|
||||
- get_param: OVNDBsVirtualFixedIPs
|
||||
- []
|
||||
set_default_mysql_cell_internal:
|
||||
or:
|
||||
- equals:
|
||||
@@ -658,6 +636,7 @@ resources:
|
||||
net_cidr_map: {get_attr: [NetCidrMapValue, value]}
|
||||
net_vip_map: {get_attr: [VipMap, net_ip_map]}
|
||||
net_ip_version_map: {get_attr: [NetIpVersionMapValue, value]}
|
||||
vip_subnet_map: {get_attr: [ServiceNetMap, vip_subnet_map]}
|
||||
EndpointMap: {get_attr: [EndpointMapData, value]}
|
||||
RoleName: {{role.name}}
|
||||
RoleParameters:
|
||||
@@ -1110,40 +1089,6 @@ resources:
|
||||
params:
|
||||
$STACK_NAME: {get_param: 'OS::stack_name'}
|
||||
|
||||
RedisVirtualIP:
|
||||
depends_on: [Networks, ServiceNetMap]
|
||||
type: OS::TripleO::Network::Ports::RedisVipPort
|
||||
properties:
|
||||
ControlPlaneIP: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
|
||||
ControlPlaneSubnetCidr: {str_split: ['/', {get_attr: [Networks, net_attributes_map, ctlplane, subnets, {get_attr: [ServiceNetMap, vip_subnet_map, ctlplane]}, cidr]}, 1]}
|
||||
ControlPlaneNetwork: {get_param: NeutronControlPlaneID}
|
||||
PortName: redis_virtual_ip
|
||||
DnsName: null
|
||||
NetworkName: {get_attr: [ServiceNetMap, service_net_map, RedisNetwork]}
|
||||
ServiceName: redis
|
||||
FixedIPs:
|
||||
if:
|
||||
- redis_virtual_fixed_ip_set
|
||||
- {get_param: RedisVirtualFixedIPs}
|
||||
- [{subnet: {get_attr: [ServiceNetMap, vip_subnet_map, redis]}}]
|
||||
|
||||
OVNDBsVirtualIP:
|
||||
depends_on: [Networks, ServiceNetMap]
|
||||
type: OS::TripleO::Network::Ports::OVNDBsVipPort
|
||||
properties:
|
||||
ControlPlaneIP: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
|
||||
ControlPlaneSubnetCidr: {str_split: ['/', {get_attr: [Networks, net_attributes_map, ctlplane, subnets, {get_attr: [ServiceNetMap, vip_subnet_map, ctlplane]}, cidr]}, 1]}
|
||||
ControlPlaneNetwork: {get_param: NeutronControlPlaneID}
|
||||
PortName: ovn_dbs_virtual_ip
|
||||
DnsName: null
|
||||
NetworkName: {get_attr: [ServiceNetMap, service_net_map, OvnDbsNetwork]}
|
||||
ServiceName: ovn_dbs
|
||||
FixedIPs:
|
||||
if:
|
||||
- ovn_dbs_virtual_fixed_ip_set
|
||||
- {get_param: OVNDBsVirtualFixedIPs}
|
||||
- [{subnet: {get_attr: [ServiceNetMap, vip_subnet_map, ovn_dbs]}}]
|
||||
|
||||
{%- for network in networks if network.vip|default(false) and network.enabled|default(true) %}
|
||||
{%- if network.name == 'External' %}
|
||||
# The public VIP is on the External net, falls back to ctlplane
|
||||
@@ -1284,11 +1229,7 @@ resources:
|
||||
{%- for network in networks if network.enabled|default(true) %}
|
||||
- {{ network.name }}
|
||||
{%- endfor %}
|
||||
NetVipMap:
|
||||
map_merge:
|
||||
- {get_attr: [VipMap, net_ip_map]}
|
||||
- redis: {get_attr: [RedisVirtualIP, ip_address]}
|
||||
- ovn_dbs: {get_attr: [OVNDBsVirtualIP, ip_address]}
|
||||
NetVipMap: {get_attr: [VipMap, net_ip_map]}
|
||||
CloudNames: {get_attr: [CloudNames, value]}
|
||||
UndercloudHostsEntries: {get_param: UndercloudHostsEntries}
|
||||
ExtraHostsEntries: {get_param: ExtraHostFileEntries}
|
||||
@@ -1390,11 +1331,7 @@ outputs:
|
||||
{%- endfor %}
|
||||
VipMap:
|
||||
description: Mapping of each network to VIP addresses. Also includes the Redis and OVN DBs VIPs.
|
||||
value:
|
||||
map_merge:
|
||||
- {get_attr: [VipMap, net_ip_map]}
|
||||
- redis: {get_attr: [RedisVirtualIP, ip_address]}
|
||||
- ovn_dbs: {get_attr: [OVNDBsVirtualIP, ip_address]}
|
||||
value: {get_attr: [VipMap, net_ip_map]}
|
||||
ServerIdData:
|
||||
description: Mapping of each role to a list of nova server IDs and the bootstrap ID
|
||||
value: {get_attr: [ServerIdMap, value]}
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
---
|
||||
upgrade:
|
||||
- |
|
||||
Users of the ``OS::TripleO::Network::Ports::RedisVipPort`` and
|
||||
``OS::TripleO::Network::Ports::OVNDBsVipPort`` interfaces must
|
||||
update their templates. The interfaces has been removed, and the
|
||||
managment of these virtual IPs has been moved to the
|
||||
tripleo-heat-templates service template.
|
||||
|
||||
This change will typically affect deployments using already
|
||||
deployed servers. Typically the virtual IPs for Redis and OVNDBs
|
||||
was overriden using the ``deployed-neutron-port`` template.
|
||||
For example::
|
||||
|
||||
resource_registry:
|
||||
OS::TripleO::Network::Ports::RedisVipPort: /usr/share/openstack-tripleo-heat-templates/deployed-server/deployed-neutron-port.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: /usr/share/openstack-tripleo-heat-templates/deployed-server/deployed-neutron-port.yaml
|
||||
|
||||
parameter_defaults:
|
||||
DeployedServerPortMap:
|
||||
redis_virtual_ip:
|
||||
fixed_ips:
|
||||
- ip_address: 192.168.100.10
|
||||
subnets:
|
||||
- cidr: 192.168.100.0/24
|
||||
network:
|
||||
tags:
|
||||
- 192.168.100.0/24
|
||||
ovn_dbs_virtual_ip:
|
||||
fixed_ips:
|
||||
- ip_address: 192.168.100.11
|
||||
subnets:
|
||||
- cidr: 192.168.100.0/24
|
||||
network:
|
||||
tags:
|
||||
- 192.168.100.0/24
|
||||
|
||||
This will have to be changed. The following example shows how to
|
||||
replicate the above configuration::
|
||||
|
||||
parameter_defaults:
|
||||
RedisVirtualFixedIPs:
|
||||
- ip_address: 192.168.100.10
|
||||
use_neutron: false
|
||||
OVNDBsVirtualFixedIPs:
|
||||
- ip_address: 192.168.100.11
|
||||
use_neutron: false
|
||||
|
||||
deprecations:
|
||||
- |
|
||||
The interfaces ``OS::TripleO::Network::Ports::RedisVipPort`` and
|
||||
``OS::TripleO::Network::Ports::OVNDBsVipPort`` ha been removed.
|
||||
The resources are no longer used in the overcloud heat stack.
|
||||
|
||||
@@ -22,8 +22,6 @@ environments:
|
||||
NovaCrossAZAttach: false
|
||||
NovaDisableImageDownloadToRbd: true
|
||||
resource_registry: &dcn_resource_registry
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/noop.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/noop.yaml
|
||||
OS::TripleO::Services::GlanceApiEdge: ../deployment/glance/glance-api-edge-container-puppet.yaml
|
||||
OS::TripleO::Services::HAproxyEdge: ../deployment/haproxy/haproxy-edge-container-puppet.yaml
|
||||
OS::TripleO::Services::NovaAZConfig: ../deployment/nova/nova-az-config.yaml
|
||||
|
||||
@@ -55,8 +55,6 @@ environments:
|
||||
|
||||
resource_registry:
|
||||
# this network config is assumed by the tripleo deploy command
|
||||
OS::TripleO::Network::Ports::RedisVipPort: ../../network/ports/noop.yaml
|
||||
OS::TripleO::Network::Ports::OVNDBsVipPort: ../../network/ports/noop.yaml
|
||||
OS::TripleO::Network::Ports::ControlPlaneVipPort: ../../deployed-server/deployed-neutron-port.yaml
|
||||
|
||||
# OVN
|
||||
|
||||
Reference in New Issue
Block a user