Bug 1233949 - overcloud horizon apache config doesn't appear to use a network vip
Summary: overcloud horizon apache config doesn't appear to use a network vip
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: Director
Hardware: Unspecified
OS: Unspecified
high
unspecified
Target Milestone: y1
: 7.0 (Kilo)
Assignee: Jay Dobies
QA Contact: Marius Cornea
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-06-19 19:12 UTC by Kambiz Aghaiepour
Modified: 2023-02-22 23:02 UTC (History)
7 users (show)

Fixed In Version: openstack-tripleo-heat-templates-0.8.6-49.el7ost
Doc Type: Bug Fix
Doc Text:
Load balancing for httpd was incorrectly configured on the Overcloud, which meant VIPs were not used when accessing Horizon. This fix properly enables the load balancing for httpd. Now Horizon is accessible through VIPs.
Clone Of:
Environment:
Last Closed: 2015-10-08 12:09:56 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 193398 0 None MERGED Leave control of Redis balancing in static hieradata 2020-06-04 05:44:19 UTC
Red Hat Product Errata RHSA-2015:1862 0 normal SHIPPED_LIVE Moderate: Red Hat Enterprise Linux OpenStack Platform 7 director update 2015-10-08 16:05:50 UTC

Description Kambiz Aghaiepour 2015-06-19 19:12:24 UTC
Description of problem:


This _may_ be the same issue as described in 
  https://bugzilla.redhat.com/show_bug.cgi?id=1232747 

Though there is one thing that might be different.  Specifically, I noticed that when deployment was done using a single controller / single compute node virtual environment (in this case, the virtual environment was deployed on a single host), the horizon IP address is not a vip on the controller's interface, but rather the primary IP address of br-ex interface on the controller.  Furthermore, there does not appear to be any pacemaker configuration corresponding to anything related to horizon  (nor haproxy configs).

Version-Release number of selected component (if applicable):

Deploymed using rhos-release 7-director

How reproducible:

Use the latest puddle, and deploy using internal rhos-release instructions.

Steps to Reproduce:
1. vanilla deployment
2. look for the expected horizon IP using:

    heat output-show overcloud KeystoneURL   (against the undercloud)
or
    keystone endpoint-list   (against the overcloud)

3.  point browser to:  <ip address shown above>

    *poof*! apache directory index of an empty location


Actual results:

   Need to login to the overstack controller and look in:

    /etc/httpd/conf.d/15-horizon_vhost.conf

  on the overstack controller to find the correct IP address for horizon.

Comment 4 Marios Andreou 2015-06-25 10:05:32 UTC
(copy/paste from the related bug as identified in original description)

I think this bug is now fixed and can be closed. As we discovered in [1] we are setting this/others in the static hieradata like [2] and indeed the real fix here was [3] https://review.openstack.org/#/c/192870/  though it seems we missed to update the bug and review. I deployed with templates that include [3] and the result lgtm like [4]

[1] https://review.openstack.org/#/c/193398/
[2] https://github.com/openstack/tripleo-heat-templates/blob/master/puppet/hieradata/controller.yaml#L115
[3] https://review.openstack.org/#/c/192870/
[4]

(undercloud)
heat output-show overcloud KeystoneURL
"http://192.0.2.16:5000/v2.0/"

overcloud-controller-1 cat /etc/haproxy/haproxy.
listen horizon
  bind 192.0.2.15:80 
  bind 192.0.2.16:80 
  option httpchk GET /
  server overcloud-controller-0 192.0.2.20:80 check fall 5 inter 2000 rise 2
  server overcloud-controller-1 192.0.2.19:80 check fall 5 inter 2000 rise 2
  server overcloud-controller-2 192.0.2.21:80 check fall 5 inter 2000 rise 2

[root@overcloud-controller-1 ~]# cat /etc/httpd/conf.d/10-horizon_vhost.conf  | grep VirtualHost
<VirtualHost 192.0.2.19:80>
</VirtualHost>

(undercloud):
[stack@instack ~]$ wget 192.0.2.16
--2015-06-25 04:26:06--  http://192.0.2.16/
Connecting to 192.0.2.16:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://192.0.2.16/dashboard [following]
--2015-06-25 04:26:06--  http://192.0.2.16/dashboard
Connecting to 192.0.2.16:80... connected.
HTTP request sent, awaiting response... 302 FOUND
Location: http://192.0.2.16/dashboard/auth/login/?next=/dashboard/ [following]
--2015-06-25 04:26:07--  http://192.0.2.16/dashboard/auth/login/?next=/dashboard/
Connecting to 192.0.2.16:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2406 (2.3K) [text/html]
Saving to: ‘index.html’

100%[======================================================>] 2,406       --.-K/s   in 0s      

2015-06-25 04:26:08 (218 MB/s) - ‘index.html’ saved [2406/2406]

[stack@instack ~]$

Comment 8 Marius Cornea 2015-09-14 16:52:18 UTC
[stack@instack ~]$ rpm -qa | grep  openstack-tripleo-heat-templates
openstack-tripleo-heat-templates-0.8.6-49.el7ost.noarch
[stack@instack ~]$ heat output-show overcloud KeystoneURL
"http://172.16.23.10:5000/v2.0/"
[stack@instack ~]$ curl -L -I http://172.16.23.10/
HTTP/1.1 301 Moved Permanently
Date: Mon, 14 Sep 2015 16:51:17 GMT
Server: Apache/2.4.6 (Red Hat Enterprise Linux)
Location: http://172.16.23.10/dashboard
Content-Type: text/html; charset=iso-8859-1
Set-Cookie: SERVERID=; Expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/
Cache-control: private

HTTP/1.1 302 FOUND
Date: Mon, 14 Sep 2015 16:51:17 GMT
Server: Apache/2.4.6 (Red Hat Enterprise Linux)
Vary: Accept-Language,Cookie
X-Frame-Options: SAMEORIGIN
Content-Language: en
Location: http://172.16.23.10/dashboard/auth/login/?next=/dashboard/
Content-Type: text/html; charset=utf-8
Set-Cookie: SERVERID=; Expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/

HTTP/1.1 200 OK
Date: Mon, 14 Sep 2015 16:51:17 GMT
Server: Apache/2.4.6 (Red Hat Enterprise Linux)
Content-Language: en
Expires: Mon, 14 Sep 2015 16:51:17 GMT
Vary: Cookie,Accept-Language,Accept-Encoding
Cache-Control: max-age=0
X-Frame-Options: SAMEORIGIN
Set-Cookie: csrftoken=PRZ5oKdVj5ROp2s3vkWw9DKhWiBecqg6; expires=Mon, 12-Sep-2016 16:51:17 GMT; Max-Age=31449600; Path=/
Last-Modified: Mon, 14 Sep 2015 16:51:17 GMT
Content-Type: text/html; charset=utf-8
Set-Cookie: SERVERID=; Expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/
Cache-control: private

Comment 10 errata-xmlrpc 2015-10-08 12:09:56 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2015:1862


Note You need to log in before you can comment on or make changes to this bug.