diff --git a/environments/undercloud.yaml b/environments/undercloud.yaml index a9d9910c31..970f111839 100644 --- a/environments/undercloud.yaml +++ b/environments/undercloud.yaml @@ -2,6 +2,7 @@ resource_registry: OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/noop.yaml OS::TripleO::Network::Ports::ControlPlaneVipPort: ../deployed-server/deployed-neutron-port.yaml OS::TripleO::Undercloud::Net::SoftwareConfig: ../net-config-undercloud.yaml + OS::TripleO::NodeExtraConfig: ../extraconfig/pre_deploy/undercloud_pre.yaml OS::TripleO::NodeExtraConfigPost: ../extraconfig/post_deploy/undercloud_post.yaml OS::TripleO::Services::DockerRegistry: ../puppet/services/docker-registry.yaml OS::TripleO::Services::ContainerImagePrepare: ../puppet/services/container-image-prepare.yaml diff --git a/extraconfig/pre_deploy/undercloud_pre.sh b/extraconfig/pre_deploy/undercloud_pre.sh new file mode 100644 index 0000000000..e5311d432c --- /dev/null +++ b/extraconfig/pre_deploy/undercloud_pre.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +# This needs to be run after os-net-config. since os-net-config potentially can +# restart network interfaces, which would affects VIPs controlled by +# keepalived. + +# TODO(hjensas): Remove this when we have keepalived 2.0.6 or later. +docker container restart keepalived || true diff --git a/extraconfig/pre_deploy/undercloud_pre.yaml b/extraconfig/pre_deploy/undercloud_pre.yaml new file mode 100644 index 0000000000..e63b48a53c --- /dev/null +++ b/extraconfig/pre_deploy/undercloud_pre.yaml @@ -0,0 +1,23 @@ +heat_template_version: rocky + +description: > + Pre-deployment for the TripleO undercloud + +parameters: + server: + type: string + +resources: + + UndercloudPreConfig: + type: OS::Heat::SoftwareConfig + properties: + group: script + config: {get_file: ./undercloud_pre.sh} + + UndercloudPreDeployment: + type: OS::Heat::SoftwareDeployment + properties: + name: UndercloudPreDeployment + server: {get_param: server} + config: {get_resource: UndercloudPreConfig} diff --git a/releasenotes/notes/fix-contiainer-underloud-keepalived-needs-restart-6d7efbb9788e0f95.yaml b/releasenotes/notes/fix-contiainer-underloud-keepalived-needs-restart-6d7efbb9788e0f95.yaml new file mode 100644 index 0000000000..050d1b53f1 --- /dev/null +++ b/releasenotes/notes/fix-contiainer-underloud-keepalived-needs-restart-6d7efbb9788e0f95.yaml @@ -0,0 +1,7 @@ +--- +fixes: + - | + An issue causing undercloud installer re-run (or update) to fail because + VIP's where lost in case the networking configuration was changed has been + fixed. See `Bug: 1791238 + `_.