Add port to rabbitmq node ip list

We use the rabbit_hosts configuration for most of our services but we
haven't been adding the configured port. This patch appends the IP port
used provided to the service's heat template to the IPs in the list.

Note: while we could use the value set for the rabbitmq server in
rabbitmq::port, it doesn't allow for dealing with SSL. This also is also
backwards compatible with the RabbitClientPort parameters used in the
heat templates.

Change-Id: I0000f039144a6b0e98c0a148dc69324f60db3d8b
Closes-Bug: #1633580
This commit is contained in:
Brent Eagles 2016-10-14 16:35:44 -02:30
parent b54e9c3a05
commit 597194a419
14 changed files with 77 additions and 17 deletions

View File

@ -31,11 +31,15 @@
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('aodh::rabbit_port', 5672)
class tripleo::profile::base::aodh (
$step = hiera('step'),
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('aodh::rabbit_port', 5672),
) {
if $::hostname == downcase($bootstrap_node) {
@ -46,7 +50,7 @@ class tripleo::profile::base::aodh (
if $step >= 4 or ($step >= 3 and $sync_db) {
class { '::aodh' :
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
include ::aodh::auth
include ::aodh::config

View File

@ -26,15 +26,20 @@
# [*rabbit_hosts*]
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('ceilometer::rabbit_port', 5672)
class tripleo::profile::base::ceilometer (
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('ceilometer::rabbit_port', 5672),
) {
if $step >= 3 {
class { '::ceilometer' :
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
include ::ceilometer::config
}

View File

@ -33,12 +33,17 @@
# [*rabbit_hosts*]
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('cinder::rabbit_port', 5672)
class tripleo::profile::base::cinder (
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$cinder_enable_db_purge = true,
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('cinder::rabbit_port', 5672),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
@ -48,7 +53,7 @@ class tripleo::profile::base::cinder (
if $step >= 4 or ($step >= 3 and $sync_db) {
class { '::cinder' :
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
include ::cinder::config
}

View File

@ -30,11 +30,16 @@
# [*rabbit_hosts*]
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('glance::notify::rabbitmq::rabbit_port', 5672)
class tripleo::profile::base::glance::api (
$glance_backend = downcase(hiera('glance_backend', 'swift')),
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('glance::notify::rabbitmq::rabbit_port', 5672),
) {
if $step >= 4 {
@ -53,8 +58,9 @@ class tripleo::profile::base::glance::api (
class { '::glance::api':
stores => $glance_store,
}
class { '::glance::notify::rabbitmq' :
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
include join(['::glance::backend::', $glance_backend])
}

View File

@ -38,6 +38,10 @@
# [*rabbit_hosts*]
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('heat::rabbit_port', 5672)
class tripleo::profile::base::heat (
$bootstrap_node = downcase(hiera('bootstrap_nodeid')),
@ -45,6 +49,7 @@ class tripleo::profile::base::heat (
$notification_driver = 'messaging',
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('heat::rabbit_port', 5672),
) {
# Domain resources will be created at step5 on the node running keystone.pp
# configure heat.conf at step3 and 4 but actually create the domain later.
@ -59,7 +64,7 @@ class tripleo::profile::base::heat (
if $step >= 4 {
class { '::heat' :
notification_driver => $notification_driver,
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
include ::heat::config
include ::heat::cors

View File

@ -29,11 +29,16 @@
# [*rabbit_hosts*]
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('ironic::rabbit_port', 5672)
class tripleo::profile::base::ironic (
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('ironic::rabbit_port', 5672),
) {
# Database is accessed by both API and conductor, hence it's here.
if $::hostname == downcase($bootstrap_node) {
@ -45,7 +50,7 @@ class tripleo::profile::base::ironic (
if $step >= 4 or ($step >= 3 and $sync_db) {
class { '::ironic':
sync_db => $sync_db,
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
include ::ironic::cors

View File

@ -34,12 +34,17 @@
# [*rabbit_hosts*]
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('keystone::rabbit_port', 5672)
class tripleo::profile::base::keystone (
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$manage_db_purge = hiera('keystone_enable_db_purge', true),
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('keystone::rabbit_port', 5672),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
@ -57,7 +62,7 @@ class tripleo::profile::base::keystone (
class { '::keystone':
sync_db => $sync_db,
enable_bootstrap => $sync_db,
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
include ::keystone::config

View File

@ -29,11 +29,16 @@
# [*rabbit_hosts*]
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('manila::rabbit_port', 5672)
class tripleo::profile::base::manila (
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('manila::rabbit_port', 5672),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
@ -43,7 +48,7 @@ class tripleo::profile::base::manila (
if $step >= 4 or ($step >= 3 and $sync_db) {
class { '::manila' :
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
include ::manila::config
}

View File

@ -30,11 +30,16 @@
# [*rabbit_hosts*]
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('mistral::rabbit_port', 5672)
class tripleo::profile::base::mistral (
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('mistral::rabbit_port', 5672),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
@ -44,7 +49,7 @@ class tripleo::profile::base::mistral (
if $step >= 4 or ($step >= 3 and $sync_db) {
class { '::mistral':
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
include ::mistral::config
include ::mistral::client

View File

@ -25,14 +25,19 @@
# [*rabbit_hosts*]
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('neutron::rabbit_port', 5672
class tripleo::profile::base::neutron (
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('neutron::rabbit_port', 5672),
) {
if $step >= 3 {
class { '::neutron' :
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
include ::neutron::config
}

View File

@ -41,6 +41,10 @@
# [*rabbit_hosts*]
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('nova::rabbit_port', 5672)
class tripleo::profile::base::nova (
$bootstrap_node = hiera('bootstrap_nodeid', undef),
@ -49,6 +53,7 @@ class tripleo::profile::base::nova (
$nova_compute_enabled = false,
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('nova::rabbit_port', 5672),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
@ -64,7 +69,7 @@ class tripleo::profile::base::nova (
if hiera('step') >= 4 or (hiera('step') >= 3 and $sync_db) {
class { '::nova' :
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
include ::nova::config
class { '::nova::cache':

View File

@ -29,11 +29,16 @@
# [*rabbit_hosts*]
# list of the rabbbit host IPs
# Defaults to hiera('rabbitmq_node_ips')
#
# [*rabbit_port*]
# IP port for rabbitmq service
# Defaults to hiera('sahara::rabbit_port', 5672)
class tripleo::profile::base::sahara (
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
$rabbit_hosts = hiera('rabbitmq_node_ips', undef),
$rabbit_port = hiera('sahara::rabbit_port', 5672),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
@ -44,7 +49,7 @@ class tripleo::profile::base::sahara (
if $step >= 4 or ($step >= 3 and $sync_db){
class { '::sahara':
sync_db => $sync_db,
rabbit_hosts => $rabbit_hosts,
rabbit_hosts => suffix($rabbit_hosts, ":${rabbit_port}")
}
}
}

View File

@ -39,7 +39,7 @@ describe 'tripleo::profile::base::aodh' do
it 'should trigger complete configuration' do
is_expected.to contain_class('aodh').with(
:rabbit_hosts => params[:rabbit_hosts]
:rabbit_hosts => params[:rabbit_hosts].map { |h| h + ":5672" }
)
is_expected.to contain_class('aodh::auth')
is_expected.to contain_class('aodh::config')
@ -72,7 +72,7 @@ describe 'tripleo::profile::base::aodh' do
it 'should trigger aodh configuration without mysql grant' do
is_expected.to contain_class('aodh').with(
:rabbit_hosts => params[:rabbit_hosts]
:rabbit_hosts => params[:rabbit_hosts].map { |h| h + ":5672" }
)
is_expected.to contain_class('aodh::auth')
is_expected.to contain_class('aodh::config')

View File

@ -35,7 +35,7 @@ describe 'tripleo::profile::base::ceilometer' do
it 'should trigger complete configuration' do
is_expected.to contain_class('ceilometer').with(
:rabbit_hosts => params[:rabbit_hosts]
:rabbit_hosts => params[:rabbit_hosts].map{ |h| h + ':5672' }
)
is_expected.to contain_class('ceilometer::config')
end