From 73459635314fda4bdb383ff8173ac834f1dd9206 Mon Sep 17 00:00:00 2001 From: Emilien Macchi Date: Mon, 10 Dec 2018 14:43:47 -0500 Subject: [PATCH] Flatten Keepalived service configuration This change combines the previous puppet and docker files into a single file that performs the docker service installation and configuration. With this patch the baremetal version of keepalived service have been removed. Change-Id: Ic0ddf1174e1d0a62f83f26f0ca6bc29ec7b078b7 Related-Blueprint: services-yaml-flattening --- .../keepalived-container-puppet.yaml | 60 +++++++++---- environments/openshift.yaml | 2 +- .../undercloud-keepalived.yaml | 2 - .../services/undercloud-keepalived.yaml | 2 +- overcloud-resource-registry-puppet.j2.yaml | 2 +- puppet/services/keepalived.yaml | 86 ------------------- ...baremetal-keepalived-c48cde2007b372a4.yaml | 4 + 7 files changed, 49 insertions(+), 109 deletions(-) rename docker/services/keepalived.yaml => deployment/keepalived/keepalived-container-puppet.yaml (73%) delete mode 100644 environments/services-baremetal/undercloud-keepalived.yaml delete mode 100644 puppet/services/keepalived.yaml create mode 100644 releasenotes/notes/drop-baremetal-keepalived-c48cde2007b372a4.yaml diff --git a/docker/services/keepalived.yaml b/deployment/keepalived/keepalived-container-puppet.yaml similarity index 73% rename from docker/services/keepalived.yaml rename to deployment/keepalived/keepalived-container-puppet.yaml index 2c2266c364..182a240a88 100644 --- a/docker/services/keepalived.yaml +++ b/deployment/keepalived/keepalived-container-puppet.yaml @@ -46,37 +46,61 @@ parameters: default: false description: Whether or not restart Keepalived. Useful for Undercloud only. type: boolean + ControlVirtualInterface: + default: '' + description: > + Interface where virtual ip will be assigned. This value will be + automatically set by the deployment tool. Overriding here will + override automatic setting. + type: string + PublicVirtualInterface: + default: '' + description: > + Interface where virtual ip will be assigned. This value will be + automatically set by the deployment tool. Overriding here will + override automatic setting. + type: string + MonitoringSubscriptionKeepalived: + default: 'overcloud-keepalived' + type: string + +conditions: + control_iface_empty: {equals : [{get_param: ControlVirtualInterface}, '']} + public_iface_empty: {equals : [{get_param: PublicVirtualInterface}, '']} resources: - ContainersCommon: - type: ./containers-common.yaml - - KeepalivedBase: - type: ../../puppet/services/keepalived.yaml - properties: - EndpointMap: {get_param: EndpointMap} - ServiceData: {get_param: ServiceData} - ServiceNetMap: {get_param: ServiceNetMap} - DefaultPasswords: {get_param: DefaultPasswords} - RoleName: {get_param: RoleName} - RoleParameters: {get_param: RoleParameters} + type: ../../docker/services/containers-common.yaml outputs: role_data: - description: Role data for the Keepalived API role. + description: Role data for the Keepalived role. value: - service_name: {get_attr: [KeepalivedBase, role_data, service_name]} + service_name: keepalived + monitoring_subscription: {get_param: MonitoringSubscriptionKeepalived} config_settings: map_merge: - - get_attr: [KeepalivedBase, role_data, config_settings] - - tripleo::keepalived:custom_vrrp_script: 'test -S /var/lib/haproxy/stats && echo "show info" | socat /var/lib/haproxy/stats stdio' - service_config_settings: {get_attr: [KeepalivedBase, role_data, service_config_settings]} + - tripleo::keepalived:custom_vrrp_script: 'test -S /var/lib/haproxy/stats && echo "show info" | socat /var/lib/haproxy/stats stdio' + - tripleo::keepalived::firewall_rules: + '106 keepalived vrrp': + proto: vrrp + - + if: + - control_iface_empty + - {} + - tripleo::keepalived::control_virtual_interface: {get_param: ControlVirtualInterface} + - + if: + - public_iface_empty + - {} + - tripleo::keepalived::public_virtual_interface: {get_param: PublicVirtualInterface} + service_config_settings: {} # BEGIN DOCKER SETTINGS puppet_config: config_volume: 'keepalived' puppet_tags: 'file' - step_config: {get_attr: [KeepalivedBase, role_data, step_config]} + step_config: | + include ::tripleo::profile::base::keepalived config_image: {get_param: DockerKeepalivedConfigImage} kolla_config: /var/lib/kolla/config_files/keepalived.json: diff --git a/environments/openshift.yaml b/environments/openshift.yaml index 7942ea8df7..54722e3f1a 100644 --- a/environments/openshift.yaml +++ b/environments/openshift.yaml @@ -1,7 +1,7 @@ resource_registry: OS::TripleO::Services::Docker: ../puppet/services/docker.yaml OS::TripleO::Services::HAproxy: ../docker/services/haproxy.yaml - OS::TripleO::Services::Keepalived: ../docker/services/keepalived.yaml + OS::TripleO::Services::Keepalived: ../deployment/keepalived/keepalived-container-puppet.yaml OS::TripleO::Services::OpenShift::Infra: ../extraconfig/services/openshift-infra.yaml OS::TripleO::Services::OpenShift::Master: ../extraconfig/services/openshift-master.yaml OS::TripleO::Services::OpenShift::Worker: ../extraconfig/services/openshift-worker.yaml diff --git a/environments/services-baremetal/undercloud-keepalived.yaml b/environments/services-baremetal/undercloud-keepalived.yaml deleted file mode 100644 index 5c2baf61ed..0000000000 --- a/environments/services-baremetal/undercloud-keepalived.yaml +++ /dev/null @@ -1,2 +0,0 @@ -resource_registry: - OS::TripleO::Services::UndercloudKeepalived: ../../puppet/services/keepalived.yaml diff --git a/environments/services/undercloud-keepalived.yaml b/environments/services/undercloud-keepalived.yaml index 5bafe0027d..6d25b90410 100644 --- a/environments/services/undercloud-keepalived.yaml +++ b/environments/services/undercloud-keepalived.yaml @@ -1,4 +1,4 @@ # DEPRECATED. This file will be removed in the Stein release as it is no longer # needed resource_registry: - OS::TripleO::Services::Keepalived: ../../docker/services/keepalived.yaml + OS::TripleO::Services::Keepalived: ../../deployment/keepalived/keepalived-container-puppet.yaml diff --git a/overcloud-resource-registry-puppet.j2.yaml b/overcloud-resource-registry-puppet.j2.yaml index 46022ef6e2..e03c2e759a 100644 --- a/overcloud-resource-registry-puppet.j2.yaml +++ b/overcloud-resource-registry-puppet.j2.yaml @@ -181,7 +181,7 @@ resource_registry: OS::TripleO::Services::HAProxyPublicTLS: puppet/services/haproxy-public-tls-inject.yaml OS::TripleO::Services::HAProxyInternalTLS: OS::Heat::None OS::TripleO::Services::Iscsid: docker/services/iscsid.yaml - OS::TripleO::Services::Keepalived: docker/services/keepalived.yaml + OS::TripleO::Services::Keepalived: deployment/keepalived/keepalived-container-puppet.yaml OS::TripleO::Services::Memcached: docker/services/memcached.yaml OS::TripleO::Services::SaharaApi: OS::Heat::None OS::TripleO::Services::SaharaEngine: OS::Heat::None diff --git a/puppet/services/keepalived.yaml b/puppet/services/keepalived.yaml deleted file mode 100644 index 885121d258..0000000000 --- a/puppet/services/keepalived.yaml +++ /dev/null @@ -1,86 +0,0 @@ -heat_template_version: rocky - -description: > - Keepalived service configured with Puppet - -parameters: - ServiceData: - default: {} - description: Dictionary packing service data - type: json - ServiceNetMap: - default: {} - description: Mapping of service_name -> network name. Typically set - via parameter_defaults in the resource registry. This - mapping overrides those in ServiceNetMapDefaults. - type: json - DefaultPasswords: - default: {} - type: json - RoleName: - default: '' - description: Role name on which the service is applied - type: string - RoleParameters: - default: {} - description: Parameters specific to the role - type: json - EndpointMap: - default: {} - description: Mapping of service endpoint -> protocol. Typically set - via parameter_defaults in the resource registry. - type: json - ControlVirtualInterface: - default: '' - description: > - Interface where virtual ip will be assigned. This value will be - automatically set by the deployment tool. Overriding here will - override automatic setting. - type: string - PublicVirtualInterface: - default: '' - description: > - Interface where virtual ip will be assigned. This value will be - automatically set by the deployment tool. Overriding here will - override automatic setting. - type: string - MonitoringSubscriptionKeepalived: - default: 'overcloud-keepalived' - type: string - -conditions: - - control_iface_empty: {equals : [{get_param: ControlVirtualInterface}, '']} - public_iface_empty: {equals : [{get_param: PublicVirtualInterface}, '']} - -outputs: - role_data: - description: Role data for the Keepalived role. - value: - service_name: keepalived - monitoring_subscription: {get_param: MonitoringSubscriptionKeepalived} - config_settings: - map_merge: - - tripleo::keepalived::firewall_rules: - '106 keepalived vrrp': - proto: vrrp - - - if: - - control_iface_empty - - {} - - tripleo::keepalived::control_virtual_interface: {get_param: ControlVirtualInterface} - - - if: - - public_iface_empty - - {} - - tripleo::keepalived::public_virtual_interface: {get_param: PublicVirtualInterface} - step_config: | - include ::tripleo::profile::base::keepalived - upgrade_tasks: - - name: Stop keepalived service - when: step|int == 1 - service: name=keepalived state=stopped - - name: Start keepalived service - when: step|int == 4 # Needed at step 4 for mysql - service: name=keepalived state=started - diff --git a/releasenotes/notes/drop-baremetal-keepalived-c48cde2007b372a4.yaml b/releasenotes/notes/drop-baremetal-keepalived-c48cde2007b372a4.yaml new file mode 100644 index 0000000000..79667f3d99 --- /dev/null +++ b/releasenotes/notes/drop-baremetal-keepalived-c48cde2007b372a4.yaml @@ -0,0 +1,4 @@ +--- +upgrade: + - | + Installing Keepalived service on baremetal is no longer supported.