Merge "Make ::tripleo::profile::base classes work with multiple nodes"

This commit is contained in:
Jenkins 2016-07-20 13:13:56 +00:00 committed by Gerrit Code Review
commit dfa0db9c7f
29 changed files with 217 additions and 185 deletions

View File

@ -18,20 +18,24 @@
#
# === Parameters
#
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
# [*sync_db*]
# (Optional) Whether to run db sync
# Defaults to true
#
class tripleo::profile::base::ceilometer::collector (
$step = hiera('step'),
$sync_db = true,
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
$ceilometer_backend = downcase(hiera('ceilometer_backend', 'mongodb'))
# MongoDB

View File

@ -18,19 +18,24 @@
#
# === Parameters
#
# [*sync_db*]
# (Optional) Whether to run db sync
# Defaults to true
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
class tripleo::profile::base::cinder::api (
$sync_db = true,
$step = hiera('step'),
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
class { '::tripleo::profile::base::cinder':
pacemaker_master => $sync_db,

View File

@ -18,9 +18,9 @@
#
# === Parameters
#
# [*sync_db*]
# (Optional) Whether to run db sync
# Defaults to true
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
@ -30,12 +30,17 @@
# [*glance_backend*]
# (Optional) Glance backend(s) to use.
# Defaults to downcase(hiera('glance_backend', 'swift'))
#
class tripleo::profile::base::glance::registry (
$sync_db = true,
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
$glance_backend = downcase(hiera('glance_backend', 'swift')),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
if $step >= 3 and $sync_db {
include ::glance::db::mysql

View File

@ -22,20 +22,25 @@
# (Optional) Gnocchi backend string file, swift or rbd
# Defaults to swift
#
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
# [*sync_db*]
# (Optional) Whether to run db sync
# Defaults to undef
class tripleo::profile::base::gnocchi::api (
$gnocchi_backend = downcase(hiera('gnocchi_backend', 'swift')),
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
$sync_db = true,
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
include ::tripleo::profile::base::gnocchi

View File

@ -18,19 +18,24 @@
#
# === Parameters
#
# [*sync_db*]
# (Optional) Whether to run db sync
# Defaults to undef
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
class tripleo::profile::base::heat::engine (
$sync_db = true,
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
if $step >= 3 and $sync_db {
include ::heat::db::mysql

View File

@ -18,18 +18,23 @@
#
# === Parameters
#
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step of the deployment
# Defaults to hiera('step')
#
# [*sync_db*]
# (Optional) Whether to run db sync
# Defaults to true
#
class tripleo::profile::base::ironic (
$step = hiera('step'),
$sync_db = true,
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
if $step >= 3 {
include ::ironic

View File

@ -18,34 +18,33 @@
#
# === Parameters
#
# [*sync_db*]
# (Optional) Whether to run db sync
# Defaults to true
#
# [*manage_roles*]
# (Optional) whether to create keystone admin role
# Defaults to true
#
# [*manage_endpoint*]
# (Optional) Whether to create keystone endpoints
# Defaults to true
#
# [*manage_db_purge*]
# (Optional) Whether keystone token flushing should be enabled
# Defaults to hiera('keystone_enable_db_purge', true)
#
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
class tripleo::profile::base::keystone (
$sync_db = true,
$manage_roles = true,
$manage_endpoint = true,
$manage_db_purge = hiera('keystone_enable_db_purge', true),
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
$manage_roles = true
$manage_endpoint = true
} else {
$sync_db = false
$manage_roles = false
$manage_endpoint = false
}
if $step >= 3 and $sync_db {
include ::keystone::db::mysql

View File

@ -18,19 +18,24 @@
#
# === Parameters
#
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
# [*sync_db*]
# (Optiona) Whether to run db sync.
# Defaults to true.
#
class tripleo::profile::base::manila::scheduler (
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
$sync_db = true,
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
if $step >= 3 and $sync_db {
include ::manila::db::mysql

View File

@ -23,9 +23,9 @@
# Defaults to hiera('step')
#
class tripleo::profile::base::neutron (
$step = hiera('step'),
$step = hiera('step'),
) {
if hiera('step') >= 3 {
if $step >= 3 {
include ::neutron
include ::neutron::config
}

View File

@ -22,20 +22,25 @@
# (Optional) The mechanism drivers to use with the Ml2 plugin
# Defaults to hiera('neutron::plugins::ml2::mechanism_drivers')
#
# [*sync_db*]
# (Optional) Whether to run Neutron DB sync operations
# Defaults to undef
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
class tripleo::profile::base::neutron::plugins::ml2 (
$mechanism_drivers = hiera('neutron::plugins::ml2::mechanism_drivers'),
$sync_db = true,
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
include ::tripleo::profile::base::neutron

View File

@ -16,19 +16,24 @@
#
# Nuage Neutron profile for tripleo
#
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
# [*sync_db*]
# (Optional) Whether to run Neutron DB sync operations
# Defaults to undef
#
class tripleo::profile::base::neutron::plugins::nuage (
$step = hiera('step'),
$sync_db = true,
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
include ::tripleo::profile::base::neutron

View File

@ -16,19 +16,24 @@
#
# Opencontrail Neutron profile for tripleo
#
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
# [*sync_db*]
# (Optional) Whether to run Neutron DB sync operations
# Defaults to undef
#
class tripleo::profile::base::neutron::plugins::opencontrail (
$step = hiera('step'),
$sync_db = true,
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
include ::tripleo::profile::base::neutron

View File

@ -18,19 +18,24 @@
#
# === Parameters
#
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
# [*sync_db*]
# (Optional) Whether to run Neutron DB sync operations
# Defaults to undef
#
class tripleo::profile::base::neutron::plugins::plumgrid (
$step = hiera('step'),
$sync_db = true,
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
include ::tripleo::profile::base::neutron

View File

@ -18,24 +18,46 @@
#
# === Parameters
#
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
class tripleo::profile::base::neutron::server (
$step = hiera('step'),
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
include ::tripleo::profile::base::neutron
if $step >= 3 {
if $step >= 3 and $sync_db {
include ::neutron::db::mysql
}
if $step >= 4 {
# We start neutron-server on the bootstrap node first, because
# it will try to populate tables and we need to make sure this happens
# before it starts on other nodes
if $step >= 4 and $sync_db {
include ::neutron::server::notifications
include ::neutron::server
# We need to override the hiera value neutron::server::sync_db which is set
# to true
class { '::neutron::server':
sync_db => $sync_db,
}
}
if $step >= 5 and !$sync_db {
include ::neutron::server::notifications
class { '::neutron::server':
sync_db => $sync_db,
}
}
}

View File

@ -16,21 +16,24 @@
#
# Nova API profile for tripleo
#
# === Parameters
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
# [*sync_db*]
# (Optional) Whether to run db sync
# Defaults to true
#
class tripleo::profile::base::nova::api (
$step = hiera('step'),
$sync_db = true,
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
include ::tripleo::profile::base::nova

View File

@ -18,19 +18,25 @@
#
# === Parameters
#
# [*sync_db*]
# (Optional) Whether to run db sync
# Defaults to true
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
class tripleo::profile::base::sahara::engine (
$sync_db = true,
$step = hiera('step'),
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
if $step >= 3 and $sync_db {
include ::sahara::db::mysql
}

View File

@ -18,19 +18,24 @@
#
# === Parameters
#
# [*sync_db*]
# (Optional) Whether to run db sync
# Defaults to true
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
class tripleo::profile::base::trove::api (
$sync_db = true,
$step = hiera('step'),
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
if $step >= 3 and $sync_db {
include ::trove::db::mysql

View File

@ -40,9 +40,7 @@ class tripleo::profile::pacemaker::ceilometer::collector (
include ::ceilometer::params
include ::tripleo::profile::pacemaker::ceilometer
class { '::tripleo::profile::base::ceilometer::collector':
sync_db => (downcase($::hostname) == $pacemaker_master),
}
include ::tripleo::profile::base::ceilometer::collector
if $step >= 5 and downcase($::hostname) == $pacemaker_master {
$ceilometer_backend = downcase(hiera('ceilometer_backend', 'mongodb'))

View File

@ -45,9 +45,7 @@ class tripleo::profile::pacemaker::cinder::api (
$pacemaker_master = false
}
class { '::tripleo::profile::base::cinder::api':
sync_db => $pacemaker_master,
}
include ::tripleo::profile::base::cinder::api
if $step >= 5 and $pacemaker_master {
pacemaker::resource::service { $::cinder::params::api_service :

View File

@ -76,9 +76,7 @@ class tripleo::profile::pacemaker::glance (
}
include ::tripleo::profile::base::glance::api
class { '::tripleo::profile::base::glance::registry':
sync_db => $pacemaker_master,
}
include ::tripleo::profile::base::glance::registry
if $step >= 4 {
if $glance_backend == 'file' and $glance_file_pcmk_manage {

View File

@ -18,29 +18,18 @@
#
# === Parameters
#
# [*pacemaker_master*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*step*]
# (Optional) The current step in deployment. See tripleo-heat-templates
# for more details.
# Defaults to hiera('step')
#
# [*sync_db*]
# (Optional) Whether to run db sync
# Defaults to undef
class tripleo::profile::pacemaker::gnocchi::api (
$pacemaker_master = hiera('bootstrap_nodeid'),
$step = hiera('step'),
$sync_db = true,
) {
include ::tripleo::profile::pacemaker::gnocchi
class { '::tripleo::profile::base::gnocchi::api':
step => $step,
sync_db => (downcase($::hostname) == $pacemaker_master),
}
}

View File

@ -39,9 +39,7 @@ class tripleo::profile::pacemaker::heat::engine (
}
include ::tripleo::profile::pacemaker::heat
class { '::tripleo::profile::base::heat::engine':
sync_db => $pacemaker_master,
}
include ::tripleo::profile::base::heat::engine
if $step >= 5 and $pacemaker_master {
pacemaker::resource::service { $::heat::params::engine_service_name :

View File

@ -46,17 +46,11 @@ class tripleo::profile::pacemaker::keystone (
if $::hostname == downcase($bootstrap_node) {
$pacemaker_master = true
$manage_roles = true
} else {
$pacemaker_master = false
$manage_roles = false
}
class { '::tripleo::profile::base::keystone':
sync_db => $pacemaker_master,
manage_roles => $manage_roles,
manage_endpoint => $manage_roles
}
include ::tripleo::profile::base::keystone
if $step >= 5 and $pacemaker_master and $enable_load_balancer {
pacemaker::constraint::base { 'haproxy-then-keystone-constraint':

View File

@ -18,19 +18,12 @@
#
# === Parameters
#
# [*pacemaker_master*]
# (Optional) The hostname of the pacemaker master
# Defaults to hiera('bootstrap_nodeid', undef)
#
class tripleo::profile::pacemaker::neutron::plugins::ml2 (
$pacemaker_master = hiera('bootstrap_nodeid', undef),
) {
class tripleo::profile::pacemaker::neutron::plugins::ml2
{
include ::neutron::params
include ::tripleo::profile::pacemaker::neutron
class { '::tripleo::profile::base::neutron::plugins::ml2':
sync_db => ($::hostname == downcase($pacemaker_master))
}
include ::tripleo::profile::base::neutron::plugins::ml2
}

View File

@ -18,16 +18,9 @@
#
# === Parameters
#
# [*pacemaker_master*]
# (Optional) The hostname of the pacemaker master
# Defaults to hiera('bootstrap_nodeid', undef)
#
class tripleo::profile::pacemaker::neutron::plugins::nuage (
$pacemaker_master = hiera('bootstrap_nodeid', undef),
) {
class tripleo::profile::pacemaker::neutron::plugins::nuage
{
class { '::tripleo::profile::base::neutron::plugins::nuage':
sync_db => ($::hostname == downcase($pacemaker_master))
}
include ::tripleo::profile::base::neutron::plugins::nuage
}

View File

@ -18,16 +18,9 @@
#
# === Parameters
#
# [*pacemaker_master*]
# (Optional) The hostname of the pacemaker master
# Defaults to hiera('bootstrap_nodeid', undef)
#
class tripleo::profile::pacemaker::neutron::plugins::opencontrail (
$pacemaker_master = hiera('bootstrap_nodeid', undef),
) {
class tripleo::profile::pacemaker::neutron::plugins::opencontrail
{
class { '::tripleo::profile::base::neutron::plugins::opencontrail':
sync_db => ($::hostname == downcase($pacemaker_master))
}
include ::tripleo::profile::base::neutron::plugins::opencontrail
}

View File

@ -18,16 +18,9 @@
#
# === Parameters
#
# [*pacemaker_master*]
# (Optional) The hostname of the pacemaker master
# Defaults to hiera('bootstrap_nodeid', undef)
#
class tripleo::profile::pacemaker::neutron::plugins::plumgrid (
$pacemaker_master = hiera('bootstrap_nodeid', undef),
) {
class tripleo::profile::pacemaker::neutron::plugins::plumgrid
{
class { '::tripleo::profile::base::neutron::plugins::plumgrid':
sync_db => ($::hostname == downcase($pacemaker_master))
}
include ::tripleo::profile::base::neutron::plugins::plumgrid
}

View File

@ -42,9 +42,7 @@ class tripleo::profile::pacemaker::nova::api (
stop => '/bin/true',
}
class { '::tripleo::profile::base::nova::api':
sync_db => (downcase($::hostname) == $pacemaker_master),
}
include ::tripleo::profile::base::nova::api
if $step >= 5 and downcase($::hostname) == $pacemaker_master {
pacemaker::resource::service { $::nova::params::api_service_name:

View File

@ -39,9 +39,7 @@ class tripleo::profile::pacemaker::sahara::engine (
}
include ::tripleo::profile::pacemaker::sahara
class { '::tripleo::profile::base::sahara::engine':
sync_db => $pacemaker_master
}
include ::tripleo::profile::base::sahara::engine
if $step >= 5 and $pacemaker_master {
pacemaker::resource::service { $::sahara::params::engine_service_name :