Enable ssl on rabbitmq/mysql

This patch enabled TLS on rabbitmq/mysql for the following modes:
 * virtual-mcp-pike-ssl
 * virtual-mcp-pike-ssl-barbican

Change-Id: Ib2346416173e2500586b16e2efa1cc5157b268fa
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/compute.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/compute.yml
index 1c34ae7..0ad9af0 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/compute.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/compute.yml
@@ -26,6 +26,12 @@
          ipflush_onchange: true
        external_interface:
          ipflush_onchange: true
+  ceilometer:
+    agent:
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   nova:
     compute:
       vncproxy_url: http://${_param:cluster_vip_address}:6080
@@ -37,6 +43,13 @@
         protocol: https
       image:
         protocol: https
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   neutron:
     compute:
       notification:
@@ -53,4 +66,11 @@
       backend:
         extension:
           bagpipe_bgpvpn:
-            enabled: True
\ No newline at end of file
+            enabled: True
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/control.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/control.yml
index 2b1b0b8..780ead5 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/control.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/control.yml
@@ -1,5 +1,7 @@
 classes:
 - system.salt.minion.cert.proxy
+- system.salt.minion.cert.mysql.server
+- system.salt.minion.cert.rabbitmq_server
 - system.linux.system.lowmem
 - system.linux.system.repo.mcp.apt_mirantis.glusterfs
 - system.linux.system.repo.mcp.apt_mirantis.openstack
@@ -7,6 +9,7 @@
 - system.linux.system.repo.mcp.apt_mirantis.saltstack_2016_3
 - system.memcached.server.single
 - system.rabbitmq.server.cluster
+- service.rabbitmq.server.ssl
 - system.rabbitmq.server.vhost.openstack
 - system.apache.server.site.manila
 - system.apache.server.site.nova-placement
@@ -29,6 +32,7 @@
 - system.heat.server.cluster
 - system.designate.server.cluster
 - system.galera.server.cluster
+- service.galera.ssl
 - system.galera.server.database.cinder
 - system.galera.server.database.glance
 - system.galera.server.database.heat
@@ -75,6 +79,10 @@
     apache_nova_placement_ssl: ${_param:nginx_proxy_ssl}
     apache_cinder_api_address: ${_param:cluster_local_address}
     apache_cinder_ssl: ${_param:nginx_proxy_ssl}
+  rabbitmq:
+    server:
+      ssl:
+        enabled: ${_param:rabbitmq_ssl_enabled}
   nginx:
     server:
       site:
@@ -105,6 +113,13 @@
   keystone:
     server:
       admin_email: ${_param:admin_email}
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   designate:
     pool_manager:
       enabled: ${_param:designate_pool_manager_enabled}
@@ -115,6 +130,13 @@
       bind:
         api:
           address: 127.0.0.1
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
       backend:
         pdns4:
           api_token: ${_param:designate_pdns_api_key}
@@ -151,6 +173,13 @@
         protocol: https
       registry:
         protocol: https
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   heat:
     server:
       bind:
@@ -162,6 +191,13 @@
           address: 127.0.0.1
       identity:
         protocol: https
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   neutron:
     server:
       bind:
@@ -170,6 +206,13 @@
         protocol: https
       l2gw:
         enabled: true
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   nova:
     controller:
       networking: dvr
@@ -190,6 +233,13 @@
         protocol: https
       vncproxy_url: http://${_param:cluster_vip_address}:6080
       workers: 1
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   cinder:
     controller:
       identity:
@@ -198,11 +248,25 @@
         host: 127.0.0.1
       glance:
         protocol: https
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   manila:
     common:
       identity:
         protocol: https
       default_share_type: default
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   salt:
     minion:
       cert:
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/gateway.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/gateway.yml
index a61319c..373433c 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/gateway.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/gateway.yml
@@ -23,6 +23,13 @@
         enabled: false
         ovsdb_hosts:
           ovsdbx: 127.0.0.1:6632
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   linux:
     network:
       interface:
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/init.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/init.yml
index e866362..e243ec5 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/init.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/init.yml
@@ -212,6 +212,9 @@
     ceilometer_agent_default_polling_interval: 15
     ceilometer_agent_default_polling_meters:
       - "*"
+    galera_ssl_enabled: true
+    rabbitmq_ssl_enabled: true
+    rabbitmq_port: 5671 # for non-ssl use 5672 / for ssl 5671
   linux:
     network:
       purge_hosts: true
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/share.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/share.yml
index e144677..26a0a51 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/share.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/share.yml
@@ -24,3 +24,10 @@
       identity:
         protocol: https
       default_share_type: default
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/telemetry.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/telemetry.yml
index 79cfaf0..0b6277f 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/telemetry.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/telemetry.yml
@@ -115,6 +115,8 @@
     common:
       database:
         host: ${_param:openstack_database_address}
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
     server:
       identity:
         protocol: https
@@ -127,6 +129,9 @@
     server:
       identity:
         protocol: https
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
   aodh:
     server:
       bind:
@@ -136,6 +141,13 @@
       identity:
         protocol: https
         host: ${_param:openstack_control_address}
+      database:
+        ssl:
+          enabled: ${_param:galera_ssl_enabled}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   ceilometer:
     server:
       bind:
@@ -145,6 +157,10 @@
       identity:
         protocol: https
         host: ${_param:openstack_control_address}
+      message_queue:
+        port: ${_param:rabbitmq_port}
+        ssl:
+          enabled: ${_param:rabbitmq_ssl_enabled}
   haproxy:
     proxy:
       listen: