Bug 1244026

Summary: [RFE] Overcloud nodes deployed by OSP-Director are using DHCP; can they be statically assigned instead?
Product: Red Hat OpenStack Reporter: John Fulton <johfulto>
Component: rhosp-directorAssignee: Dan Prince <dprince>
Status: CLOSED ERRATA QA Contact: Marius Cornea <mcornea>
Severity: urgent Docs Contact:
Priority: high    
Version: DirectorCC: cdevine, dprince, dsneddon, hbrock, jdonohue, kbasil, mburns, nbarcet, rhel-osp-director-maint, yeylon
Target Milestone: y1Keywords: FutureFeature, ZStream
Target Release: 7.0 (Kilo)   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: openstack-tripleo-image-elements-0.9.6-7.el7ost os-net-config-0.1.4-3.el7ost openstack-tripleo-heat-templates-0.8.6-54.el7ost Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-10-08 12:15:14 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: 1190166, 1243520    

Description John Fulton 2015-07-16 22:38:04 UTC
Overcloud nodes deployed by OSP-Director are using DHCP; can they be statically assigned instead?

I understand that at this time provisioning must happen via DHCP, although you are exploring the possibility of first assigning overcloud addresses via DHCP, then converting to static IP addresses. This is an RFE to track this. 

Additionally, would it be possible for a user to assign the desired IP address in one of the yaml files before, so that the desired IP could be associated with the MAC address early on?

Comment 4 Hugh Brock 2015-07-17 14:32:20 UTC
If you are deploying with network isolation, the only interfaces that are DHCPd are the ones Neutron DHCP configures on the control plane. We have discussed setting those addresses statically once the machines are provisioned to remove the DHCP dependency -- it seems like a good idea. I would imagine this could be done manually with the current code, but I'd need to check with Dan Prince to be sure.

Comment 5 John Fulton 2015-07-20 16:27:50 UTC
Dan,

Can we set those interface manually after deployment? 

  John

Comment 7 Dan Prince 2015-07-20 17:12:22 UTC
(In reply to John Fulton from comment #0)
> Overcloud nodes deployed by OSP-Director are using DHCP; can they be
> statically assigned instead?

We would like to move towards being able to support this upstream. We actually have access to the assigned IP address in Heat so we should be able to switch over to a static configuration. The complexity is around making sure the default route and special 169.254.169.254/32 routes get set appropriately for the static network configurations.

> 
> I understand that at this time provisioning must happen via DHCP, although
> you are exploring the possibility of first assigning overcloud addresses via
> DHCP, then converting to static IP addresses. This is an RFE to track this. 
> 
> Additionally, would it be possible for a user to assign the desired IP
> address in one of the yaml files before, so that the desired IP could be
> associated with the MAC address early on?

All of the IP addresses for the provisioning network are assigned via the Neutron 'ctplane' network. We would likely use Neutron for IPAM regardless of whether static or DHCP is used on the nodes. Using Neutron we have the capability to restrict the range of IPs requested on a subnet... but this isn't for just a single machine, it is for the whole set. Say your overcloud has 15 machines you would need to assign 15 ctlplane network IPs.

I'm slightly confused by the request for IP pre-assignment here. Is this for a specific machine perhaps? Or for all machines on the network? Also, this sort of sounds to me like a separate requirement and might best be handled in a unique ticket. I don't think it is related to the previous issue of configuring IP addresses statically.

Comment 8 Rafael Rosa 2015-07-20 19:06:05 UTC
Dan, can we make this static assignment manually post-deployment with the code we have right now or we'll need extra patches?

If we can do it right now, can you either post instructions or point to them elsewhere?

Comment 12 Dan Prince 2015-07-30 18:22:02 UTC
(In reply to Rafael Rosa from comment #8)
> Dan, can we make this static assignment manually post-deployment with the
> code we have right now or we'll need extra patches?

Hi Rafael,

An ad-hoc script to do this post deployment would work so long as the interfaces aren't being managed by os-net-config templates already. I think the best option would be to integrate this directly into the Heat network config templates. We've got an upstream patch up for review now:

https://review.openstack.org/#/c/206022/

Still a few details being worked out but it is close.

> 
> If we can do it right now, can you either post instructions or point to them
> elsewhere?

Comment 17 Marius Cornea 2015-09-22 12:57:39 UTC
[stack@bldr16cc09 ~]$ nova list
+--------------------------------------+------------------------+--------+------------+-------------+---------------------+
| ID                                   | Name                   | Status | Task State | Power State | Networks            |
+--------------------------------------+------------------------+--------+------------+-------------+---------------------+
| edfe32ca-51ca-486e-bfc9-7c38b30410e9 | overcloud-compute-0    | ACTIVE | -          | Running     | ctlplane=10.3.58.14 |
| d482fc52-c63f-4dd4-aea9-93bc050910c6 | overcloud-controller-0 | ACTIVE | -          | Running     | ctlplane=10.3.58.13 |
+--------------------------------------+------------------------+--------+------------+-------------+---------------------+
[stack@bldr16cc09 ~]$ ssh heat-admin.58.13 'sudo grep -B1 10.3.58.13 /etc/sysconfig/network-scripts/ifcfg*'
/etc/sysconfig/network-scripts/ifcfg-br-ex-BOOTPROTO=static
/etc/sysconfig/network-scripts/ifcfg-br-ex:IPADDR=10.3.58.13
[stack@bldr16cc09 ~]$ ssh heat-admin.58.14 'sudo grep -B1 10.3.58.14 /etc/sysconfig/network-scripts/ifcfg*'
/etc/sysconfig/network-scripts/ifcfg-br-ex-BOOTPROTO=static
/etc/sysconfig/network-scripts/ifcfg-br-ex:IPADDR=10.3.58.14

Comment 19 errata-xmlrpc 2015-10-08 12:15:14 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