[Openstack] Guest VM IP configuration script

Satish Patel satish.txt at gmail.com
Thu Aug 25 13:31:10 UTC 2016


I am planning to upgrade liberty to mitaka now so hope i will have
latest and greatest feature to solve this problem. why openstack
community doesn't have any straightforward solution.

When i was trying to use DHCP in openstack i found openstack DHCP
start provide ip address to my existing LAN machines ( we are using
flat VLAN with neutron), that is why i disable openstack DHCP, Is it
common or i am doing something wrong?

We have existing DHCP in out LAN i don't want openstack DHCP take over
and start assigning own IPs to Provide LAN.

neutron subnet-create  ext_net --gateway 10.35.1.254 10.35.1.0/24 --
--enable_dhcp=True

On Thu, Aug 25, 2016 at 9:26 AM, Satish Patel <satish.txt at gmail.com> wrote:
> Eugen,
>
> I think config-drive make sense when you don't have initial network in
> place. In my case i don't care about fixed-IP for instance. I only
> need to setup network using whatever IP neutron provide in that case
> how do i query neutron port to find out what IP address is available
> or neutron going to provide so i can take that information and pass to
> userdata. Its sounds tricky any idea how to do that?
>
> On Thu, Aug 25, 2016 at 2:53 AM, Eugen Block <eblock at nde.ag> wrote:
>> Hi,
>>
>> we've been trying to learn how to feed cloud-init with ip addresses, too. If
>> DHCP is disabled in your network, the instance won't get it's eth0
>> configured and won't be able to query the metadata server.
>> Creating a port before attaching it to a booting instance also doesn't work
>> if no dhcp is running on that network, I just tried that to be sure.
>>
>> I've tried several ways but I only found one working option. For external
>> networks (or networks without dhcp) we are using config-drive now. Depending
>> on the OpenStack version it could be possible that you'll need
>> cloud-init-0.7.7, we had to fix two issues ourselves in version 0.7.6 to get
>> it working, one of them was a missing default route.
>>
>> With enabled config-drive the instance doesn't need a configured interface,
>> it's a temporarily mounted drive from where the required information is read
>> by cloud-init.
>> You can either add the option "--config-drive true" in your nova boot call
>> or check the checkbox in Horizon.
>>
>> To answer your question about ports, you can create a new port either in
>> Horizon, but there you won't be able to assign a specific ip address. If you
>> want a specific ip address you have to call neutron port-create (port-name
>> is optional):
>>
>>    neutron port-create <NETWORK-ID> --fixed-ip
>> subnet_id=<SUBNET-ID>,ip_address=<IP> --name <PORT-NAME>
>>
>> The resulting ID of that port can be used in nova boot call:
>>
>>    nova boot --flavor 2 --image <IMAGE> --nic port-id=<PORT-ID>
>> <INSTANCE-NAME>
>>
>> Another way to assign a specific ip address to a booting instance without
>> port-creation (but DHCP has to be enabled) would be:
>>
>>    nova boot --flavor 2 --image <IMAGE> --nic
>> net-id=<NET-ID>,v4-fixed-ip=<IP> <INSTANCE-NAME>
>>
>> for example:
>>    nova boot --flavor 2 --image dc05b777-3122-4021-b7eb-8d96fdab2980 --nic
>> net-id=4421e160-d675-49f2-8c29-9722aebf03b2,v4-fixed-ip=192.168.124.6 test1
>>
>> Hope this helps!
>>
>>
>> Zitat von Satish Patel <satish.txt at gmail.com>:
>>
>>
>>> My question is how to query ports and pass info to cloud-init?  is
>>> there any document or api which i can call using script and setup
>>> network ifcfg-eth0 file
>>>
>>> On Wed, Aug 24, 2016 at 5:38 PM, Kaustubh Kelkar
>>> <kaustubh.kelkar at casa-systems.com> wrote:
>>>>
>>>> You can create the ports beforehand and plug them in while creating the
>>>> instance. As for assigning IP addresses, you can query the ports and pass
>>>> the information to cloud-init. I am not sure if there is any other way to do
>>>> this.
>>>>
>>>> Even if DHCP is disabled, OpenStack assigns IP information to ports when
>>>> a VM is created, and you can see this in your dashboard. The MAC and IP
>>>> information is used to configure iptables rules within security groups. Here
>>>> is the archived thread that provides this information:
>>>> http://lists.openstack.org/pipermail/openstack-dev/2014-December/053069.html.
>>>>
>>>>
>>>> -Kaustubh
>>>>
>>>>> -----Original Message-----
>>>>> From: Satish Patel [mailto:satish.txt at gmail.com]
>>>>> Sent: Wednesday, August 24, 2016 5:05 PM
>>>>> To: James Downs <egon at egon.cc>
>>>>> Cc: openstack <openstack at lists.openstack.org>
>>>>> Subject: Re: [Openstack] Guest VM IP configuration script
>>>>>
>>>>> I am using neutron networking with vlan ( its provider VLAN). We are not
>>>>> using
>>>>> DHCP but i need some kind of hack to inject IP address in instance using
>>>>> cloud-
>>>>> init.
>>>>>
>>>>> We are using cloud-init but i don't know how does it work and get IP
>>>>> from
>>>>> neutron. I am new with neutron stuff.
>>>>>
>>>>> On Wed, Aug 24, 2016 at 4:29 PM, James Downs <egon at egon.cc> wrote:
>>>>> > On Wed, Aug 24, 2016 at 03:25:26PM -0400, Satish Patel wrote:
>>>>> >> I enabled following in nova.conf on compute node but didn't work :(
>>>>> >>
>>>>> >> flat_injected=true
>>>>> >>
>>>>> >> Do i need to do anything else?
>>>>> >
>>>>> > Are you using flat networking?
>>>>> > Nova-networks or Neutron?
>>>>> >
>>>>> > At this point, if you're not using DHCP, your only option is to
>>>>> > arrange to feed
>>>>> the networking information into the metadata for the VM at creation
>>>>> time, and
>>>>> use someting like cloud-init to configure the networking. The ancient
>>>>> networking injection stuff has either been removed, or been broken for
>>>>> years.
>>>>> >
>>>>> > Cheers,
>>>>> > -j
>>>>> >
>>>>> > _______________________________________________
>>>>> > Mailing list:
>>>>> > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>>>>> > Post to     : openstack at lists.openstack.org
>>>>> > Unsubscribe :
>>>>> > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>>>>>
>>>>> _______________________________________________
>>>>> Mailing list:
>>>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>>>>> Post to     : openstack at lists.openstack.org
>>>>> Unsubscribe :
>>>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>>>
>>>
>>> _______________________________________________
>>> Mailing list:
>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>>> Post to     : openstack at lists.openstack.org
>>> Unsubscribe :
>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>>
>>
>>
>>
>> --
>> Eugen Block                             voice   : +49-40-559 51 75
>> NDE Netzdesign und -entwicklung AG      fax     : +49-40-559 51 77
>> Postfach 61 03 15
>> D-22423 Hamburg                         e-mail  : eblock at nde.ag
>>
>>         Vorsitzende des Aufsichtsrates: Angelika Mozdzen
>>           Sitz und Registergericht: Hamburg, HRB 90934
>>                   Vorstand: Jens-U. Mozdzen
>>                    USt-IdNr. DE 814 013 983
>>
>>
>>
>> _______________________________________________
>> Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>> Post to     : openstack at lists.openstack.org
>> Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack




More information about the Openstack mailing list