From db7d01d34c0513c5847a35a71ad2fe4ec87f4197 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Tue, 14 Dec 2021 00:43:19 +0900 Subject: [PATCH] Configure and Start RabbitMQ before starting OpenStack services RabbitMQ should be up and confugred before starting OpenStack services. This change introduces ordering constraints so that all OpenStack services are started after RabbitMQ is configured and started. Also, a change in puppet-placement [1] has changed the default url for placement service. This patch is also updating the keystone endpoint for placement to align with this new default. [1] https://review.opendev.org/c/openstack/puppet-placement/+/819052 Change-Id: I9ad973e900ccd30e41c2166515f564eed49e2a90 --- packstack/puppet/modules/packstack/manifests/aodh/rabbitmq.pp | 1 + .../puppet/modules/packstack/manifests/ceilometer/rabbitmq.pp | 1 + .../puppet/modules/packstack/manifests/cinder/rabbitmq.pp | 3 ++- .../puppet/modules/packstack/manifests/glance/ceilometer.pp | 2 ++ packstack/puppet/modules/packstack/manifests/heat/rabbitmq.pp | 1 + .../puppet/modules/packstack/manifests/ironic/rabbitmq.pp | 1 + .../puppet/modules/packstack/manifests/keystone/placement.pp | 2 +- .../puppet/modules/packstack/manifests/magnum/rabbitmq.pp | 1 + .../puppet/modules/packstack/manifests/manila/rabbitmq.pp | 1 + .../puppet/modules/packstack/manifests/neutron/rabbitmq.pp | 1 + packstack/puppet/modules/packstack/manifests/nova.pp | 1 + .../modules/packstack/manifests/nova/ceilometer/rabbitmq.pp | 1 + .../puppet/modules/packstack/manifests/sahara/rabbitmq.pp | 1 + .../puppet/modules/packstack/manifests/swift/ceilometer.pp | 2 ++ packstack/puppet/modules/packstack/manifests/trove/rabbitmq.pp | 2 +- 15 files changed, 18 insertions(+), 3 deletions(-) diff --git a/packstack/puppet/modules/packstack/manifests/aodh/rabbitmq.pp b/packstack/puppet/modules/packstack/manifests/aodh/rabbitmq.pp index b9e96d750..f6b7e5bb2 100644 --- a/packstack/puppet/modules/packstack/manifests/aodh/rabbitmq.pp +++ b/packstack/puppet/modules/packstack/manifests/aodh/rabbitmq.pp @@ -22,6 +22,7 @@ class packstack::aodh::rabbitmq () } File[$files_to_set_owner] ~> Service<| tag == 'aodh-service' |> } + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'aodh-service' |> class { 'aodh::logging': debug => hiera('CONFIG_DEBUG_MODE'), diff --git a/packstack/puppet/modules/packstack/manifests/ceilometer/rabbitmq.pp b/packstack/puppet/modules/packstack/manifests/ceilometer/rabbitmq.pp index 79e0d0475..b1f90b3f1 100644 --- a/packstack/puppet/modules/packstack/manifests/ceilometer/rabbitmq.pp +++ b/packstack/puppet/modules/packstack/manifests/ceilometer/rabbitmq.pp @@ -18,6 +18,7 @@ class packstack::ceilometer::rabbitmq () } File[$files_to_set_owner] ~> Service<| tag == 'ceilometer-service' |> } + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'ceilometer-service' |> class { 'ceilometer::logging': debug => hiera('CONFIG_DEBUG_MODE'), diff --git a/packstack/puppet/modules/packstack/manifests/cinder/rabbitmq.pp b/packstack/puppet/modules/packstack/manifests/cinder/rabbitmq.pp index 0e91fdb5d..b85f09396 100644 --- a/packstack/puppet/modules/packstack/manifests/cinder/rabbitmq.pp +++ b/packstack/puppet/modules/packstack/manifests/cinder/rabbitmq.pp @@ -18,9 +18,10 @@ class packstack::cinder::rabbitmq () owner => 'cinder', group => 'cinder', require => Class['cinder'], - notify => Service['cinder-api'], } + File[$files_to_set_owner] ~> Service<| tag == 'cinder-service' |> } + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'cinder-service' |> class { 'cinder::logging': debug => hiera('CONFIG_DEBUG_MODE'), diff --git a/packstack/puppet/modules/packstack/manifests/glance/ceilometer.pp b/packstack/puppet/modules/packstack/manifests/glance/ceilometer.pp index 43d5259b3..8f97a1dc3 100644 --- a/packstack/puppet/modules/packstack/manifests/glance/ceilometer.pp +++ b/packstack/puppet/modules/packstack/manifests/glance/ceilometer.pp @@ -18,6 +18,8 @@ class packstack::glance::ceilometer () notify => Service['glance-api'], } } + Service<| name == 'rabbitmq-server' |> -> Service['glance-api'] + class { 'glance::notify::rabbitmq': rabbit_notification_exchange => 'glance', rabbit_notification_topic => 'notifications', diff --git a/packstack/puppet/modules/packstack/manifests/heat/rabbitmq.pp b/packstack/puppet/modules/packstack/manifests/heat/rabbitmq.pp index dd2435124..07e68b846 100644 --- a/packstack/puppet/modules/packstack/manifests/heat/rabbitmq.pp +++ b/packstack/puppet/modules/packstack/manifests/heat/rabbitmq.pp @@ -21,6 +21,7 @@ class packstack::heat::rabbitmq () } File[$files_to_set_owner] ~> Service<| tag == 'heat-service' |> } + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'heat-service' |> if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' { $heat_notification_driver = 'messagingv2' diff --git a/packstack/puppet/modules/packstack/manifests/ironic/rabbitmq.pp b/packstack/puppet/modules/packstack/manifests/ironic/rabbitmq.pp index 9a075cb61..45bd74031 100644 --- a/packstack/puppet/modules/packstack/manifests/ironic/rabbitmq.pp +++ b/packstack/puppet/modules/packstack/manifests/ironic/rabbitmq.pp @@ -21,6 +21,7 @@ class packstack::ironic::rabbitmq () } File[$files_to_set_owner] ~> Service<| tag == 'ironic-service' |> } + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'ironic-service' |> class { 'ironic::logging': debug => true, diff --git a/packstack/puppet/modules/packstack/manifests/keystone/placement.pp b/packstack/puppet/modules/packstack/manifests/keystone/placement.pp index 9e8b24e39..defe62dc0 100644 --- a/packstack/puppet/modules/packstack/manifests/keystone/placement.pp +++ b/packstack/puppet/modules/packstack/manifests/keystone/placement.pp @@ -3,7 +3,7 @@ class packstack::keystone::placement () $placement_protocol = 'http' $placement_host = hiera('CONFIG_KEYSTONE_HOST_URL') $placement_port = '8778' - $placement_url = "${placement_protocol}://${placement_host}:${placement_port}/placement" + $placement_url = "${placement_protocol}://${placement_host}:${placement_port}" class { 'placement::keystone::authtoken': password => hiera('CONFIG_NOVA_KS_PW'), diff --git a/packstack/puppet/modules/packstack/manifests/magnum/rabbitmq.pp b/packstack/puppet/modules/packstack/manifests/magnum/rabbitmq.pp index 3cb183efa..81be1d254 100755 --- a/packstack/puppet/modules/packstack/manifests/magnum/rabbitmq.pp +++ b/packstack/puppet/modules/packstack/manifests/magnum/rabbitmq.pp @@ -18,6 +18,7 @@ class packstack::magnum::rabbitmq () } File[$files_to_set_owner] ~> Service<| tag == 'magnum-service' |> } + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'magnum-service' |> class { 'magnum': rabbit_use_ssl => hiera('CONFIG_AMQP_SSL_ENABLED'), diff --git a/packstack/puppet/modules/packstack/manifests/manila/rabbitmq.pp b/packstack/puppet/modules/packstack/manifests/manila/rabbitmq.pp index d673d586c..a8eeca39c 100644 --- a/packstack/puppet/modules/packstack/manifests/manila/rabbitmq.pp +++ b/packstack/puppet/modules/packstack/manifests/manila/rabbitmq.pp @@ -19,6 +19,7 @@ class packstack::manila::rabbitmq () } File[$files_to_set_owner] ~> Service<| tag == 'manila-service' |> } + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'manila-service' |> $db_pw = hiera('CONFIG_MANILA_DB_PW') $mariadb_host = hiera('CONFIG_MARIADB_HOST_URL') diff --git a/packstack/puppet/modules/packstack/manifests/neutron/rabbitmq.pp b/packstack/puppet/modules/packstack/manifests/neutron/rabbitmq.pp index 898df34b0..2a65dab6e 100644 --- a/packstack/puppet/modules/packstack/manifests/neutron/rabbitmq.pp +++ b/packstack/puppet/modules/packstack/manifests/neutron/rabbitmq.pp @@ -24,6 +24,7 @@ class packstack::neutron::rabbitmq () } File[$files_to_set_owner] ~> Service<| tag == 'neutron-service' |> } + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'neutron-service' |> class { 'neutron::logging': debug => hiera('CONFIG_DEBUG_MODE'), diff --git a/packstack/puppet/modules/packstack/manifests/nova.pp b/packstack/puppet/modules/packstack/manifests/nova.pp index f6302af4a..078d683aa 100644 --- a/packstack/puppet/modules/packstack/manifests/nova.pp +++ b/packstack/puppet/modules/packstack/manifests/nova.pp @@ -31,6 +31,7 @@ class packstack::nova () } File[$files_to_set_owner] ~> Service<| tag == 'nova-service' |> } + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'nova-service' |> if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' { $nova_common_notification_driver = 'messagingv2' diff --git a/packstack/puppet/modules/packstack/manifests/nova/ceilometer/rabbitmq.pp b/packstack/puppet/modules/packstack/manifests/nova/ceilometer/rabbitmq.pp index 16dd5478c..88280bd5b 100644 --- a/packstack/puppet/modules/packstack/manifests/nova/ceilometer/rabbitmq.pp +++ b/packstack/puppet/modules/packstack/manifests/nova/ceilometer/rabbitmq.pp @@ -18,6 +18,7 @@ class packstack::nova::ceilometer::rabbitmq () } File[$ceilometer_files_to_set_owner] ~> Service<| tag == 'ceilometer-service' |> } + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'ceilometer-service' |> class { 'ceilometer::logging': debug => hiera('CONFIG_DEBUG_MODE'), diff --git a/packstack/puppet/modules/packstack/manifests/sahara/rabbitmq.pp b/packstack/puppet/modules/packstack/manifests/sahara/rabbitmq.pp index a698295a8..b13dfdc41 100644 --- a/packstack/puppet/modules/packstack/manifests/sahara/rabbitmq.pp +++ b/packstack/puppet/modules/packstack/manifests/sahara/rabbitmq.pp @@ -21,6 +21,7 @@ class packstack::sahara::rabbitmq () } File[$files_to_set_owner] ~> Service<| tag == 'sahara-service' |> } + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'sahara-service' |> class { 'sahara::keystone::authtoken': username => 'sahara', diff --git a/packstack/puppet/modules/packstack/manifests/swift/ceilometer.pp b/packstack/puppet/modules/packstack/manifests/swift/ceilometer.pp index 0b096e637..ef96d1727 100644 --- a/packstack/puppet/modules/packstack/manifests/swift/ceilometer.pp +++ b/packstack/puppet/modules/packstack/manifests/swift/ceilometer.pp @@ -5,6 +5,8 @@ class packstack::swift::ceilometer () $rabbit_userid = hiera('CONFIG_AMQP_AUTH_USER') $rabbit_password = hiera('CONFIG_AMQP_AUTH_PASSWORD') + Service<| name == 'rabbitmq-server' |> -> Service['swift-proxy-server'] + class { 'swift::proxy::ceilometer': default_transport_url => "rabbit://${rabbit_userid}:${rabbit_password}@${rabbit_host}:${rabbit_port}/", topic => 'notifications', diff --git a/packstack/puppet/modules/packstack/manifests/trove/rabbitmq.pp b/packstack/puppet/modules/packstack/manifests/trove/rabbitmq.pp index b3f232ee1..48c39d235 100644 --- a/packstack/puppet/modules/packstack/manifests/trove/rabbitmq.pp +++ b/packstack/puppet/modules/packstack/manifests/trove/rabbitmq.pp @@ -22,7 +22,7 @@ class packstack::trove::rabbitmq () Package<|tag=='trove'|> -> File[$files_to_set_owner] File[$files_to_set_owner] ~> Service<| tag == 'trove-service' |> } - + Service<| name == 'rabbitmq-server' |> -> Service<| tag == 'trove-service' |> class { 'trove': rabbit_use_ssl => hiera('CONFIG_AMQP_SSL_ENABLED'),