Browse Source

Deprecate Keepalived service

We don't deploy Keepalived in multi-node as our HA story is done with
Pacemaker. Therefore, we don't use VRRP protocol that Keepalived
provides to maintain the VIPs alive, so we don't really need this
service.

Instead, we can configure the VIPs on the br-ctlplane interface which
already handled the local_ip. Now it also handles the configuration of
public ip and admin ip.

Keepalived is now deprecated and will be removed in the next cycle.

blueprint replace-keepalived-undercloud
Change-Id: I3192be07cb6c19d5e26cb4cddbe68213e7e48937
changes/67/657067/49
Emilien Macchi 2 years ago
parent
commit
c712355e4b
  1. 1
      ci/environments/scenario000-multinode-containers.yaml
  2. 1
      ci/environments/scenario000-standalone.yaml
  3. 1
      ci/environments/scenario004-standalone.yaml
  4. 1
      ci/environments/scenario010-standalone.yaml
  5. 4
      deployment/deprecated/keepalived/keepalived-container-puppet.yaml
  6. 3
      environments/docker-ha.yaml
  7. 1
      environments/nonha-arch.yaml
  8. 4
      environments/services/undercloud-keepalived.yaml
  9. 1
      environments/standalone/standalone-tripleo.yaml
  10. 1
      environments/undercloud.yaml
  11. 1
      environments/undercloud/undercloud-minion.yaml
  12. 26
      net-config-standalone.j2.yaml
  13. 26
      net-config-undercloud.j2.yaml
  14. 6
      releasenotes/notes/keepalived_deprecated-e0b20da2d51714b7.yaml
  15. 1
      roles/CellController.yaml
  16. 1
      roles/Controller.yaml
  17. 1
      roles/ControllerAllNovaStandalone.yaml
  18. 1
      roles/ControllerNoCeph.yaml
  19. 1
      roles/ControllerNovaStandalone.yaml
  20. 1
      roles/ControllerOpenstack.yaml
  21. 1
      roles/ControllerSriov.yaml
  22. 1
      roles/ControllerStorageDashboard.yaml
  23. 1
      roles/ControllerStorageNfs.yaml
  24. 1
      roles/Standalone.yaml
  25. 1
      roles/Undercloud.yaml
  26. 1
      roles_data.yaml
  27. 1
      roles_data_undercloud.yaml
  28. 3
      sample-env-generator/standalone.yaml
  29. 1
      sample-env-generator/undercloud-minion.yaml

1
ci/environments/scenario000-multinode-containers.yaml

@ -16,7 +16,6 @@ parameter_defaults:
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::OsloMessagingRpc
- OS::TripleO::Services::OsloMessagingNotify
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Memcached
- OS::TripleO::Services::Podman
- OS::TripleO::Services::Snmp

1
ci/environments/scenario000-standalone.yaml

@ -72,7 +72,6 @@ resource_registry:
OS::TripleO::Services::IronicNeutronAgent: OS::Heat::None
OS::TripleO::Services::IronicPxe: OS::Heat::None
OS::TripleO::Services::Iscsid: OS::Heat::None
OS::TripleO::Services::Keepalived: OS::Heat::None
# OS::TripleO::Services::Keystone: OS::Heat::None
OS::TripleO::Services::LiquidioCompute: OS::Heat::None
OS::TripleO::Services::Logging::BarbicanApi: OS::Heat::None

1
ci/environments/scenario004-standalone.yaml

@ -26,7 +26,6 @@ resource_registry:
OS::TripleO::Services::Clustercheck: ../../deployment/pacemaker/clustercheck-container-puppet.yaml
OS::TripleO::Services::MySQL: ../../deployment/database/mysql-pacemaker-puppet.yaml
OS::TripleO::Services::LoginDefs: ../../deployment/login-defs/login-defs-baremetal.yaml
OS::TripleO::Services::Keepalived: OS::Heat::None
# Some infra instances don't pass the ping test but are otherwise working.
# Since the OVB jobs also test this functionality we can shut it off here.
OS::TripleO::AllNodes::Validation: ../common/all-nodes-validation-disabled.yaml

1
ci/environments/scenario010-standalone.yaml

@ -3,7 +3,6 @@ resource_registry:
OS::TripleO::Services::CephMon: ../../deployment/ceph-ansible/ceph-mon.yaml
OS::TripleO::Services::CephOSD: ../../deployment/ceph-ansible/ceph-osd.yaml
OS::TripleO::Services::CephClient: ../../deployment/ceph-ansible/ceph-client.yaml
OS::TripleO::Services::Keepalived: OS::Heat::None
OS::TripleO::Services::OsloMessagingRpc: ../../deployment/rabbitmq/rabbitmq-messaging-rpc-pacemaker-puppet.yaml
OS::TripleO::Services::OsloMessagingNotify: ../../deployment/rabbitmq/rabbitmq-messaging-notify-shared-puppet.yaml
# Some infra instances don't pass the ping test but are otherwise working.

4
deployment/keepalived/keepalived-container-puppet.yaml → deployment/deprecated/keepalived/keepalived-container-puppet.yaml

@ -1,7 +1,7 @@
heat_template_version: rocky
description: >
OpenStack containerized Keepalived service
DEPRECATED - OpenStack containerized Keepalived service
parameters:
ContainerKeepalivedImage:
@ -76,7 +76,7 @@ conditions:
resources:
ContainersCommon:
type: ../containers-common.yaml
type: ../../containers-common.yaml
outputs:
role_data:

3
environments/docker-ha.yaml

@ -10,9 +10,6 @@ resource_registry:
OS::TripleO::Tasks::ControllerPreConfig: OS::Heat::None
OS::TripleO::Tasks::ControllerPostConfig: OS::Heat::None
# Services that are disabled for HA deployments with pacemaker
OS::TripleO::Services::Keepalived: OS::Heat::None
# HA Containers managed by pacemaker
OS::TripleO::Services::CinderVolume: ../deployment/cinder/cinder-volume-pacemaker-puppet.yaml
OS::TripleO::Services::Clustercheck: ../deployment/pacemaker/clustercheck-container-puppet.yaml

1
environments/nonha-arch.yaml

@ -6,6 +6,5 @@ resource_registry:
OS::TripleO::Services::HAproxy: ../deployment/haproxy/haproxy-container-puppet.yaml
OS::TripleO::Services::Redis: ../deployment/database/redis-container-puppet.yaml
OS::TripleO::Services::MySQL: ../deployment/database/mysql-container-puppet.yaml
OS::TripleO::Services::Keepalived: ../deployment/keepalived/keepalived-container-puppet.yaml
OS::TripleO::Services::Pacemaker: OS::Heat::None
OS::TripleO::Services::PacemakerRemote: OS::Heat::None

4
environments/services/undercloud-keepalived.yaml

@ -1,4 +1,4 @@
# DEPRECATED. This file will be removed in the Stein release as it is no longer
# DEPRECATED. This file will be removed in the U release as it is no longer
# needed
resource_registry:
OS::TripleO::Services::Keepalived: ../../deployment/keepalived/keepalived-container-puppet.yaml
OS::TripleO::Services::Keepalived: ../../deployment/deprecated/keepalived/keepalived-container-puppet.yaml

1
environments/standalone/standalone-tripleo.yaml

@ -90,7 +90,6 @@ resource_registry:
OS::TripleO::Services::IronicInspector: OS::Heat::None
OS::TripleO::Services::IronicNeutronAgent: OS::Heat::None
OS::TripleO::Services::IronicPxe: OS::Heat::None
OS::TripleO::Services::Keepalived: OS::Heat::None
OS::TripleO::Services::ManilaApi: OS::Heat::None
OS::TripleO::Services::ManilaBackendCephFs: OS::Heat::None
OS::TripleO::Services::ManilaBackendIsilon: OS::Heat::None

1
environments/undercloud.yaml

@ -64,7 +64,6 @@ resource_registry:
# Undercloud HA services
OS::TripleO::Services::HAproxy: OS::Heat::None
OS::TripleO::Services::Keepalived: OS::Heat::None
parameter_defaults:
# ensure we enable ip_forward before docker gets run

1
environments/undercloud/undercloud-minion.yaml

@ -101,7 +101,6 @@ resource_registry:
OS::TripleO::Services::IronicNeutronAgent: OS::Heat::None
OS::TripleO::Services::IronicPxe: OS::Heat::None
OS::TripleO::Services::Iscsid: OS::Heat::None
OS::TripleO::Services::Keepalived: OS::Heat::None
OS::TripleO::Services::Keystone: OS::Heat::None
OS::TripleO::Services::LiquidioCompute: OS::Heat::None
OS::TripleO::Services::Logging::BarbicanApi: OS::Heat::None

26
net-config-standalone.j2.yaml

@ -1,7 +1,8 @@
heat_template_version: rocky
description: >
Software Config to drive os-net-config for a simple bridge configured with a
static IP address for the ctlplane network.
static IP address for the ctlplane network with optionally the admin and
public IPs too.
parameters:
ControlPlaneIp:
default: ''
@ -81,11 +82,16 @@ parameters:
tripleoclient to provide an easy means to pass in custom net configs
for a standalone node.
type: json
DeployedServerPortMap:
default: {}
type: json
conditions:
standalone_net_config_override:
not:
equals: [{get_param: StandaloneNetConfigOverride}, {}]
control_virtual_ip_unset: {equals : [{get_param: [DeployedServerPortMap, 'control_virtual_ip', fixed_ips, 0, ip_address]}, '']}
public_virtual_ip_unset: {equals : [{get_param: [DeployedServerPortMap, 'public_virtual_ip', fixed_ips, 0, ip_address]}, '']}
resources:
OsNetConfigImpl:
@ -121,6 +127,24 @@ resources:
- /
- - get_param: ControlPlaneIp
- get_param: ControlPlaneSubnetCidr
-
if:
- control_virtual_ip_unset
- {}
- ip_netmask:
list_join:
- /
- - {get_param: [DeployedServerPortMap, 'control_virtual_ip', fixed_ips, 0, ip_address]}
- {str_split: ['/', {get_param: [DeployedServerPortMap, 'control_virtual_ip', subnets, 0, cidr]}, 1]}
-
if:
- public_virtual_ip_unset
- {}
- ip_netmask:
list_join:
- /
- - {get_param: [DeployedServerPortMap, 'public_virtual_ip', fixed_ips, 0, ip_address]}
- {str_split: ['/', {get_param: [DeployedServerPortMap, 'public_virtual_ip', subnets, 0, cidr]}, 1]}
routes: {get_param: ControlPlaneStaticRoutes}
members:
- type: interface

26
net-config-undercloud.j2.yaml

@ -1,7 +1,8 @@
heat_template_version: rocky
description: >
Software Config to drive os-net-config for a simple bridge configured with a
static IP address for the ctlplane network.
static IP address for the ctlplane network with optionally the admin and
public IPs too.
parameters:
ControlPlaneIp:
default: ''
@ -77,11 +78,16 @@ parameters:
default: {}
description: Custom JSON data to be used to override the os-net-config data in this template. This is meant to be used by net_config_override parameter in tripleoclient to provide an easy means to pass in custom net configs for the Undercloud.
type: json
DeployedServerPortMap:
default: {}
type: json
conditions:
undercloud_net_config_override:
not:
equals: [{get_param: UndercloudNetConfigOverride}, {}]
control_virtual_ip_unset: {equals : [{get_param: [DeployedServerPortMap, 'control_virtual_ip', fixed_ips, 0, ip_address]}, '']}
public_virtual_ip_unset: {equals : [{get_param: [DeployedServerPortMap, 'public_virtual_ip', fixed_ips, 0, ip_address]}, '']}
resources:
OsNetConfigImpl:
@ -116,6 +122,24 @@ resources:
- /
- - get_param: ControlPlaneIp
- get_param: ControlPlaneSubnetCidr
-
if:
- control_virtual_ip_unset
- {}
- ip_netmask:
list_join:
- /
- - {get_param: [DeployedServerPortMap, 'control_virtual_ip', fixed_ips, 0, ip_address]}
- {str_split: ['/', {get_param: [DeployedServerPortMap, 'control_virtual_ip', subnets, 0, cidr]}, 1]}
-
if:
- public_virtual_ip_unset
- {}
- ip_netmask:
list_join:
- /
- - {get_param: [DeployedServerPortMap, 'public_virtual_ip', fixed_ips, 0, ip_address]}
- {str_split: ['/', {get_param: [DeployedServerPortMap, 'public_virtual_ip', subnets, 0, cidr]}, 1]}
routes: {get_param: ControlPlaneStaticRoutes}
members:
- type: interface

6
releasenotes/notes/keepalived_deprecated-e0b20da2d51714b7.yaml

@ -0,0 +1,6 @@
---
deprecations:
- |
Keepalived service is deprecated in Train and will be removed in the next
cycle. The VIPs are now created by os-net-config for both the Undercloud
and Standalone. If you need HA VIPs, please deploy Pacemaker.

1
roles/CellController.yaml

@ -35,7 +35,6 @@
- OS::TripleO::Services::HAproxy
- OS::TripleO::Services::Ipsec
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::LoginDefs
- OS::TripleO::Services::MetricsQdr

1
roles/Controller.yaml

@ -101,7 +101,6 @@
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::IronicNeutronAgent
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

1
roles/ControllerAllNovaStandalone.yaml

@ -73,7 +73,6 @@
- OS::TripleO::Services::IronicInspector
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

1
roles/ControllerNoCeph.yaml

@ -93,7 +93,6 @@
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::IronicNeutronAgent
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

1
roles/ControllerNovaStandalone.yaml

@ -77,7 +77,6 @@
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::IronicNeutronAgent
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

1
roles/ControllerOpenstack.yaml

@ -78,7 +78,6 @@
- OS::TripleO::Services::IronicInspector
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

1
roles/ControllerSriov.yaml

@ -102,7 +102,6 @@
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::IronicNeutronAgent
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

1
roles/ControllerStorageDashboard.yaml

@ -102,7 +102,6 @@
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::IronicNeutronAgent
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

1
roles/ControllerStorageNfs.yaml

@ -103,7 +103,6 @@
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::IronicNeutronAgent
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

1
roles/Standalone.yaml

@ -96,7 +96,6 @@
- OS::TripleO::Services::IronicNeutronAgent
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

1
roles/Undercloud.yaml

@ -49,7 +49,6 @@
- OS::TripleO::Services::IronicNeutronAgent
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

1
roles_data.yaml

@ -104,7 +104,6 @@
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::IronicNeutronAgent
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

1
roles_data_undercloud.yaml

@ -52,7 +52,6 @@
- OS::TripleO::Services::IronicNeutronAgent
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::Iscsid
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::LoginDefs

3
sample-env-generator/standalone.yaml

@ -74,9 +74,6 @@ environments:
# Install tmpwatch
OS::TripleO::Services::Tmpwatch: ../../deployment/logrotate/tmpwatch-install.yaml
# Disable non-openstack services that are enabled by default
OS::TripleO::Services::Keepalived: OS::Heat::None
# Aodh
OS::TripleO::Services::AodhApi: OS::Heat::None
OS::TripleO::Services::AodhEvaluator: OS::Heat::None

1
sample-env-generator/undercloud-minion.yaml

@ -121,7 +121,6 @@ environments:
OS::TripleO::Services::IronicNeutronAgent: OS::Heat::None
OS::TripleO::Services::IronicPxe: OS::Heat::None
OS::TripleO::Services::Iscsid: OS::Heat::None
OS::TripleO::Services::Keepalived: OS::Heat::None
OS::TripleO::Services::Keystone: OS::Heat::None
OS::TripleO::Services::LiquidioCompute: OS::Heat::None
OS::TripleO::Services::Logging::BarbicanApi: OS::Heat::None

Loading…
Cancel
Save