diff options
-rw-r--r-- | manifests/profile/base/database/schemas.pp | 132 | ||||
-rw-r--r-- | manifests/profile/base/glance/registry.pp | 10 | ||||
-rw-r--r-- | manifests/profile/base/keystone.pp | 10 | ||||
-rw-r--r-- | manifests/profile/pacemaker/database/schemas.pp | 65 | ||||
-rw-r--r-- | manifests/profile/pacemaker/glance.pp | 26 | ||||
-rw-r--r-- | manifests/profile/pacemaker/keystone.pp | 24 |
6 files changed, 46 insertions, 221 deletions
diff --git a/manifests/profile/base/database/schemas.pp b/manifests/profile/base/database/schemas.pp deleted file mode 100644 index 472a0f4..0000000 --- a/manifests/profile/base/database/schemas.pp +++ /dev/null @@ -1,132 +0,0 @@ -# Copyright 2016 Red Hat, Inc. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. -# -# == Class: tripleo::profile::base::database::schemas -# -# OpenStack Database Schema profile for tripleo -# -# === Parameters -# -# [*step*] -# (Optional) The current deployment step -# Defaults to hiera('step') -# -# [*ceilometer_backend*] -# (Optional) The backend used by ceilometer, usually either 'mysql' -# or 'mongodb' -# Defaults to hiera('ceilometer_backend') -# -# [*enable_aodh*] -# (Optional) Whether to create schemas for Aodh -# Defaults to true -# -# [*enable_ceilometer*] -# (Optional) Whether to create schemas for Ceilometer -# Defaults to true -# -# [*enable_cinder*] -# (Optional) Whether to create schemas for Cinder -# Defaults to true -# -# [*enable_heat*] -# (Optional) Whether to create schemas for Heat -# Defaults to true -# -# [*enable_keystone*] -# (Optional) Whether to create schemas for Keystone -# Defaults to true -# -# [*enable_glance*] -# (Optional) Whether to create schemas for Glance -# Defaults to true -# -# [*enable_gnocchi*] -# (Optional) Whether to create schemas for Gnocchi -# Defaults to true -# -# [*enable_nova*] -# (Optional) Whether to create schemas for Nova -# Defaults to true -# -# [*enable_neutron*] -# (Optional) Whether to create schemas for Neutron -# Defaults to true -# -# [*enable_sahara*] -# (Optional) Whether to create schemas for Sahara -# Defaults to true -# -# [*gnocchi_indexer_backend*] -# (Optional) Type of backend used as Gnocchi indexer -# Defaults to hiera('gnocchi_indexer_backend') -# -class tripleo::profile::base::database::schemas ( - $step = hiera('step'), - $ceilometer_backend = hiera('ceilometer_backend'), - $enable_aodh = true, - $enable_ceilometer = true, - $enable_cinder = true, - $enable_heat = true, - $enable_keystone = true, - $enable_glance = true, - $enable_gnocchi = true, - $enable_nova = true, - $enable_neutron = true, - $enable_sahara = true, - $gnocchi_indexer_backend = hiera('gnocchi_indexer_backend'), -) { - if $step >= 2 { - if downcase($ceilometer_backend) == 'mysql' { - if $enable_ceilometer { - include ::ceilometer::db::mysql - } - if $enable_aodh { - include ::aodh::db::mysql - } - } - - if $enable_gnocchi and downcase($gnocchi_indexer_backend) == 'mysql' { - include ::gnocchi::db::mysql - } - - if $enable_cinder { - include ::cinder::db::mysql - } - - if $enable_keystone { - include ::keystone::db::mysql - } - - if $enable_glance { - include ::glance::db::mysql - } - - if $enable_nova { - include ::nova::db::mysql - include ::nova::db::mysql_api - } - - if $enable_neutron { - include ::neutron::db::mysql - } - - if $enable_heat { - include ::heat::db::mysql - } - - if $enable_sahara { - include ::sahara::db::mysql - } - } -} diff --git a/manifests/profile/base/glance/registry.pp b/manifests/profile/base/glance/registry.pp index bed4a5e..b77b356 100644 --- a/manifests/profile/base/glance/registry.pp +++ b/manifests/profile/base/glance/registry.pp @@ -20,7 +20,7 @@ # # [*sync_db*] # (Optional) Whether to run db sync -# Defaults to undef +# Defaults to true # # [*manage_service*] # (Optional) Whether to manage the glance service @@ -40,14 +40,18 @@ # Defaults to downcase(hiera('glance_backend', 'swift')) # class tripleo::profile::base::glance::registry ( - $sync_db = undef, + $sync_db = true, $manage_service = undef, $enabled = undef, $step = hiera('step'), $glance_backend = downcase(hiera('glance_backend', 'swift')), ) { - if $step >= 4 { + if $step >= 3 and $sync_db { + include ::glance::db::mysql + } + + if $step >= 4 or ( $step >= 3 and $sync_db ) { # TODO: notifications, scrubber, etc. include ::glance include ::glance::config diff --git a/manifests/profile/base/keystone.pp b/manifests/profile/base/keystone.pp index f17bf30..2f7a27a 100644 --- a/manifests/profile/base/keystone.pp +++ b/manifests/profile/base/keystone.pp @@ -20,7 +20,7 @@ # # [*sync_db*] # (Optional) Whether to run db sync -# Defaults to undef +# Defaults to true # # [*manage_service*] # (Optional) Whether to manage the keystone service @@ -52,7 +52,7 @@ # Defaults to hiera('step') # class tripleo::profile::base::keystone ( - $sync_db = undef, + $sync_db = true, $manage_service = undef, $enabled = undef, $bootstrap_master = undef, @@ -62,7 +62,11 @@ class tripleo::profile::base::keystone ( $step = hiera('step'), ) { - if $step >= 4 { + if $step >= 3 and $sync_db { + include ::keystone::db::mysql + } + + if $step >= 4 or ( $step >= 3 and $sync_db ) { class { '::keystone': sync_db => $sync_db, manage_service => $manage_service, diff --git a/manifests/profile/pacemaker/database/schemas.pp b/manifests/profile/pacemaker/database/schemas.pp deleted file mode 100644 index 489e75b..0000000 --- a/manifests/profile/pacemaker/database/schemas.pp +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright 2016 Red Hat, Inc. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. -# -# == Class: tripleo::profile::base::pacemaker::schemas -# -# OpenStack Database Schema Pacemaker HA profile for tripleo -# -# === Parameters -# -# [*step*] -# (Optional) The current deployment step -# Defaults to hiera('step') -# -# [*ceilometer_backend*] -# (Optional) The backend used by ceilometer, usually either 'mysql' -# or 'mongodb' -# Defaults to hiera('ceilometer_backend') -# -# [*gnocchi_indexer_backend*] -# (Optional) Type of backend used as Gnocchi indexer -# Defaults to hiera('gnocchi_indexer_backend') -# -# [*pacemaker_master*] -# (Optional) The hostname of the pacemaker master in this cluster -# Defaults to hiera('bootstrap_nodeid') -# -class tripleo::profile::pacemaker::database::schemas ( - $step = hiera('step'), - $ceilometer_backend = hiera('ceilometer_backend'), - $gnocchi_indexer_backend = hiera('gnocchi_indexer_backend'), - $pacemaker_master = hiera('bootstrap_nodeid') -) { - if downcase($pacemaker_master) == $::hostname and $step >= 2 { - include ::tripleo::profile::base::database::schemas - - if downcase($ceilometer_backend) == 'mysql' { - Exec['galera-ready'] -> Class['::ceilometer::db::mysql'] - Exec['galera-ready'] -> Class['::aodh::db::mysql'] - } - - if downcase($gnocchi_indexer_backend) == 'mysql' { - Exec['galera-ready'] -> Class['::gnocchi::db::mysql'] - } - - Exec['galera-ready'] -> Class['::cinder::db::mysql'] - Exec['galera-ready'] -> Class['::glance::db::mysql'] - Exec['galera-ready'] -> Class['::keystone::db::mysql'] - Exec['galera-ready'] -> Class['::nova::db::mysql'] - Exec['galera-ready'] -> Class['::nova::db::mysql_api'] - Exec['galera-ready'] -> Class['::neutron::db::mysql'] - Exec['galera-ready'] -> Class['::heat::db::mysql'] - Exec['galera-ready'] -> Class['::sahara::db::mysql'] - } -} diff --git a/manifests/profile/pacemaker/glance.pp b/manifests/profile/pacemaker/glance.pp index 5727622..4dca67e 100644 --- a/manifests/profile/pacemaker/glance.pp +++ b/manifests/profile/pacemaker/glance.pp @@ -62,22 +62,30 @@ class tripleo::profile::pacemaker::glance ( $glance_file_pcmk_options = hiera('glance_file_pcmk_options', ''), ) { + Service <| tag == 'glance-service' |> { + hasrestart => true, + restart => '/bin/true', + start => '/bin/true', + stop => '/bin/true', + } + if $::hostname == downcase($bootstrap_node) { $pacemaker_master = true } else { $pacemaker_master = false } + class { '::tripleo::profile::base::glance::api': + manage_service => false, + enabled => false, + } + class { '::tripleo::profile::base::glance::registry': + sync_db => $pacemaker_master, + manage_service => false, + enabled => false, + } + if $step >= 4 { - class { '::tripleo::profile::base::glance::api': - manage_service => false, - enabled => false, - } - class { '::tripleo::profile::base::glance::registry': - sync_db => $pacemaker_master, - manage_service => false, - enabled => false, - } if $glance_backend == 'file' and $glance_file_pcmk_manage { $secontext = 'context="system_u:object_r:glance_var_lib_t:s0"' pacemaker::resource::filesystem { 'glance-fs': diff --git a/manifests/profile/pacemaker/keystone.pp b/manifests/profile/pacemaker/keystone.pp index 0f007a5..fb625e5 100644 --- a/manifests/profile/pacemaker/keystone.pp +++ b/manifests/profile/pacemaker/keystone.pp @@ -37,6 +37,13 @@ class tripleo::profile::pacemaker::keystone ( $enable_load_balancer = hiera('enable_load_balancer', true) ) { + Service <| tag == 'keystone-service' |> { + hasrestart => true, + restart => '/bin/true', + start => '/bin/true', + stop => '/bin/true', + } + if $::hostname == downcase($bootstrap_node) { $pacemaker_master = true } else { @@ -51,15 +58,13 @@ class tripleo::profile::pacemaker::keystone ( $manage_roles = false } - if $step >= 4 { - class { '::tripleo::profile::base::keystone': - sync_db => $pacemaker_master, - manage_service => false, - enabled => false, - bootstrap_master => $pacemaker_master, - manage_roles => $manage_roles, - manage_endpoint => $manage_roles - } + class { '::tripleo::profile::base::keystone': + sync_db => $pacemaker_master, + manage_service => false, + enabled => false, + bootstrap_master => $pacemaker_master, + manage_roles => $manage_roles, + manage_endpoint => $manage_roles } if $step >= 5 and $pacemaker_master and $enable_load_balancer { @@ -85,4 +90,5 @@ class tripleo::profile::pacemaker::keystone ( Pacemaker::Resource::Ocf['openstack-core']], } } + } |