Bug 1244913

Summary: rhel-osp-director: "Not enough l3 agents available to ensure HA. Minimum required 2, available 1." upon attempt to create a router on the overcloud.
Product: Red Hat OpenStack Reporter: Alexander Chuzhoy <sasha>
Component: python-rdomanager-oscpluginAssignee: Giulio Fidente <gfidente>
Status: CLOSED ERRATA QA Contact: Alexander Chuzhoy <sasha>
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: calfonso, gfidente, jslagle, mandreou, mburns, rbiba, rhel-osp-director-maint, rrosa
Target Milestone: ga   
Target Release: Director   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-rdomanager-oscplugin-0.0.8-42.el7ost Doc Type: Bug Fix
Doc Text:
Due to a casting bug, 'L3HA' was passed as 'True' for overcloud Neutron configuration when deploying with only one controller. Because Neutron requires a minimum of 2 L3 agents to ensure native L3 HA, it complained when the overcloud tenant networking was set up after an otherwise successful deployment. As a consequence, after a successful deployment and when creating tenant Neutron networks or routers, the following error was returned from Neutron: Not enough l3 agents available to ensure HA. Minimum required 2, available 1. This bug has been fixed by correctly casting the number of controllers to an integer before checking for enablement of L3 HA. As a result, deployments with one controller have 'L3HA' as 'False' in the /etc/neutron/neutron.conf file on the controller node. Deployments with multiple controllers will instead have this set to 'True'.
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-08-05 13:59:58 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1244969    

Description Alexander Chuzhoy 2015-07-20 18:27:43 UTC
rhel-osp-director: "Not enough l3 agents available to ensure HA. Minimum required 2, available 1." upon attempt to create a router on the overcloud.

Environment:
instack-undercloud-2.1.2-21.el7ost.noarch

Steps to reproduce:
1. deploy the undercloud +SSL
2. Deploy the overcloud: 1 controller, 2 computes.
3. Connect to the overcloud and run 'neutron router-create r1"

Result:
Not enough l3 agents available to ensure HA. Minimum required 2, available 1.
The router doesn't get created.


Expected result:

The router should be created with no errors.

Comment 3 Alexander Chuzhoy 2015-07-20 18:53:51 UTC
The issues doesn't exist on HA setup with 3 controllers.

Comment 4 Giulio Fidente 2015-07-20 19:01:19 UTC
We seem to be passing NeutronL3HA=True when deploying single controller, while its default is False and it should only be set to True when controllers are > 1

See https://github.com/rdo-management/python-rdomanager-oscplugin/blob/master/rdomanager_oscplugin/v1/overcloud_deploy.py#L277

Comment 5 Alexander Chuzhoy 2015-07-20 19:19:03 UTC
Changing to "l3_ha = False" in /etc/neutron/neutron.conf and restarting the neutron-server resolves this.

Comment 6 Brad P. Crochet 2015-07-20 19:19:22 UTC
Fix: https://review.gerrithub.io/240668

Comment 8 Alexander Chuzhoy 2015-07-24 14:53:50 UTC
Verified:
Environment:
instack-undercloud-2.1.2-22.el7ost.noarch
python-rdomanager-oscplugin-0.0.8-43.el7ost.noarch


Tried on a deployment with 1 controller +1 compute.
Was able to create the router with no issues.

Comment 10 errata-xmlrpc 2015-08-05 13:59:58 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/RHEA-2015:1549