diff options
-rw-r--r-- | controller.yaml | 8 | ||||
-rw-r--r-- | overcloud-without-mergepy.yaml | 10 | ||||
-rw-r--r-- | puppet/controller-puppet.yaml | 12 | ||||
-rw-r--r-- | puppet/manifests/overcloud_controller.pp | 31 |
4 files changed, 49 insertions, 12 deletions
diff --git a/controller.yaml b/controller.yaml index fe3e794b..483ecc8f 100644 --- a/controller.yaml +++ b/controller.yaml @@ -72,6 +72,14 @@ parameters: description: If enabled services will be monitored by Pacemaker; it will manage VIPs as well, in place of Keepalived. type: boolean + EnableCephStorage: + default: false + description: Whether to deploy Ceph Storage (OSD) on the Controller + type: boolean + EnableSwiftStorage: + default: true + description: Whether to enable Swift Storage on the Controller + type: boolean ExtraConfig: default: {} description: | diff --git a/overcloud-without-mergepy.yaml b/overcloud-without-mergepy.yaml index 6730a7a4..142e502e 100644 --- a/overcloud-without-mergepy.yaml +++ b/overcloud-without-mergepy.yaml @@ -268,6 +268,14 @@ parameters: description: If enabled services will be monitored by Pacemaker; it will manage VIPs as well, in place of Keepalived. type: boolean + ControllerEnableCephStorage: + default: false + description: Whether to deploy Ceph Storage (OSD) on the Controller + type: boolean + ControllerEnableSwiftStorage: + default: true + description: Whether to enable Swift Storage on the Controller + type: boolean ExtraConfig: default: {} description: | @@ -548,6 +556,8 @@ resources: Debug: {get_param: Debug} EnableGalera: {get_param: EnableGalera} EnablePacemaker: {get_param: EnablePacemaker} + EnableCephStorage: {get_param: ControllerEnableCephStorage} + EnableSwiftStorage: {get_param: ControllerEnableSwiftStorage} ExtraConfig: {get_param: ExtraConfig} Flavor: {get_param: OvercloudControlFlavor} GlancePort: {get_param: GlancePort} diff --git a/puppet/controller-puppet.yaml b/puppet/controller-puppet.yaml index 0aad4423..d3955467 100644 --- a/puppet/controller-puppet.yaml +++ b/puppet/controller-puppet.yaml @@ -72,6 +72,14 @@ parameters: description: If enabled services will be monitored by Pacemaker; it will manage VIPs as well, in place of Keepalived. type: boolean + EnableCephStorage: + default: false + description: Whether to deploy Ceph Storage (OSD) on the Controller + type: boolean + EnableSwiftStorage: + default: true + description: Whether to enable Swift Storage on the Controller + type: boolean ExtraConfig: default: {} description: | @@ -521,6 +529,8 @@ resources: - ':5000/v2.0/' enable_galera: {get_param: EnableGalera} enable_pacemaker: {get_param: EnablePacemaker} + enable_ceph_storage: {get_param: EnableCephStorage} + enable_swift_storage: {get_param: EnableSwiftStorage} mysql_innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize} mysql_root_password: {get_param: MysqlRootPassword} mysql_cluster_name: @@ -732,6 +742,8 @@ resources: # MySQL admin_password: {get_input: admin_password} enable_galera: {get_input: enable_galera} + enable_ceph_storage: {get_input: enable_ceph_storage} + enable_swift_storage: {get_input: enable_swift_storage} mysql_innodb_buffer_pool_size: {get_input: mysql_innodb_buffer_pool_size} mysql::server::root_password: {get_input: mysql_root_password} mysql_cluster_name: {get_input: mysql_cluster_name} diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp index 8a8c0eb8..b1ccf3d7 100644 --- a/puppet/manifests/overcloud_controller.pp +++ b/puppet/manifests/overcloud_controller.pp @@ -206,6 +206,11 @@ if hiera('step') >= 2 { include ::ceph::profile::mon } + if str2bool(hiera('enable_ceph_storage', 'false')) { + include ::ceph::profile::client + include ::ceph::profile::osd + } + } #END STEP 2 if hiera('step') >= 3 { @@ -362,20 +367,22 @@ if hiera('step') >= 3 { include ::swift::proxy::formpost # swift storage - class {'swift::storage::all': - mount_check => str2bool(hiera('swift_mount_check')) - } - if(!defined(File['/srv/node'])) { - file { '/srv/node': - ensure => directory, - owner => 'swift', - group => 'swift', - require => Package['openstack-swift'], + if str2bool(hiera('enable_swift_storage', 'true')) { + class {'swift::storage::all': + mount_check => str2bool(hiera('swift_mount_check')) + } + if(!defined(File['/srv/node'])) { + file { '/srv/node': + ensure => directory, + owner => 'swift', + group => 'swift', + require => Package['openstack-swift'], + } } + $swift_components = ['account', 'container', 'object'] + swift::storage::filter::recon { $swift_components : } + swift::storage::filter::healthcheck { $swift_components : } } - $swift_components = ['account', 'container', 'object'] - swift::storage::filter::recon { $swift_components : } - swift::storage::filter::healthcheck { $swift_components : } # Ceilometer include ::ceilometer |