From cf4d918cd923c228d37fc06ecadf2f48c80ef400 Mon Sep 17 00:00:00 2001 From: Emilien Macchi Date: Fri, 13 Mar 2015 23:19:30 -0400 Subject: puppet: install Horizon on overcloud-controller Install OpenStack Dashboad (Horizon) on the Overcloud Controller with Puppet. Co-Authored-By: Giulio Fidente Depends-On: If9b12d373e407be8be8428d77145f131eb450e88 Change-Id: I254e895014f58a51dade3dcdc63eabbb5dc458ac --- controller.yaml | 3 +++ overcloud-without-mergepy.yaml | 6 ++++++ puppet/all-nodes-config.yaml | 4 ++++ puppet/controller-puppet.yaml | 10 ++++++++++ puppet/hieradata/controller.yaml | 3 +++ puppet/manifests/overcloud_controller.pp | 7 +++++++ 6 files changed, 33 insertions(+) diff --git a/controller.yaml b/controller.yaml index 483ecc8f..a69d2d01 100644 --- a/controller.yaml +++ b/controller.yaml @@ -157,6 +157,9 @@ parameters: HeatAuthEncryptionKey: description: Auth encryption key for heat-engine type: string + HorizonSecret: + description: Secret key for Django + type: string Image: type: string default: overcloud-control diff --git a/overcloud-without-mergepy.yaml b/overcloud-without-mergepy.yaml index 142e502e..88f26ac5 100644 --- a/overcloud-without-mergepy.yaml +++ b/overcloud-without-mergepy.yaml @@ -534,6 +534,11 @@ resources: properties: length: 16 + HorizonSecret: + type: OS::Heat::RandomString + properties: + length: 10 + Controller: type: OS::Heat::ResourceGroup properties: @@ -568,6 +573,7 @@ resources: HeatPassword: {get_param: HeatPassword} HeatStackDomainAdminPassword: {get_param: HeatStackDomainAdminPassword} HeatAuthEncryptionKey: {get_resource: HeatAuthEncryptionKey} + HorizonSecret: {get_resource: HorizonSecret} Image: {get_param: controllerImage} ImageUpdatePolicy: {get_param: ImageUpdatePolicy} KeyName: {get_param: KeyName} diff --git a/puppet/all-nodes-config.yaml b/puppet/all-nodes-config.yaml index 7a4df796..09882c14 100644 --- a/puppet/all-nodes-config.yaml +++ b/puppet/all-nodes-config.yaml @@ -66,6 +66,10 @@ resources: list_join: - ',' - {get_param: controller_ips} + memcache_node_ips: + list_join: + - ',' + - {get_param: controller_ips} outputs: config_id: diff --git a/puppet/controller-puppet.yaml b/puppet/controller-puppet.yaml index d3955467..64b1a923 100644 --- a/puppet/controller-puppet.yaml +++ b/puppet/controller-puppet.yaml @@ -157,6 +157,9 @@ parameters: HeatAuthEncryptionKey: description: Auth encryption key for heat-engine type: string + HorizonSecret: + description: Secret key for Django + type: string Image: type: string default: overcloud-control @@ -469,6 +472,7 @@ resources: - {get_param: VirtualIP} - ':8000/v1/waitcondition' heat_auth_encryption_key: {get_param: HeatAuthEncryptionKey} + horizon_secret: {get_param: HorizonSecret} admin_password: {get_param: AdminPassword} admin_token: {get_param: AdminToken} neutron_public_interface_ip: {get_param: NeutronPublicInterfaceIP} @@ -816,6 +820,12 @@ resources: nova::network::neutron::neutron_url: {get_input: neutron_url} nova::network::neutron::neutron_admin_auth_url: {get_input: neutron_admin_auth_url} + # Horizon + horizon::django_debug: {get_input: debug} + horizon::secret_key: {get_input: horizon_secret} + horizon::bind_address: {get_input: controller_host} + horizon::keystone_url: {get_input: keystone_auth_uri} + # Rabbit rabbitmq::node_ip_address: {get_input: controller_host} rabbitmq::erlang_cookie: {get_input: rabbit_cookie} diff --git a/puppet/hieradata/controller.yaml b/puppet/hieradata/controller.yaml index 5cf9f350..e4ddf65b 100644 --- a/puppet/hieradata/controller.yaml +++ b/puppet/hieradata/controller.yaml @@ -81,6 +81,9 @@ heat::engine::trusts_delegated_roles: [] pacemaker::corosync::cluster_name: 'tripleo_cluster' pacemaker::corosync::manage_fw: false +# horizon +horizon::allowed_hosts: '*' + mysql::server::manage_config_file: true tripleo::loadbalancer::keystone_admin: true diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp index b1ccf3d7..ad10cd33 100644 --- a/puppet/manifests/overcloud_controller.pp +++ b/puppet/manifests/overcloud_controller.pp @@ -409,6 +409,13 @@ if hiera('step') >= 3 { include ::heat::api_cloudwatch include ::heat::engine + # Horizon + $vhost_params = { add_listen => false } + class { 'horizon': + cache_server_ip => split(hiera('memcache_node_ips', '127.0.0.1'), ','), + vhost_extra_params => $vhost_params, + } + $snmpd_user = hiera('snmpd_readonly_user_name') snmp::snmpv3_user { $snmpd_user: authtype => 'MD5', -- cgit 1.2.3-korg