[openstack-dev] [Horizon][OSC][Nova][Neutron] Launch instance with Floating IP
Andrew Laski
andrew at lascii.com
Thu Sep 8 12:56:16 UTC 2016
On Thu, Sep 8, 2016, at 05:48 AM, Kevin Benton wrote:
> Why don't you just pre-create the port and associate the floating IP
> before booting the instance?
Right. It's not difficult to do at all but there's a strong desire to
have this be encompassed in a single API call. I think that's a great
idea, but I don't think it belongs in Nova.
>
> On Wed, Sep 7, 2016 at 5:58 PM, Adrian Turjak
> <adriant at catalyst.net.nz> wrote:
>> Double api sounds a little terrifying when really there are
>> probably so
>> many different ways you can already solve this using the services we
>> already have.
>>
>> The thing I don't get is Martin's requirement that "an instance must
>> have internet on boot" and that to do that he must have a
>> floating ip
>> assigned to it. Internet on boot I can understand because of
>> preconfigured images and snapshots starting internal services
>> and tasks
>> on boot, but why is floating ip on boot such a hard requirement? Is
>> adding a floating ip before boot even possible with Nova right
>> now (I
>> ask as I've never looked into it)?
>>
>> Unless I'm missing something, you can easily setup a private network
>> with internet access, boot your instance on that, and then add a
>> floating ip. The instance will have internet on boot, and then
>> be given
>> a floating ip. Does that not solve your problem and can that not be
>> orchestrated with the current range of services/tools we have?
>>
>>
>> On 08/09/16 12:41, Fox, Kevin M wrote:
>> > Interesting. It kind of sounds like your proposing a sort of...
>> > openstack standard library api api? (yes, double apis) Where you
>> > can build up an api using other api calls and users can rely on
>> > those standard overarching api's to be there?
>> >
>> > Thanks,
>> > Kevin
>> > ________________________________________
>> > From: Andrew Laski [andrew at lascii.com]
>> > Sent: Wednesday, September 07, 2016 4:34 PM
>> > To: openstack-dev at lists.openstack.org
>> > Subject: Re: [openstack-dev] [Horizon][OSC][Nova][Neutron] Launch
>> > instance with Floating IP
>> >
>> > On Wed, Sep 7, 2016, at 06:54 PM, Martin Millnert wrote:
>> >> On Thu, 2016-09-08 at 09:34 +1200, Adrian Turjak wrote:
>> >>> This is exactly what something like Minstral would be fantastic
>> >>> for.
>> >>> Multi-project workflow.
>> >>> Rather than try and build logic like this directly into nova,
>> >>> looks
>> >>> at extending something like Minstral with a basic easy to call
>> >>> task.
>> >> I have API- and code-reading homework to do here - but based on
>> >> input
>> >> on IRC, and efforts thus far, the ideal solution is not really to
>> >> bolt
>> >> a humongous piece of logic onto Nova. Rather it is appears to be
>> >> first
>> >> and foremost Neutron that need a little bit more intelligence
>> >> regarding
>> >> its virtual networks and the intentions of its operators.
>> >>
>> >> From what I can tell, Mistral is a very useful project for
>> >> scheduling
>> >> recurring tasks or similar, which there is a definite need of
>> >> in a
>> >> mature deployment.
>> >>
>> >> But I disagree with the "solve it with a new project"-approach
>> >> here:
>> >>
>> >> 1) "launch my instance" is as core as it gets in OpenStack,
>> >>
>> >> 2) "launch my instance with Internet" is approximately
>> >> identically as
>> >> core, just a bit difficult for $reasons and not fully supported
>> >> today,
>> >>
>> >> 3) core functionality should IMO require as few API calls as
>> >> possible,
>> >> to as few components as possible, while keeping REST data models
>> >> etc.
>> >> intact, [1][2]
>> > I agree that it should require as few API calls as possible but
>> > maybe we
>> > disagree about what core functionality is. Or to put it another
>> > way,
>> > what is core functionality depends on your perspective.
>> >
>> > I subscribe to the plumbing and porcelain approach
>> > (https://git-scm.com/book/en/v2/Git-Internals-Plumbing-and-Porcelain)
>> > and believe that Nova should be part of the plumbing. So while I
>> > fully
>> > agree with a small number of API calls to do simple tasks I don't
>> > believe that orchestrating network setups is core functionality in
>> > Nova
>> > but is core to OpenStack.
>> >
>> >> 4) there are timing concerns with adding Internet to an instance
>> >> today
>> >> in OpenStack, since it in some cases needs to happen somewhere
>> >> between
>> >> the events "network port created" and "instance launched", in
>> >> order for
>> >> the instance to actually have Internet when it boots,
>> >>
>> >> 5) Scheduling "Launch instance with Internet" or "Add Internet
>> >> to
>> >> instance" via something like Mistral would additionally either,
>> >> A) add
>> >> a significant delay to the boot time, or B) not even fulfill the
>> >> objective of having Internet once instance powers on,
>> >>
>> >> 6) To replicate the logic of shade's "get me online" functions,
>> >> a
>> >> large amount of code is required, and depending on how you go
>> >> about it,
>> >> you also risk duplicating logic already in e.g. Nova or Neutron.
>> >>
>> >> Best regards,
>> >> Martin
>> >>
>> >> [1] "A designer knows he has achieved perfection not when there
>> >> is
>> >> nothing left to add, but when there is nothing left to take
>> >> away."
>> >> -- Antoine de Saint-Exupery
>> >> [2] https://tools.ietf.org/rfcdiff?url2=draft-heitz-idr-large-community
>> >> -02.txt (example of commendable improvement almost unheard of
>> >> within
>> >> the IETF)
>> >>
>> >> ________________________________________________________________-
>> >> __________
>> >> OpenStack Development Mailing List (not for usage questions)
>> >> Unsubscribe:
>> >> OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
>> >> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>> > _________________________________________________________________-
>> > _________
>> > OpenStack Development Mailing List (not for usage questions)
>> > Unsubscribe: OpenStack-dev-
>> > request at lists.openstack.org?subject:unsubscribe
>> > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>> >
>> > _________________________________________________________________-
>> > _________
>> > OpenStack Development Mailing List (not for usage questions)
>> > Unsubscribe: OpenStack-dev-
>> > request at lists.openstack.org?subject:unsubscribe
>> > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>
>>
>>
>> ___________________________________________________________________-
>> _______
>> OpenStack Development Mailing List (not for usage questions)
>> Unsubscribe: OpenStack-dev-
>> request at lists.openstack.org?subject:unsubscribe
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> ____________________________________________________________________-
> ________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-
> request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160908/5485929c/attachment.html>
More information about the OpenStack-dev
mailing list