--- b/trove/manifests/api.pp
+++ a/trove/manifests/api.pp
@@ -278,21 +278,9 @@
   if $::trove::rpc_backend == 'trove.openstack.common.rpc.impl_kombu' {
-    if ! $::trove::rabbit_password {
-      fail('When rpc_backend is rabbitmq, you must set rabbit password')
-    }
-    if $::trove::rabbit_hosts {
-      trove_config { 'oslo_messaging_rabbit/rabbit_hosts':     value  => join($::trove::rabbit_hosts, ',') }
-      trove_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value  => true }
-    } else  {
-      trove_config { 'oslo_messaging_rabbit/rabbit_host':      value => $::trove::rabbit_host }
-      trove_config { 'oslo_messaging_rabbit/rabbit_port':      value => $::trove::rabbit_port }
-      trove_config { 'oslo_messaging_rabbit/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
-      trove_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value => false }
-    }
-
+    # I may want to support exporting and collecting these
     trove_config {
-      'oslo_messaging_rabbit/rabbit_userid':         value => $::trove::rabbit_user;
-      'oslo_messaging_rabbit/rabbit_password':       value => $::trove::rabbit_password, secret => true;
-      'oslo_messaging_rabbit/rabbit_virtual_host':   value => $::trove::rabbit_virtual_host;
-      'oslo_messaging_rabbit/rabbit_use_ssl':        value => $::trove::rabbit_use_ssl;
-      'oslo_messaging_rabbit/kombu_reconnect_delay': value => $::trove::kombu_reconnect_delay;
+      'DEFAULT/rabbit_password':     value => $::trove::rabbit_password, secret => true;
+      'DEFAULT/rabbit_userid':       value => $::trove::rabbit_userid;
+      'DEFAULT/rabbit_virtual_host': value => $::trove::rabbit_virtual_host;
+      'DEFAULT/rabbit_use_ssl':      value => $::trove::rabbit_use_ssl;
+      'DEFAULT/amqp_durable_queues': value => $::trove::amqp_durable_queues;
     }
@@ -300,13 +288,7 @@
     if $::trove::rabbit_use_ssl {
-
-      if $::trove::kombu_ssl_ca_certs {
-        trove_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs; }
-      } else {
-        trove_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent; }
-      }
-
-      if $::trove::kombu_ssl_certfile or $::trove::kombu_ssl_keyfile {
         trove_config {
-          'oslo_messaging_rabbit/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
-          'oslo_messaging_rabbit/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
+        'DEFAULT/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs;
+        'DEFAULT/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
+        'DEFAULT/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
+        'DEFAULT/kombu_ssl_version':  value => $::trove::kombu_ssl_version;
         }
@@ -314,20 +296,17 @@
         trove_config {
-          'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
-          'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
-        }
+        'DEFAULT/kombu_ssl_ca_certs': ensure => absent;
+        'DEFAULT/kombu_ssl_certfile': ensure => absent;
+        'DEFAULT/kombu_ssl_keyfile':  ensure => absent;
+        'DEFAULT/kombu_ssl_version':  ensure => absent;
       }
-
-      if $::trove::kombu_ssl_version {
-        trove_config { 'oslo_messaging_rabbit/kombu_ssl_version':  value => $::trove::kombu_ssl_version; }
-      } else {
-        trove_config { 'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent; }
       }
 
+    if $::trove::rabbit_hosts {
+      trove_config { 'DEFAULT/rabbit_hosts':     value => join($::trove::rabbit_hosts, ',') }
+      trove_config { 'DEFAULT/rabbit_ha_queues': value => true }
     } else {
-      trove_config {
-        'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent;
-      }
+      trove_config { 'DEFAULT/rabbit_host':      value => $::trove::rabbit_host }
+      trove_config { 'DEFAULT/rabbit_port':      value => $::trove::rabbit_port }
+      trove_config { 'DEFAULT/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
+      trove_config { 'DEFAULT/rabbit_ha_queues': value => false }
     }
--- b/trove/manifests/conductor.pp
+++ a/trove/manifests/conductor.pp
@@ -108,21 +108,10 @@
   if $::trove::rpc_backend == 'trove.openstack.common.rpc.impl_kombu' {
-    if ! $::trove::rabbit_password {
-      fail('When rpc_backend is rabbitmq, you must set rabbit password')
-    }
-    if $::trove::rabbit_hosts {
-      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_hosts':     value  => join($::trove::rabbit_hosts, ',') }
-      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value  => true }
-    } else  {
-      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_host':      value => $::trove::rabbit_host }
-      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_port':      value => $::trove::rabbit_port }
-      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
-      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value => false }
-    }
-
+    # I may want to support exporting and collecting these
     trove_conductor_config {
-      'oslo_messaging_rabbit/rabbit_userid':         value => $::trove::rabbit_user;
-      'oslo_messaging_rabbit/rabbit_password':       value => $::trove::rabbit_password, secret => true;
-      'oslo_messaging_rabbit/rabbit_virtual_host':   value => $::trove::rabbit_virtual_host;
-      'oslo_messaging_rabbit/rabbit_use_ssl':        value => $::trove::rabbit_use_ssl;
-      'oslo_messaging_rabbit/kombu_reconnect_delay': value => $::trove::kombu_reconnect_delay;
+      'DEFAULT/rabbit_password':           value => $::trove::rabbit_password, secret => true;
+      'DEFAULT/rabbit_userid':             value => $::trove::rabbit_userid;
+      'DEFAULT/rabbit_virtual_host':       value => $::trove::rabbit_virtual_host;
+      'DEFAULT/rabbit_use_ssl':            value => $::trove::rabbit_use_ssl;
+      'DEFAULT/amqp_durable_queues':       value => $::trove::amqp_durable_queues;
+      'DEFAULT/rabbit_notification_topic': value => $::trove::rabbit_notification_topic;
     }
@@ -130,13 +119,7 @@
     if $::trove::rabbit_use_ssl {
-
-      if $::trove::kombu_ssl_ca_certs {
-        trove_conductor_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs; }
-      } else {
-        trove_conductor_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent; }
-      }
-
-      if $::trove::kombu_ssl_certfile or $::trove::kombu_ssl_keyfile {
         trove_conductor_config {
-          'oslo_messaging_rabbit/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
-          'oslo_messaging_rabbit/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
+        'DEFAULT/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs;
+        'DEFAULT/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
+        'DEFAULT/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
+        'DEFAULT/kombu_ssl_version':  value => $::trove::kombu_ssl_version;
         }
@@ -144,20 +127,17 @@
         trove_conductor_config {
-          'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
-          'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
-        }
+        'DEFAULT/kombu_ssl_ca_certs': ensure => absent;
+        'DEFAULT/kombu_ssl_certfile': ensure => absent;
+        'DEFAULT/kombu_ssl_keyfile':  ensure => absent;
+        'DEFAULT/kombu_ssl_version':  ensure => absent;
       }
-
-      if $::trove::kombu_ssl_version {
-        trove_conductor_config { 'oslo_messaging_rabbit/kombu_ssl_version':  value => $::trove::kombu_ssl_version; }
-      } else {
-        trove_conductor_config { 'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent; }
       }
 
+    if $::trove::rabbit_hosts {
+      trove_conductor_config { 'DEFAULT/rabbit_hosts':     value => join($::trove::rabbit_hosts, ',') }
+      trove_conductor_config { 'DEFAULT/rabbit_ha_queues': value => true }
     } else {
-      trove_conductor_config {
-        'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent;
-      }
+      trove_conductor_config { 'DEFAULT/rabbit_host':      value => $::trove::rabbit_host }
+      trove_conductor_config { 'DEFAULT/rabbit_port':      value => $::trove::rabbit_port }
+      trove_conductor_config { 'DEFAULT/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
+      trove_conductor_config { 'DEFAULT/rabbit_ha_queues': value => false }
     }
--- b/trove/manifests/guestagent.pp
+++ a/trove/manifests/guestagent.pp
@@ -97,21 +97,10 @@
   if $::trove::rpc_backend == 'trove.openstack.common.rpc.impl_kombu' {
-      if ! $::trove::rabbit_password {
-      fail('When rpc_backend is rabbitmq, you must set rabbit password')
-    }
-    if $::trove::rabbit_hosts {
-      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_hosts':     value  => join($::trove::rabbit_hosts, ',') }
-      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value  => true }
-    } else  {
-      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_host':      value => $::trove::rabbit_host }
-      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_port':      value => $::trove::rabbit_port }
-      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
-      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value => false }
-    }
-
+    # I may want to support exporting and collecting these
     trove_guestagent_config {
-      'oslo_messaging_rabbit/rabbit_userid':         value => $::trove::rabbit_user;
-      'oslo_messaging_rabbit/rabbit_password':       value => $::trove::rabbit_password, secret => true;
-      'oslo_messaging_rabbit/rabbit_virtual_host':   value => $::trove::rabbit_virtual_host;
-      'oslo_messaging_rabbit/rabbit_use_ssl':        value => $::trove::rabbit_use_ssl;
-      'oslo_messaging_rabbit/kombu_reconnect_delay': value => $::trove::kombu_reconnect_delay;
+      'DEFAULT/rabbit_password':           value => $::trove::rabbit_password, secret => true;
+      'DEFAULT/rabbit_userid':             value => $::trove::rabbit_userid;
+      'DEFAULT/rabbit_virtual_host':       value => $::trove::rabbit_virtual_host;
+      'DEFAULT/rabbit_use_ssl':            value => $::trove::rabbit_use_ssl;
+      'DEFAULT/amqp_durable_queues':       value => $::trove::amqp_durable_queues;
+      'DEFAULT/rabbit_notification_topic': value => $::trove::rabbit_notification_topic;
     }
@@ -119,13 +108,7 @@
     if $::trove::rabbit_use_ssl {
-
-      if $::trove::kombu_ssl_ca_certs {
-        trove_guestagent_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs; }
-      } else {
-        trove_guestagent_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent; }
-      }
-
-      if $::trove::kombu_ssl_certfile or $::trove::kombu_ssl_keyfile {
         trove_guestagent_config {
-          'oslo_messaging_rabbit/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
-          'oslo_messaging_rabbit/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
+        'DEFAULT/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs;
+        'DEFAULT/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
+        'DEFAULT/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
+        'DEFAULT/kombu_ssl_version':  value => $::trove::kombu_ssl_version;
         }
@@ -133,4 +116,6 @@
         trove_guestagent_config {
-          'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
-          'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
+        'DEFAULT/kombu_ssl_ca_certs': ensure => absent;
+        'DEFAULT/kombu_ssl_certfile': ensure => absent;
+        'DEFAULT/kombu_ssl_keyfile':  ensure => absent;
+        'DEFAULT/kombu_ssl_version':  ensure => absent;
         }
@@ -138,14 +123,13 @@
 
-      if $::trove::kombu_ssl_version {
-        trove_guestagent_config { 'oslo_messaging_rabbit/kombu_ssl_version':  value => $::trove::kombu_ssl_version; }
-      } else {
-        trove_guestagent_config { 'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent; }
+    if $::trove::rabbit_hosts {
+      trove_guestagent_config {
+        'DEFAULT/rabbit_hosts':     value => join($::trove::rabbit_hosts, ',');
+        'DEFAULT/rabbit_ha_queues': value => true
       }
-
     } else {
       trove_guestagent_config {
-        'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent;
+        'DEFAULT/rabbit_host':      value => $::trove::rabbit_host;
+        'DEFAULT/rabbit_port':      value => $::trove::rabbit_port;
+        'DEFAULT/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}";
+        'DEFAULT/rabbit_ha_queues': value => false
       }
--- b/trove/manifests/init.pp
+++ a/trove/manifests/init.pp
@@ -77,3 +77,3 @@
 #   available on some distributions.
-#   Defaults to 'TLSv1'
+#   Defaults to 'SSLv3'
 #
@@ -181,3 +181,3 @@
   $kombu_ssl_keyfile            = undef,
-  $kombu_ssl_version            = 'TLSv1',
+  $kombu_ssl_version            = 'SSLv3',
   $amqp_durable_queues          = false,
--- b/trove/manifests/taskmanager.pp
+++ a/trove/manifests/taskmanager.pp
@@ -122,21 +122,9 @@
   if $::trove::rpc_backend == 'trove.openstack.common.rpc.impl_kombu' {
-    if ! $::trove::rabbit_password {
-      fail('When rpc_backend is rabbitmq, you must set rabbit password')
-    }
-    if $::trove::rabbit_hosts {
-      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_hosts':     value  => join($::trove::rabbit_hosts, ',') }
-      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value  => true }
-    } else  {
-      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_host':      value => $::trove::rabbit_host }
-      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_port':      value => $::trove::rabbit_port }
-      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
-      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value => false }
-    }
-
+    # I may want to support exporting and collecting these
     trove_taskmanager_config {
-      'oslo_messaging_rabbit/rabbit_userid':         value => $::trove::rabbit_user;
-      'oslo_messaging_rabbit/rabbit_password':       value => $::trove::rabbit_password, secret => true;
-      'oslo_messaging_rabbit/rabbit_virtual_host':   value => $::trove::rabbit_virtual_host;
-      'oslo_messaging_rabbit/rabbit_use_ssl':        value => $::trove::rabbit_use_ssl;
-      'oslo_messaging_rabbit/kombu_reconnect_delay': value => $::trove::kombu_reconnect_delay;
+      'DEFAULT/rabbit_password':     value => $::trove::rabbit_password, secret => true;
+      'DEFAULT/rabbit_userid':       value => $::trove::rabbit_userid;
+      'DEFAULT/rabbit_virtual_host': value => $::trove::rabbit_virtual_host;
+      'DEFAULT/rabbit_use_ssl':      value => $::trove::rabbit_use_ssl;
+      'DEFAULT/amqp_durable_queues': value => $::trove::amqp_durable_queues;
     }
@@ -144,13 +132,7 @@
     if $::trove::rabbit_use_ssl {
-
-      if $::trove::kombu_ssl_ca_certs {
-        trove_taskmanager_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs; }
-      } else {
-        trove_taskmanager_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent; }
-      }
-
-      if $::trove::kombu_ssl_certfile or $::trove::kombu_ssl_keyfile {
         trove_taskmanager_config {
-          'oslo_messaging_rabbit/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
-          'oslo_messaging_rabbit/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
+        'DEFAULT/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs;
+        'DEFAULT/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
+        'DEFAULT/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
+        'DEFAULT/kombu_ssl_version':  value => $::trove::kombu_ssl_version;
         }
@@ -158,20 +140,17 @@
         trove_taskmanager_config {
-          'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
-          'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
-        }
+        'DEFAULT/kombu_ssl_ca_certs': ensure => absent;
+        'DEFAULT/kombu_ssl_certfile': ensure => absent;
+        'DEFAULT/kombu_ssl_keyfile':  ensure => absent;
+        'DEFAULT/kombu_ssl_version':  ensure => absent;
       }
-
-      if $::trove::kombu_ssl_version {
-        trove_taskmanager_config { 'oslo_messaging_rabbit/kombu_ssl_version':  value => $::trove::kombu_ssl_version; }
-      } else {
-        trove_taskmanager_config { 'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent; }
       }
 
+    if $::trove::rabbit_hosts {
+      trove_taskmanager_config { 'DEFAULT/rabbit_hosts':     value => join($::trove::rabbit_hosts, ',') }
+      trove_taskmanager_config { 'DEFAULT/rabbit_ha_queues': value => true }
     } else {
-      trove_taskmanager_config {
-        'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
-        'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent;
-      }
+      trove_taskmanager_config { 'DEFAULT/rabbit_host':      value => $::trove::rabbit_host }
+      trove_taskmanager_config { 'DEFAULT/rabbit_port':      value => $::trove::rabbit_port }
+      trove_taskmanager_config { 'DEFAULT/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
+      trove_taskmanager_config { 'DEFAULT/rabbit_ha_queues': value => false }
     }
--- b/trove/spec/classes/trove_api_spec.rb
+++ a/trove/spec/classes/trove_api_spec.rb
@@ -83,3 +83,3 @@
         it 'configures trove-api with RabbitMQ' do
-          is_expected.to contain_trove_config('oslo_messaging_rabbit/rabbit_host').with_value('10.0.0.1')
+          is_expected.to contain_trove_config('DEFAULT/rabbit_host').with_value('10.0.0.1')
         end
@@ -94,3 +94,3 @@
         it 'configures trove-api with RabbitMQ' do
-          is_expected.to contain_trove_config('oslo_messaging_rabbit/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
+          is_expected.to contain_trove_config('DEFAULT/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
         end
@@ -109,56 +109,2 @@
     end
-
-    context 'with SSL enabled with kombu' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => true,
-           kombu_ssl_ca_certs => '/path/to/ssl/ca/certs',
-           kombu_ssl_certfile => '/path/to/ssl/cert/file',
-           kombu_ssl_keyfile  => '/path/to/ssl/keyfile',
-           kombu_ssl_version  => 'TLSv1'}"
-      end
-
-      it do
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_value('/path/to/ssl/ca/certs')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_value('/path/to/ssl/cert/file')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_value('/path/to/ssl/keyfile')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
-      end
-    end
-
-    context 'with SSL enabled without kombu' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => true}"
-      end
-
-      it do
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
-      end
-    end
-
-    context 'with SSL disabled' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => false,
-           kombu_ssl_version  => 'TLSv1'}"
-      end
-
-      it do
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('false')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
-        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_version').with_ensure('absent')
-      end
-    end
-
   end
--- b/trove/spec/classes/trove_conductor_spec.rb
+++ a/trove/spec/classes/trove_conductor_spec.rb
@@ -42,3 +42,3 @@
         it 'configures trove-conductor with RabbitMQ' do
-          is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/rabbit_host').with_value('10.0.0.1')
+          is_expected.to contain_trove_conductor_config('DEFAULT/rabbit_host').with_value('10.0.0.1')
         end
@@ -53,3 +53,3 @@
         it 'configures trove-conductor with RabbitMQ' do
-          is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
+          is_expected.to contain_trove_conductor_config('DEFAULT/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
         end
@@ -68,56 +68,2 @@
     end
-
-    context 'with SSL enabled with kombu' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => true,
-           kombu_ssl_ca_certs => '/path/to/ssl/ca/certs',
-           kombu_ssl_certfile => '/path/to/ssl/cert/file',
-           kombu_ssl_keyfile  => '/path/to/ssl/keyfile',
-           kombu_ssl_version  => 'TLSv1'}"
-      end
-
-      it do
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_value('/path/to/ssl/ca/certs')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_value('/path/to/ssl/cert/file')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_value('/path/to/ssl/keyfile')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
-      end
-    end
-
-    context 'with SSL enabled without kombu' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => true}"
-      end
-
-      it do
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
-      end
-    end
-
-    context 'with SSL disabled' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => false,
-           kombu_ssl_version  => 'TLSv1'}"
-      end
-
-      it do
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('false')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
-        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_version').with_ensure('absent')
-      end
-    end
-
   end
--- b/trove/spec/classes/trove_guestagent_spec.rb
+++ a/trove/spec/classes/trove_guestagent_spec.rb
@@ -42,3 +42,3 @@
         it 'configures trove-guestagent with RabbitMQ' do
-          is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/rabbit_host').with_value('10.0.0.1')
+          is_expected.to contain_trove_guestagent_config('DEFAULT/rabbit_host').with_value('10.0.0.1')
         end
@@ -53,3 +53,3 @@
         it 'configures trove-guestagent with RabbitMQ' do
-          is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
+          is_expected.to contain_trove_guestagent_config('DEFAULT/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
         end
@@ -72,55 +72,2 @@
       end
-    end
-
-    context 'with SSL enabled with kombu' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => true,
-           kombu_ssl_ca_certs => '/path/to/ssl/ca/certs',
-           kombu_ssl_certfile => '/path/to/ssl/cert/file',
-           kombu_ssl_keyfile  => '/path/to/ssl/keyfile',
-           kombu_ssl_version  => 'TLSv1'}"
-      end
-
-      it do
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_value('/path/to/ssl/ca/certs')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_value('/path/to/ssl/cert/file')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_value('/path/to/ssl/keyfile')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
-      end
-    end
-
-    context 'with SSL enabled without kombu' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => true}"
-      end
-
-      it do
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
-      end
-    end
-
-    context 'with SSL disabled' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => false,
-           kombu_ssl_version  => 'TLSv1'}"
-      end
-
-      it do
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('false')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
-        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_version').with_ensure('absent')
-      end
     end
--- b/trove/spec/classes/trove_taskmanager_spec.rb
+++ a/trove/spec/classes/trove_taskmanager_spec.rb
@@ -61,3 +61,3 @@
         it 'configures trove-taskmanager with RabbitMQ' do
-          is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/rabbit_host').with_value('10.0.0.1')
+          is_expected.to contain_trove_taskmanager_config('DEFAULT/rabbit_host').with_value('10.0.0.1')
         end
@@ -72,3 +72,3 @@
         it 'configures trove-taskmanager with RabbitMQ' do
-          is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
+          is_expected.to contain_trove_taskmanager_config('DEFAULT/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
         end
@@ -127,55 +127,2 @@
     end
-    context 'with SSL enabled with kombu' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => true,
-           kombu_ssl_ca_certs => '/path/to/ssl/ca/certs',
-           kombu_ssl_certfile => '/path/to/ssl/cert/file',
-           kombu_ssl_keyfile  => '/path/to/ssl/keyfile',
-           kombu_ssl_version  => 'TLSv1'}"
-      end
-
-      it do
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_value('/path/to/ssl/ca/certs')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_value('/path/to/ssl/cert/file')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_value('/path/to/ssl/keyfile')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
-      end
-    end
-
-    context 'with SSL enabled without kombu' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => true}"
-      end
-
-      it do
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
-      end
-    end
-
-    context 'with SSL disabled' do
-      let :pre_condition do
-        "class { 'trove':
-           nova_proxy_admin_pass => 'verysecrete',
-           rabbit_use_ssl     => false,
-           kombu_ssl_version  => 'TLSv1'}"
-      end
-
-      it do
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('false')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
-        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_version').with_ensure('absent')
-      end
-    end
-
   end
--- a/manifests/api.pp
+++ b/manifests/api.pp
@@ -278,9 +278,21 @@
   if $::trove::rpc_backend == 'trove.openstack.common.rpc.impl_kombu' {
-    # I may want to support exporting and collecting these
+    if ! $::trove::rabbit_password {
+      fail('When rpc_backend is rabbitmq, you must set rabbit password')
+    }
+    if $::trove::rabbit_hosts {
+      trove_config { 'oslo_messaging_rabbit/rabbit_hosts':     value  => join($::trove::rabbit_hosts, ',') }
+      trove_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value  => true }
+    } else  {
+      trove_config { 'oslo_messaging_rabbit/rabbit_host':      value => $::trove::rabbit_host }
+      trove_config { 'oslo_messaging_rabbit/rabbit_port':      value => $::trove::rabbit_port }
+      trove_config { 'oslo_messaging_rabbit/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
+      trove_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value => false }
+    }
+
     trove_config {
-      'DEFAULT/rabbit_password':     value => $::trove::rabbit_password, secret => true;
-      'DEFAULT/rabbit_userid':       value => $::trove::rabbit_userid;
-      'DEFAULT/rabbit_virtual_host': value => $::trove::rabbit_virtual_host;
-      'DEFAULT/rabbit_use_ssl':      value => $::trove::rabbit_use_ssl;
-      'DEFAULT/amqp_durable_queues': value => $::trove::amqp_durable_queues;
+      'oslo_messaging_rabbit/rabbit_userid':         value => $::trove::rabbit_user;
+      'oslo_messaging_rabbit/rabbit_password':       value => $::trove::rabbit_password, secret => true;
+      'oslo_messaging_rabbit/rabbit_virtual_host':   value => $::trove::rabbit_virtual_host;
+      'oslo_messaging_rabbit/rabbit_use_ssl':        value => $::trove::rabbit_use_ssl;
+      'oslo_messaging_rabbit/kombu_reconnect_delay': value => $::trove::kombu_reconnect_delay;
     }
@@ -288,7 +300,13 @@
     if $::trove::rabbit_use_ssl {
+
+      if $::trove::kombu_ssl_ca_certs {
+        trove_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs; }
+      } else {
+        trove_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent; }
+      }
+
+      if $::trove::kombu_ssl_certfile or $::trove::kombu_ssl_keyfile {
       trove_config {
-        'DEFAULT/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs;
-        'DEFAULT/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
-        'DEFAULT/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
-        'DEFAULT/kombu_ssl_version':  value => $::trove::kombu_ssl_version;
+          'oslo_messaging_rabbit/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
+          'oslo_messaging_rabbit/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
       }
@@ -296,6 +314,4 @@
       trove_config {
-        'DEFAULT/kombu_ssl_ca_certs': ensure => absent;
-        'DEFAULT/kombu_ssl_certfile': ensure => absent;
-        'DEFAULT/kombu_ssl_keyfile':  ensure => absent;
-        'DEFAULT/kombu_ssl_version':  ensure => absent;
+          'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
+          'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
       }
@@ -303,10 +319,15 @@
 
-    if $::trove::rabbit_hosts {
-      trove_config { 'DEFAULT/rabbit_hosts':     value => join($::trove::rabbit_hosts, ',') }
-      trove_config { 'DEFAULT/rabbit_ha_queues': value => true }
+      if $::trove::kombu_ssl_version {
+        trove_config { 'oslo_messaging_rabbit/kombu_ssl_version':  value => $::trove::kombu_ssl_version; }
     } else {
-      trove_config { 'DEFAULT/rabbit_host':      value => $::trove::rabbit_host }
-      trove_config { 'DEFAULT/rabbit_port':      value => $::trove::rabbit_port }
-      trove_config { 'DEFAULT/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
-      trove_config { 'DEFAULT/rabbit_ha_queues': value => false }
+        trove_config { 'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent; }
+      }
+
+    } else {
+      trove_config {
+        'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent;
+      }
     }
--- a/manifests/conductor.pp
+++ b/manifests/conductor.pp
@@ -108,10 +108,21 @@
   if $::trove::rpc_backend == 'trove.openstack.common.rpc.impl_kombu' {
-    # I may want to support exporting and collecting these
+    if ! $::trove::rabbit_password {
+      fail('When rpc_backend is rabbitmq, you must set rabbit password')
+    }
+    if $::trove::rabbit_hosts {
+      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_hosts':     value  => join($::trove::rabbit_hosts, ',') }
+      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value  => true }
+    } else  {
+      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_host':      value => $::trove::rabbit_host }
+      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_port':      value => $::trove::rabbit_port }
+      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
+      trove_conductor_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value => false }
+    }
+
     trove_conductor_config {
-      'DEFAULT/rabbit_password':           value => $::trove::rabbit_password, secret => true;
-      'DEFAULT/rabbit_userid':             value => $::trove::rabbit_userid;
-      'DEFAULT/rabbit_virtual_host':       value => $::trove::rabbit_virtual_host;
-      'DEFAULT/rabbit_use_ssl':            value => $::trove::rabbit_use_ssl;
-      'DEFAULT/amqp_durable_queues':       value => $::trove::amqp_durable_queues;
-      'DEFAULT/rabbit_notification_topic': value => $::trove::rabbit_notification_topic;
+      'oslo_messaging_rabbit/rabbit_userid':         value => $::trove::rabbit_user;
+      'oslo_messaging_rabbit/rabbit_password':       value => $::trove::rabbit_password, secret => true;
+      'oslo_messaging_rabbit/rabbit_virtual_host':   value => $::trove::rabbit_virtual_host;
+      'oslo_messaging_rabbit/rabbit_use_ssl':        value => $::trove::rabbit_use_ssl;
+      'oslo_messaging_rabbit/kombu_reconnect_delay': value => $::trove::kombu_reconnect_delay;
     }
@@ -119,7 +130,13 @@
     if $::trove::rabbit_use_ssl {
+
+      if $::trove::kombu_ssl_ca_certs {
+        trove_conductor_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs; }
+      } else {
+        trove_conductor_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent; }
+      }
+
+      if $::trove::kombu_ssl_certfile or $::trove::kombu_ssl_keyfile {
       trove_conductor_config {
-        'DEFAULT/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs;
-        'DEFAULT/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
-        'DEFAULT/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
-        'DEFAULT/kombu_ssl_version':  value => $::trove::kombu_ssl_version;
+          'oslo_messaging_rabbit/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
+          'oslo_messaging_rabbit/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
       }
@@ -127,6 +144,4 @@
       trove_conductor_config {
-        'DEFAULT/kombu_ssl_ca_certs': ensure => absent;
-        'DEFAULT/kombu_ssl_certfile': ensure => absent;
-        'DEFAULT/kombu_ssl_keyfile':  ensure => absent;
-        'DEFAULT/kombu_ssl_version':  ensure => absent;
+          'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
+          'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
       }
@@ -134,10 +149,15 @@
 
-    if $::trove::rabbit_hosts {
-      trove_conductor_config { 'DEFAULT/rabbit_hosts':     value => join($::trove::rabbit_hosts, ',') }
-      trove_conductor_config { 'DEFAULT/rabbit_ha_queues': value => true }
+      if $::trove::kombu_ssl_version {
+        trove_conductor_config { 'oslo_messaging_rabbit/kombu_ssl_version':  value => $::trove::kombu_ssl_version; }
     } else {
-      trove_conductor_config { 'DEFAULT/rabbit_host':      value => $::trove::rabbit_host }
-      trove_conductor_config { 'DEFAULT/rabbit_port':      value => $::trove::rabbit_port }
-      trove_conductor_config { 'DEFAULT/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
-      trove_conductor_config { 'DEFAULT/rabbit_ha_queues': value => false }
+        trove_conductor_config { 'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent; }
+      }
+
+    } else {
+      trove_conductor_config {
+        'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent;
+      }
     }
--- a/manifests/guestagent.pp
+++ b/manifests/guestagent.pp
@@ -97,10 +97,21 @@
   if $::trove::rpc_backend == 'trove.openstack.common.rpc.impl_kombu' {
-    # I may want to support exporting and collecting these
+      if ! $::trove::rabbit_password {
+      fail('When rpc_backend is rabbitmq, you must set rabbit password')
+    }
+    if $::trove::rabbit_hosts {
+      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_hosts':     value  => join($::trove::rabbit_hosts, ',') }
+      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value  => true }
+    } else  {
+      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_host':      value => $::trove::rabbit_host }
+      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_port':      value => $::trove::rabbit_port }
+      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
+      trove_guestagent_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value => false }
+    }
+
     trove_guestagent_config {
-      'DEFAULT/rabbit_password':           value => $::trove::rabbit_password, secret => true;
-      'DEFAULT/rabbit_userid':             value => $::trove::rabbit_userid;
-      'DEFAULT/rabbit_virtual_host':       value => $::trove::rabbit_virtual_host;
-      'DEFAULT/rabbit_use_ssl':            value => $::trove::rabbit_use_ssl;
-      'DEFAULT/amqp_durable_queues':       value => $::trove::amqp_durable_queues;
-      'DEFAULT/rabbit_notification_topic': value => $::trove::rabbit_notification_topic;
+      'oslo_messaging_rabbit/rabbit_userid':         value => $::trove::rabbit_user;
+      'oslo_messaging_rabbit/rabbit_password':       value => $::trove::rabbit_password, secret => true;
+      'oslo_messaging_rabbit/rabbit_virtual_host':   value => $::trove::rabbit_virtual_host;
+      'oslo_messaging_rabbit/rabbit_use_ssl':        value => $::trove::rabbit_use_ssl;
+      'oslo_messaging_rabbit/kombu_reconnect_delay': value => $::trove::kombu_reconnect_delay;
     }
@@ -108,7 +119,13 @@
     if $::trove::rabbit_use_ssl {
+
+      if $::trove::kombu_ssl_ca_certs {
+        trove_guestagent_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs; }
+      } else {
+        trove_guestagent_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent; }
+      }
+
+      if $::trove::kombu_ssl_certfile or $::trove::kombu_ssl_keyfile {
       trove_guestagent_config {
-        'DEFAULT/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs;
-        'DEFAULT/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
-        'DEFAULT/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
-        'DEFAULT/kombu_ssl_version':  value => $::trove::kombu_ssl_version;
+          'oslo_messaging_rabbit/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
+          'oslo_messaging_rabbit/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
       }
@@ -116,6 +133,4 @@
       trove_guestagent_config {
-        'DEFAULT/kombu_ssl_ca_certs': ensure => absent;
-        'DEFAULT/kombu_ssl_certfile': ensure => absent;
-        'DEFAULT/kombu_ssl_keyfile':  ensure => absent;
-        'DEFAULT/kombu_ssl_version':  ensure => absent;
+          'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
+          'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
       }
@@ -123,13 +138,14 @@
 
-    if $::trove::rabbit_hosts {
-      trove_guestagent_config {
-        'DEFAULT/rabbit_hosts':     value => join($::trove::rabbit_hosts, ',');
-        'DEFAULT/rabbit_ha_queues': value => true
+      if $::trove::kombu_ssl_version {
+        trove_guestagent_config { 'oslo_messaging_rabbit/kombu_ssl_version':  value => $::trove::kombu_ssl_version; }
+      } else {
+        trove_guestagent_config { 'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent; }
       }
+
     } else {
       trove_guestagent_config {
-        'DEFAULT/rabbit_host':      value => $::trove::rabbit_host;
-        'DEFAULT/rabbit_port':      value => $::trove::rabbit_port;
-        'DEFAULT/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}";
-        'DEFAULT/rabbit_ha_queues': value => false
+        'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent;
       }
--- a/manifests/init.pp
+++ b/manifests/init.pp
@@ -77,3 +77,3 @@
 #   available on some distributions.
-#   Defaults to 'SSLv3'
+#   Defaults to 'TLSv1'
 #
@@ -181,3 +181,3 @@
   $kombu_ssl_keyfile            = undef,
-  $kombu_ssl_version            = 'SSLv3',
+  $kombu_ssl_version            = 'TLSv1',
   $amqp_durable_queues          = false,
--- a/manifests/taskmanager.pp
+++ b/manifests/taskmanager.pp
@@ -122,9 +122,21 @@
   if $::trove::rpc_backend == 'trove.openstack.common.rpc.impl_kombu' {
-    # I may want to support exporting and collecting these
+    if ! $::trove::rabbit_password {
+      fail('When rpc_backend is rabbitmq, you must set rabbit password')
+    }
+    if $::trove::rabbit_hosts {
+      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_hosts':     value  => join($::trove::rabbit_hosts, ',') }
+      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value  => true }
+    } else  {
+      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_host':      value => $::trove::rabbit_host }
+      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_port':      value => $::trove::rabbit_port }
+      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
+      trove_taskmanager_config { 'oslo_messaging_rabbit/rabbit_ha_queues': value => false }
+    }
+
     trove_taskmanager_config {
-      'DEFAULT/rabbit_password':     value => $::trove::rabbit_password, secret => true;
-      'DEFAULT/rabbit_userid':       value => $::trove::rabbit_userid;
-      'DEFAULT/rabbit_virtual_host': value => $::trove::rabbit_virtual_host;
-      'DEFAULT/rabbit_use_ssl':      value => $::trove::rabbit_use_ssl;
-      'DEFAULT/amqp_durable_queues': value => $::trove::amqp_durable_queues;
+      'oslo_messaging_rabbit/rabbit_userid':         value => $::trove::rabbit_user;
+      'oslo_messaging_rabbit/rabbit_password':       value => $::trove::rabbit_password, secret => true;
+      'oslo_messaging_rabbit/rabbit_virtual_host':   value => $::trove::rabbit_virtual_host;
+      'oslo_messaging_rabbit/rabbit_use_ssl':        value => $::trove::rabbit_use_ssl;
+      'oslo_messaging_rabbit/kombu_reconnect_delay': value => $::trove::kombu_reconnect_delay;
     }
@@ -132,7 +144,13 @@
     if $::trove::rabbit_use_ssl {
+
+      if $::trove::kombu_ssl_ca_certs {
+        trove_taskmanager_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs; }
+      } else {
+        trove_taskmanager_config { 'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent; }
+      }
+
+      if $::trove::kombu_ssl_certfile or $::trove::kombu_ssl_keyfile {
       trove_taskmanager_config {
-        'DEFAULT/kombu_ssl_ca_certs': value => $::trove::kombu_ssl_ca_certs;
-        'DEFAULT/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
-        'DEFAULT/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
-        'DEFAULT/kombu_ssl_version':  value => $::trove::kombu_ssl_version;
+          'oslo_messaging_rabbit/kombu_ssl_certfile': value => $::trove::kombu_ssl_certfile;
+          'oslo_messaging_rabbit/kombu_ssl_keyfile':  value => $::trove::kombu_ssl_keyfile;
       }
@@ -140,6 +158,4 @@
       trove_taskmanager_config {
-        'DEFAULT/kombu_ssl_ca_certs': ensure => absent;
-        'DEFAULT/kombu_ssl_certfile': ensure => absent;
-        'DEFAULT/kombu_ssl_keyfile':  ensure => absent;
-        'DEFAULT/kombu_ssl_version':  ensure => absent;
+          'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
+          'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
       }
@@ -147,10 +163,15 @@
 
-    if $::trove::rabbit_hosts {
-      trove_taskmanager_config { 'DEFAULT/rabbit_hosts':     value => join($::trove::rabbit_hosts, ',') }
-      trove_taskmanager_config { 'DEFAULT/rabbit_ha_queues': value => true }
+      if $::trove::kombu_ssl_version {
+        trove_taskmanager_config { 'oslo_messaging_rabbit/kombu_ssl_version':  value => $::trove::kombu_ssl_version; }
     } else {
-      trove_taskmanager_config { 'DEFAULT/rabbit_host':      value => $::trove::rabbit_host }
-      trove_taskmanager_config { 'DEFAULT/rabbit_port':      value => $::trove::rabbit_port }
-      trove_taskmanager_config { 'DEFAULT/rabbit_hosts':     value => "${::trove::rabbit_host}:${::trove::rabbit_port}" }
-      trove_taskmanager_config { 'DEFAULT/rabbit_ha_queues': value => false }
+        trove_taskmanager_config { 'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent; }
+      }
+
+    } else {
+      trove_taskmanager_config {
+        'oslo_messaging_rabbit/kombu_ssl_ca_certs': ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_certfile': ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_keyfile':  ensure => absent;
+        'oslo_messaging_rabbit/kombu_ssl_version':  ensure => absent;
+      }
     }
--- a/spec/classes/trove_api_spec.rb
+++ b/spec/classes/trove_api_spec.rb
@@ -83,3 +83,3 @@
         it 'configures trove-api with RabbitMQ' do
-          is_expected.to contain_trove_config('DEFAULT/rabbit_host').with_value('10.0.0.1')
+          is_expected.to contain_trove_config('oslo_messaging_rabbit/rabbit_host').with_value('10.0.0.1')
         end
@@ -94,3 +94,3 @@
         it 'configures trove-api with RabbitMQ' do
-          is_expected.to contain_trove_config('DEFAULT/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
+          is_expected.to contain_trove_config('oslo_messaging_rabbit/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
         end
@@ -109,2 +109,56 @@
     end
+
+    context 'with SSL enabled with kombu' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => true,
+           kombu_ssl_ca_certs => '/path/to/ssl/ca/certs',
+           kombu_ssl_certfile => '/path/to/ssl/cert/file',
+           kombu_ssl_keyfile  => '/path/to/ssl/keyfile',
+           kombu_ssl_version  => 'TLSv1'}"
+      end
+
+      it do
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_value('/path/to/ssl/ca/certs')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_value('/path/to/ssl/cert/file')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_value('/path/to/ssl/keyfile')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
+      end
+    end
+
+    context 'with SSL enabled without kombu' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => true}"
+      end
+
+      it do
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
+      end
+    end
+
+    context 'with SSL disabled' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => false,
+           kombu_ssl_version  => 'TLSv1'}"
+      end
+
+      it do
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('false')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
+        is_expected.to contain_trove_config('oslo_messaging_rabbit/kombu_ssl_version').with_ensure('absent')
+      end
+    end
+
   end
--- a/spec/classes/trove_conductor_spec.rb
+++ b/spec/classes/trove_conductor_spec.rb
@@ -42,3 +42,3 @@
         it 'configures trove-conductor with RabbitMQ' do
-          is_expected.to contain_trove_conductor_config('DEFAULT/rabbit_host').with_value('10.0.0.1')
+          is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/rabbit_host').with_value('10.0.0.1')
         end
@@ -53,3 +53,3 @@
         it 'configures trove-conductor with RabbitMQ' do
-          is_expected.to contain_trove_conductor_config('DEFAULT/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
+          is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
         end
@@ -68,2 +68,56 @@
     end
+
+    context 'with SSL enabled with kombu' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => true,
+           kombu_ssl_ca_certs => '/path/to/ssl/ca/certs',
+           kombu_ssl_certfile => '/path/to/ssl/cert/file',
+           kombu_ssl_keyfile  => '/path/to/ssl/keyfile',
+           kombu_ssl_version  => 'TLSv1'}"
+      end
+
+      it do
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_value('/path/to/ssl/ca/certs')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_value('/path/to/ssl/cert/file')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_value('/path/to/ssl/keyfile')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
+      end
+    end
+
+    context 'with SSL enabled without kombu' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => true}"
+      end
+
+      it do
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
+      end
+    end
+
+    context 'with SSL disabled' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => false,
+           kombu_ssl_version  => 'TLSv1'}"
+      end
+
+      it do
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('false')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
+        is_expected.to contain_trove_conductor_config('oslo_messaging_rabbit/kombu_ssl_version').with_ensure('absent')
+      end
+    end
+
   end
--- a/spec/classes/trove_guestagent_spec.rb
+++ b/spec/classes/trove_guestagent_spec.rb
@@ -42,3 +42,3 @@
         it 'configures trove-guestagent with RabbitMQ' do
-          is_expected.to contain_trove_guestagent_config('DEFAULT/rabbit_host').with_value('10.0.0.1')
+          is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/rabbit_host').with_value('10.0.0.1')
         end
@@ -53,3 +53,3 @@
         it 'configures trove-guestagent with RabbitMQ' do
-          is_expected.to contain_trove_guestagent_config('DEFAULT/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
+          is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
         end
@@ -72,2 +72,55 @@
       end
+    end
+
+    context 'with SSL enabled with kombu' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => true,
+           kombu_ssl_ca_certs => '/path/to/ssl/ca/certs',
+           kombu_ssl_certfile => '/path/to/ssl/cert/file',
+           kombu_ssl_keyfile  => '/path/to/ssl/keyfile',
+           kombu_ssl_version  => 'TLSv1'}"
+      end
+
+      it do
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_value('/path/to/ssl/ca/certs')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_value('/path/to/ssl/cert/file')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_value('/path/to/ssl/keyfile')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
+      end
+    end
+
+    context 'with SSL enabled without kombu' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => true}"
+      end
+
+      it do
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
+      end
+    end
+
+    context 'with SSL disabled' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => false,
+           kombu_ssl_version  => 'TLSv1'}"
+      end
+
+      it do
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('false')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
+        is_expected.to contain_trove_guestagent_config('oslo_messaging_rabbit/kombu_ssl_version').with_ensure('absent')
+      end
     end
--- a/spec/classes/trove_taskmanager_spec.rb
+++ b/spec/classes/trove_taskmanager_spec.rb
@@ -61,3 +61,3 @@
         it 'configures trove-taskmanager with RabbitMQ' do
-          is_expected.to contain_trove_taskmanager_config('DEFAULT/rabbit_host').with_value('10.0.0.1')
+          is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/rabbit_host').with_value('10.0.0.1')
         end
@@ -72,3 +72,3 @@
         it 'configures trove-taskmanager with RabbitMQ' do
-          is_expected.to contain_trove_taskmanager_config('DEFAULT/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
+          is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/rabbit_hosts').with_value(['10.0.0.1,10.0.0.2'])
         end
@@ -127,2 +127,55 @@
     end
+    context 'with SSL enabled with kombu' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => true,
+           kombu_ssl_ca_certs => '/path/to/ssl/ca/certs',
+           kombu_ssl_certfile => '/path/to/ssl/cert/file',
+           kombu_ssl_keyfile  => '/path/to/ssl/keyfile',
+           kombu_ssl_version  => 'TLSv1'}"
+      end
+
+      it do
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_value('/path/to/ssl/ca/certs')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_value('/path/to/ssl/cert/file')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_value('/path/to/ssl/keyfile')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
+      end
+    end
+
+    context 'with SSL enabled without kombu' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => true}"
+      end
+
+      it do
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('true')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_version').with_value('TLSv1')
+      end
+    end
+
+    context 'with SSL disabled' do
+      let :pre_condition do
+        "class { 'trove':
+           nova_proxy_admin_pass => 'verysecrete',
+           rabbit_use_ssl     => false,
+           kombu_ssl_version  => 'TLSv1'}"
+      end
+
+      it do
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('false')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_ca_certs').with_ensure('absent')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_certfile').with_ensure('absent')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_keyfile').with_ensure('absent')
+        is_expected.to contain_trove_taskmanager_config('oslo_messaging_rabbit/kombu_ssl_version').with_ensure('absent')
+      end
+    end
+
   end
