[openstack-dev] [Quantum] Nova and virtual NICs

Blake Yeager blake.yeager at gmail.com
Thu Aug 30 20:38:43 UTC 2012


On Tue, Aug 28, 2012 at 3:52 PM, Dan Wendlandt <dan at nicira.com> wrote:

> On Tue, Aug 28, 2012 at 1:30 PM, Ian Wells <ijw.ubuntu at cack.org.uk> wrote:
>
> On 28 August 2012 22:08, Dan Wendlandt <dan at nicira.com> wrote:
> >> Giving the tenant a 400 is a clean response from a design perspective,
> >> but it worries me, as my sense is that people have gotten used to
> >> spinning up nova VMs without specifying networks.
> >
> > I appreciate your point.  A reasonable compromise would be that if a
> > tenant truly has only one network available, boot; if there's more or
> > less than one, don't boot.
>
> I think this is a reasonable design point.
>
> This covers your case above, doesn't have
> > complex 'choosing networks' behaviour, and doesn't default to 'one NIC
> > per network' behaviour which is almost never what you want to happen
> > when you start a machine
>
> I wouldn't say "almost never", as I've actually had several customers
> who had a default setups where VMs had two NICs (one public, one
> back-end private).  In fact, the reason nova worked this way in the
> first place was because a very large and early contributor has a
> public cloud that works that way today, with two NICs per VM.
>
> Changing this behavior would, I think, break things for such
> deployments, though I think its a pretty nice point in the design
> space and one I'm more comfortable with than the 400 approach.  To me
> it fits the 'simple is simple, complex is more complex' motto :)
>
>
My apologies for jumping on the thread late but I think we are missing a
key point that was part of Dan's original proposal which was that a cloud
operator could specify an ordered list of network-ids as part of Nova
config.  This would allow you to expand the design to say that if no
network is specified at VM creation you first check if there are
network-ids included in Nova config.  If there are then you simply create
the VM with a NIC on each network listed in Nova config.  If not then you
check if the tenant has one and only one network available to him.  If that
is the case then you create the VM with a NIC on that network.  If the
tenant has more or less than one network available then you return a 400
error.  These seems to be the best of both worlds to me, allowing cloud
operators to provide a consistent experience to their users while
maintaining the necessary flexibility.

-Blake
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20120830/38a305a2/attachment.html>


More information about the OpenStack-dev mailing list