Enable notifications on the overcloud
authorBen Nemec <bnemec@redhat.com>
Wed, 4 Nov 2015 00:40:36 +0000 (18:40 -0600)
committerBen Nemec <bnemec@redhat.com>
Thu, 25 Feb 2016 15:38:24 +0000 (09:38 -0600)
Configures all services to send notifications to rabbit.  The puppet
modules are not consistent regarding how this is done - some expose
notification config as a top-level param, others you need to set it
through a *_config structure, and cinder provides a separate class
dedicated to enabling ceilometer notifications.

Change-Id: I23e2ddad3c59a06cfbfe5d896a16e6bad2abd943

puppet/controller.yaml
puppet/hieradata/controller.yaml
puppet/manifests/overcloud_controller.pp
puppet/manifests/overcloud_controller_pacemaker.pp

index 51c9b6c..c04ab1d 100644 (file)
@@ -1319,6 +1319,9 @@ resources:
                 glance_file_pcmk_fstype: {get_input: glance_file_pcmk_fstype}
                 glance_file_pcmk_manage: {get_input: glance_file_pcmk_manage}
                 glance_file_pcmk_options: {get_input: glance_file_pcmk_options}
+                glance::notify::rabbitmq::rabbit_userid: {get_input: rabbit_username}
+                glance::notify::rabbitmq::rabbit_password: {get_input: rabbit_password}
+                glance::notify::rabbitmq::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
 
                 # Heat
                 heat_stack_domain_admin_password: {get_input: heat_stack_domain_admin_password}
index e0e0ffb..e00fffa 100644 (file)
@@ -91,6 +91,7 @@ nova::api::sync_db_api: true
 nova::scheduler::filter::ram_allocation_ratio: '1.0'
 nova::cron::archive_deleted_rows::hour: '*/12'
 nova::cron::archive_deleted_rows::destination: '/dev/null'
+nova::notification_driver: messaging
 
 # ceilometer
 ceilometer::agent::auth::auth_endpoint_type: 'internalURL'
index 14dde15..5c36c67 100644 (file)
@@ -222,7 +222,7 @@ if hiera('step') >= 3 {
   $http_store = ['glance.store.http.Store']
   $glance_store = concat($http_store, $backend_store)
 
-  # TODO: notifications, scrubber, etc.
+  # TODO: scrubber and other additional optional features
   include ::glance
   include ::glance::config
   class { '::glance::api':
@@ -230,6 +230,10 @@ if hiera('step') >= 3 {
   }
   include ::glance::registry
   include join(['::glance::backend::', $glance_backend])
+  $rabbit_port = hiera('rabbitmq::port')
+  class { '::glance::notify::rabbitmq':
+    rabbit_hosts => suffix(hiera('rabbit_node_ips'), ":${rabbit_port}"),
+  }
 
   class { '::nova' :
     memcached_servers => suffix(hiera('memcache_node_ips'), ':11211'),
@@ -380,6 +384,7 @@ if hiera('step') >= 3 {
   include ::cinder::glance
   include ::cinder::scheduler
   include ::cinder::volume
+  include ::cinder::ceilometer
   class { '::cinder::setup_test_volume':
     size => join([hiera('cinder_lvm_loop_device_size'), 'M']),
   }
@@ -565,7 +570,9 @@ if hiera('step') >= 3 {
   Cron <| title == 'ceilometer-expirer' |> { command => "sleep $((\$(od -A n -t d -N 3 /dev/urandom) % 86400)) && ${::ceilometer::params::expirer_command}" }
 
   # Heat
-  include ::heat
+  class { '::heat' :
+    notification_driver => 'messaging',
+  }
   include ::heat::config
   include ::heat::api
   include ::heat::api_cfn
index c527c26..89052e5 100644 (file)
@@ -576,6 +576,10 @@ if hiera('step') >= 3 {
     enabled        => false,
   }
   include join(['::glance::backend::', $glance_backend])
+  $rabbit_port = hiera('rabbitmq::port')
+  class { '::glance::notify::rabbitmq':
+    rabbit_hosts => suffix(hiera('rabbit_node_ips'), ":${rabbit_port}"),
+  }
 
   class { '::nova' :
     memcached_servers => suffix(hiera('memcache_node_ips'), ':11211'),
@@ -742,6 +746,9 @@ if hiera('step') >= 3 {
   neutron_dhcp_agent_config {
     'DEFAULT/ovs_use_veth': value => hiera('neutron_ovs_use_veth', false);
   }
+  neutron_config {
+    'DEFAULT/notification_driver': value => 'messaging';
+  }
 
   include ::cinder
   include ::cinder::config
@@ -760,6 +767,7 @@ if hiera('step') >= 3 {
     enabled        => false,
   }
   include ::cinder::glance
+  include ::cinder::ceilometer
   class { '::cinder::setup_test_volume':
     size => join([hiera('cinder_lvm_loop_device_size'), 'M']),
   }
@@ -986,7 +994,8 @@ if hiera('step') >= 3 {
   # Heat
   include ::heat::config
   class { '::heat' :
-    sync_db => $sync_db,
+    sync_db             => $sync_db,
+    notification_driver => 'messaging',
   }
   class { '::heat::api' :
     manage_service => false,