aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--controller.yaml4
-rw-r--r--overcloud-without-mergepy.yaml7
-rw-r--r--puppet/controller-puppet.yaml10
-rw-r--r--puppet/hieradata/controller.yaml2
-rw-r--r--puppet/manifests/overcloud_compute.pp6
-rw-r--r--puppet/manifests/overcloud_controller.pp22
-rw-r--r--puppet/swift-devices-and-proxy-config.yaml9
7 files changed, 56 insertions, 4 deletions
diff --git a/controller.yaml b/controller.yaml
index 33286d19..9c0fa0cd 100644
--- a/controller.yaml
+++ b/controller.yaml
@@ -63,6 +63,10 @@ parameters:
default: ''
description: Set to True to enable debugging on all services.
type: string
+ EnableGalera:
+ default: true
+ description: Whether to use Galera instead of regular MariaDB.
+ type: boolean
ExtraConfig:
default: {}
description: |
diff --git a/overcloud-without-mergepy.yaml b/overcloud-without-mergepy.yaml
index cd684579..d8c84bc0 100644
--- a/overcloud-without-mergepy.yaml
+++ b/overcloud-without-mergepy.yaml
@@ -259,6 +259,10 @@ parameters:
default: 'br-ex'
description: Interface where virtual ip will be assigned.
type: string
+ EnableGalera:
+ default: true
+ description: Whether to use Galera instead of regular MariaDB.
+ type: boolean
ExtraConfig:
default: {}
description: |
@@ -532,6 +536,7 @@ resources:
ControlVirtualInterface: {get_param: ControlVirtualInterface}
ControllerExtraConfig: {get_param: controllerExtraConfig}
Debug: {get_param: Debug}
+ EnableGalera: {get_param: EnableGalera}
ExtraConfig: {get_param: ExtraConfig}
Flavor: {get_param: OvercloudControlFlavor}
GlancePort: {get_param: GlancePort}
@@ -863,7 +868,7 @@ resources:
ComputeNodesPostDeployment:
type: OS::TripleO::ComputePostDeployment
- depends_on: ComputeAllNodesDeployment
+ depends_on: [ComputeAllNodesDeployment, ComputeCephDeployment]
properties:
servers: {get_attr: [Compute, attributes, nova_server_resource]}
diff --git a/puppet/controller-puppet.yaml b/puppet/controller-puppet.yaml
index c7c5e49b..305c3dc4 100644
--- a/puppet/controller-puppet.yaml
+++ b/puppet/controller-puppet.yaml
@@ -63,6 +63,10 @@ parameters:
default: ''
description: Set to True to enable debugging on all services.
type: string
+ EnableGalera:
+ default: true
+ description: Whether to use Galera instead of regular MariaDB.
+ type: boolean
ExtraConfig:
default: {}
description: |
@@ -507,6 +511,7 @@ resources:
- - 'http://'
- {get_param: VirtualIP}
- ':5000/v2.0/'
+ enable_galera: {get_param: EnableGalera}
mysql_innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize}
mysql_root_password: {get_param: MysqlRootPassword}
mysql_cluster_name:
@@ -714,9 +719,11 @@ resources:
keystone::public_bind_host: {get_input: controller_host}
keystone::admin_bind_host: {get_input: controller_host}
keystone::debug: {get_input: debug}
-
+ # MongoDB
+ mongodb::server::bind_ip: {get_input: controller_host}
# MySQL
admin_password: {get_input: admin_password}
+ enable_galera: {get_input: enable_galera}
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}
@@ -791,6 +798,7 @@ resources:
nova::network::neutron::neutron_admin_auth_url: {get_input: neutron_admin_auth_url}
# Rabbit
+ rabbitmq::node_ip_address: {get_input: controller_host}
rabbitmq::erlang_cookie: {get_input: rabbit_cookie}
# Misc
diff --git a/puppet/hieradata/controller.yaml b/puppet/hieradata/controller.yaml
index 47f358a9..523e9dbe 100644
--- a/puppet/hieradata/controller.yaml
+++ b/puppet/hieradata/controller.yaml
@@ -11,6 +11,8 @@ rabbitmq::port: '5672'
rabbitmq::package_source: undef
rabbitmq::repos_ensure: false
+mongodb::server::replset: tripleo
+
# service tenant
nova::api::admin_tenant_name: 'service'
glance::api::keystone_tenant: 'service'
diff --git a/puppet/manifests/overcloud_compute.pp b/puppet/manifests/overcloud_compute.pp
index 58834039..ffa55cdb 100644
--- a/puppet/manifests/overcloud_compute.pp
+++ b/puppet/manifests/overcloud_compute.pp
@@ -52,7 +52,11 @@ nova_config {
$nova_enable_rbd_backend = hiera('nova_enable_rbd_backend', false)
if $nova_enable_rbd_backend {
include ::ceph::profile::client
- include ::nova::compute::rbd
+
+ $client_keys = hiera('ceph::profile::params::client_keys')
+ class { '::nova::compute::rbd':
+ libvirt_rbd_secret_key => $client_keys['client.openstack']['secret'],
+ }
}
include ::nova::compute::libvirt
diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp
index 2b637b37..0541fa4e 100644
--- a/puppet/manifests/overcloud_controller.pp
+++ b/puppet/manifests/overcloud_controller.pp
@@ -39,8 +39,30 @@ if hiera('step') >= 2 {
include ::ntp
}
+ # MongoDB
+ include ::mongodb::globals
+ include ::mongodb::server
+ $mongo_node_ips = split(downcase(hiera('mongo_node_ips')), ',')
+ $mongo_node_ips_with_port = suffix($mongo_node_ips, ':27017')
+
+ if count($mongo_node_ips) > 1 {
+ if downcase($::hostname) == hiera('bootstrap_nodeid') {
+ $mongodb_replset = hiera('mongodb::server::replset')
+ mongodb_replset { $mongodb_replset :
+ members => $mongo_node_ips_with_port,
+ }
+ }
+ }
+
+ if str2bool(hiera('enable_galera', 'true')) {
+ $mysql_config_file = '/etc/my.cnf.d/galera.cnf'
+ } else {
+ $mysql_config_file = '/etc/my.cnf.d/server.cnf'
+ }
+
# TODO Galara
class { 'mysql::server':
+ config_file => $mysql_config_file,
override_options => {
'mysqld' => {
'bind-address' => hiera('controller_host')
diff --git a/puppet/swift-devices-and-proxy-config.yaml b/puppet/swift-devices-and-proxy-config.yaml
index 1cb897ee..731f69a1 100644
--- a/puppet/swift-devices-and-proxy-config.yaml
+++ b/puppet/swift-devices-and-proxy-config.yaml
@@ -6,7 +6,6 @@ parameters:
type: comma_delimited_list
object_store_swift_devices:
type: comma_delimited_list
- # TODO: add support for puppet swift proxy memcache configuration
controller_swift_proxy_memcaches:
type: comma_delimited_list
@@ -30,6 +29,14 @@ resources:
- list_join:
- ", "
- {get_param: object_store_swift_devices}
+ swift::proxy::cache::memcache_servers:
+ str_replace:
+ template: "['SERVERS_LIST']"
+ params:
+ SERVERS_LIST:
+ list_join:
+ - "','"
+ - {get_param: controller_swift_proxy_memcaches}
outputs:
config_id: