aboutsummaryrefslogtreecommitdiffstats
path: root/manifests/profile/base/nova.pp
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/profile/base/nova.pp')
-rw-r--r--manifests/profile/base/nova.pp99
1 files changed, 81 insertions, 18 deletions
diff --git a/manifests/profile/base/nova.pp b/manifests/profile/base/nova.pp
index 4626465..7daed83 100644
--- a/manifests/profile/base/nova.pp
+++ b/manifests/profile/base/nova.pp
@@ -30,6 +30,50 @@
# (Optional) Whether or not manage Nova Live migration
# Defaults to false
#
+# [*oslomsg_rpc_proto*]
+# Protocol driver for the oslo messaging rpc service
+# Defaults to hiera('messaging_rpc_service_name', rabbit)
+#
+# [*oslomsg_rpc_hosts*]
+# list of the oslo messaging rpc host fqdns
+# Defaults to hiera('rabbitmq_node_names')
+#
+# [*oslomsg_rpc_port*]
+# IP port for oslo messaging rpc service
+# Defaults to hiera('nova::rabbit_port', 5672)
+#
+# [*oslomsg_rpc_username*]
+# Username for oslo messaging rpc service
+# Defaults to hiera('nova::rabbit_userid', 'guest')
+#
+# [*oslomsg_rpc_password*]
+# Password for oslo messaging rpc service
+# Defaults to hiera('nova::rabbit_password')
+#
+# [*oslomsg_notify_proto*]
+# Protocol driver for the oslo messaging notify service
+# Defaults to hiera('messaging_notify_service_name', rabbit)
+#
+# [*oslomsg_notify_hosts*]
+# list of the oslo messaging notify host fqdns
+# Defaults to hiera('rabbitmq_node_names')
+#
+# [*oslomsg_notify_port*]
+# IP port for oslo messaging notify service
+# Defaults to hiera('nova::rabbit_port', 5672)
+#
+# [*oslomsg_notify_username*]
+# Username for oslo messaging notify service
+# Defaults to hiera('nova::rabbit_userid', 'guest')
+#
+# [*oslomsg_notify_password*]
+# Password for oslo messaging notify service
+# Defaults to hiera('nova::rabbit_password')
+#
+# [*oslomsg_use_ssl*]
+# Enable ssl oslo messaging services
+# Defaults to hiera('nova::rabbit_use_ssl', '0')
+#
# [*nova_compute_enabled*]
# (Optional) Whether or not nova-compute is enabled.
# Defaults to false
@@ -38,22 +82,23 @@
# (Optional) The current step of the deployment
# Defaults to hiera('step')
#
-# [*rabbit_hosts*]
-# list of the rabbbit host IPs
-# Defaults to hiera('rabbitmq_node_ips')
-#
-# [*rabbit_port*]
-# IP port for rabbitmq service
-# Defaults to hiera('nova::rabbit_port', 5672)
-
class tripleo::profile::base::nova (
- $bootstrap_node = hiera('bootstrap_nodeid', undef),
- $libvirt_enabled = false,
- $manage_migration = false,
- $nova_compute_enabled = false,
- $step = hiera('step'),
- $rabbit_hosts = hiera('rabbitmq_node_ips', undef),
- $rabbit_port = hiera('nova::rabbit_port', 5672),
+ $bootstrap_node = hiera('bootstrap_nodeid', undef),
+ $libvirt_enabled = false,
+ $manage_migration = false,
+ $oslomsg_rpc_proto = hiera('messaging_rpc_service_name', 'rabbit'),
+ $oslomsg_rpc_hosts = any2array(hiera('rabbitmq_node_names', undef)),
+ $oslomsg_rpc_password = hiera('nova::rabbit_password'),
+ $oslomsg_rpc_port = hiera('nova::rabbit_port', '5672'),
+ $oslomsg_rpc_username = hiera('nova::rabbit_userid', 'guest'),
+ $oslomsg_notify_proto = hiera('messaging_notify_service_name', 'rabbit'),
+ $oslomsg_notify_hosts = any2array(hiera('rabbitmq_node_names', undef)),
+ $oslomsg_notify_password = hiera('nova::rabbit_password'),
+ $oslomsg_notify_port = hiera('nova::rabbit_port', '5672'),
+ $oslomsg_notify_username = hiera('nova::rabbit_userid', 'guest'),
+ $oslomsg_use_ssl = hiera('nova::rabbit_use_ssl', '0'),
+ $nova_compute_enabled = false,
+ $step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
@@ -67,10 +112,27 @@ class tripleo::profile::base::nova (
$memcache_servers = suffix(hiera('memcached_node_ips'), ':11211')
}
- if hiera('step') >= 4 or (hiera('step') >= 3 and $sync_db) {
- $rabbit_endpoints = suffix(any2array(normalize_ip_for_uri($rabbit_hosts)), ":${rabbit_port}")
+ if $step >= 4 or ($step >= 3 and $sync_db) {
+ $oslomsg_use_ssl_real = sprintf('%s', bool2num(str2bool($oslomsg_use_ssl)))
+ # TODO(ccamacho): remove sprintf once we properly type the port, needs
+ # to be a string for the os_transport_url function.
class { '::nova' :
- rabbit_hosts => $rabbit_endpoints,
+ default_transport_url => os_transport_url({
+ 'transport' => $oslomsg_rpc_proto,
+ 'hosts' => $oslomsg_rpc_hosts,
+ 'port' => sprintf('%s', $oslomsg_rpc_port),
+ 'username' => $oslomsg_rpc_username,
+ 'password' => $oslomsg_rpc_password,
+ 'ssl' => $oslomsg_use_ssl_real,
+ }),
+ notification_transport_url => os_transport_url({
+ 'transport' => $oslomsg_notify_proto,
+ 'hosts' => $oslomsg_notify_hosts,
+ 'port' => sprintf('%s', $oslomsg_notify_port),
+ 'username' => $oslomsg_notify_username,
+ 'password' => $oslomsg_notify_password,
+ 'ssl' => $oslomsg_use_ssl_real,
+ }),
}
include ::nova::config
class { '::nova::cache':
@@ -78,6 +140,7 @@ class tripleo::profile::base::nova (
backend => 'oslo_cache.memcache_pool',
memcache_servers => $memcache_servers,
}
+ include ::nova::placement
}
if $step >= 4 {