Enable communication between UI and the Undercloud by making HAProxy
authorDan Trainor <dan.trainor@gmail.com>
Fri, 14 Oct 2016 21:43:36 +0000 (14:43 -0700)
committerDan Trainor <dan.trainor@gmail.com>
Tue, 18 Oct 2016 06:17:55 +0000 (23:17 -0700)
proxy for the UI

Change-Id: I74eac4bbfc16720eeb6e2bf0ee251689dde3bafc
Implements: enable-communication-ui-undercloud

manifests/haproxy.pp
manifests/ui.pp

index c4d018d..e345013 100644 (file)
 #  (optional) Enable or not Zaqar Websockets binding
 #  Defaults to false
 #
+# [*ui*]
+#  (optional) Enable or not TripleO UI
+#  Defaults to false
+#
 # [*aodh_network*]
 #  (optional) Specify the network aodh is running on.
 #  Defaults to hiera('aodh_api_network', undef)
@@ -463,6 +467,7 @@ class tripleo::haproxy (
   $ceph_rgw                    = hiera('ceph_rgw_enabled', false),
   $opendaylight                = hiera('opendaylight_api_enabled', false),
   $zaqar_ws                    = hiera('zaqar_api_enabled', false),
+  $ui                          = hiera('enable_ui', false),
   $aodh_network                = hiera('aodh_api_network', undef),
   $ceilometer_network          = hiera('ceilometer_api_network', undef),
   $ceph_rgw_network            = hiera('ceph_rgw_network', undef),
@@ -532,6 +537,8 @@ class tripleo::haproxy (
     swift_proxy_ssl_port => 13808,
     trove_api_port => 8779,
     trove_api_ssl_port => 13779,
+    ui_port => 3000,
+    ui_ssl_port => 443,
     zaqar_api_port => 8888,
     zaqar_api_ssl_port => 13888,
     ceph_rgw_port => 8080,
@@ -1181,4 +1188,17 @@ class tripleo::haproxy (
       service_network           => $zaqar_api_network,
     }
   }
+
+  if $ui {
+    ::tripleo::haproxy::endpoint { 'ui':
+      public_virtual_ip => $public_virtual_ip,
+      internal_ip       => hiera('ui_vip', $controller_virtual_ip),
+      service_port      => $ports[ui_port],
+      ip_addresses      => hiera('ui_ips', $controller_hosts_real),
+      server_names      => $controller_hosts_names_real,
+      mode              => 'http',
+      public_ssl_port   => $ports[ui_ssl_port],
+    }
+  }
+
 }
index dc51bfc..41ad8d6 100644 (file)
@@ -70,7 +70,7 @@
 #
 class tripleo::ui (
   $servername          = $::fqdn,
-  $bind_host           = undef,
+  $bind_host           = hiera('controller_host'),
   $ui_port             = 3000,
   $keystone_url        = hiera('keystone_auth_uri_v2'),
   $heat_url            = hiera('heat::keystone::auth::public_url', undef),