aboutsummaryrefslogtreecommitdiffstats
path: root/manifests/profile/base
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/profile/base')
-rw-r--r--manifests/profile/base/ceilometer/collector.pp9
-rw-r--r--manifests/profile/base/nova/api.pp20
-rw-r--r--manifests/profile/base/swift/ringbuilder.pp13
3 files changed, 35 insertions, 7 deletions
diff --git a/manifests/profile/base/ceilometer/collector.pp b/manifests/profile/base/ceilometer/collector.pp
index 443873f..3c0a361 100644
--- a/manifests/profile/base/ceilometer/collector.pp
+++ b/manifests/profile/base/ceilometer/collector.pp
@@ -60,10 +60,6 @@ class tripleo::profile::base::ceilometer::collector (
include ::tripleo::profile::base::ceilometer
- if $step >= 3 and $sync_db {
- include ::ceilometer::db::sync
- }
-
if $step >= 4 or ($step >= 3 and $sync_db) {
if downcase($ceilometer_backend) == 'mongodb' {
if empty($mongodb_node_ips) {
@@ -88,10 +84,13 @@ class tripleo::profile::base::ceilometer::collector (
$ceilometer_mongodb_conn_string = "mongodb://${mongo_node_string}/ceilometer?replicaSet=${mongodb_replset}"
class { '::ceilometer::db' :
+ sync_db => $sync_db,
database_connection => $ceilometer_mongodb_conn_string,
}
} else {
- include ::ceilometer::db
+ class { '::ceilometer::db' :
+ sync_db => $sync_db,
+ }
}
include ::ceilometer::collector
include ::ceilometer::dispatcher::gnocchi
diff --git a/manifests/profile/base/nova/api.pp b/manifests/profile/base/nova/api.pp
index 3c472c5..03706dc 100644
--- a/manifests/profile/base/nova/api.pp
+++ b/manifests/profile/base/nova/api.pp
@@ -38,10 +38,26 @@ class tripleo::profile::base::nova::api (
include ::tripleo::profile::base::nova
if $step >= 4 or ($step >= 3 and $sync_db) {
+
+ # Manages the migration to Nova API in mod_wsgi with Apache.
+ # - First update nova.conf with new parameters
+ # - Stop nova-api process before starting apache to avoid binding error
+ # - Start apache after configuring all vhosts
+ exec { 'stop_nova-api':
+ command => 'service openstack-nova-api stop',
+ path => ['/usr/bin', '/usr/sbin'],
+ onlyif => 'systemctl is-active openstack-nova-api',
+ refreshonly => true,
+ }
+ Nova_config<||> ~> Exec['stop_nova-api']
+ Exec['stop_nova-api'] -> Service['httpd']
+
class { '::nova::api':
- sync_db => $sync_db,
- sync_db_api => $sync_db,
+ service_name => 'httpd', # Temporary: will be moved to t-h-t
+ sync_db => $sync_db,
+ sync_db_api => $sync_db,
}
+ include ::nova::wsgi::apache
include ::nova::network::neutron
}
diff --git a/manifests/profile/base/swift/ringbuilder.pp b/manifests/profile/base/swift/ringbuilder.pp
index c77d744..7e5fc74 100644
--- a/manifests/profile/base/swift/ringbuilder.pp
+++ b/manifests/profile/base/swift/ringbuilder.pp
@@ -54,6 +54,15 @@
# (Optional) list of ip addresses for nodes running swift_storage service
# Defaults to hiera('swift_storage_node_ips') or an empty list
#
+# [*part_power*]
+# (Optional) The total number of partitions that should exist in the ring.
+# This is expressed as a power of 2.
+# Defaults to undef
+#
+# [*min_part_hours*]
+# Minimum amount of time before partitions can be moved.
+# Defaults to undef
+#
class tripleo::profile::base::swift::ringbuilder (
$replicas,
$build_ring = true,
@@ -63,6 +72,8 @@ class tripleo::profile::base::swift::ringbuilder (
$raw_disk_prefix = 'r1z1-',
$raw_disks = [],
$swift_storage_node_ips = hiera('swift_storage_node_ips', []),
+ $part_power = undef,
+ $min_part_hours = undef,
) {
if $step >= 2 {
# pre-install swift here so we can build rings
@@ -81,7 +92,9 @@ class tripleo::profile::base::swift::ringbuilder (
# create local rings
swift::ringbuilder::create{ ['object', 'account', 'container']:
+ part_power => $part_power,
replicas => min(count($device_array), $replicas),
+ min_part_hours => $min_part_hours,
} ->
# add all other devices