[openstack-dev] [nova][neutron][devstack] New proposed 'default' network model
mordred at inaugust.com
Tue Sep 15 15:04:07 UTC 2015
If any of you have ever gotten drunk with me, you'll know I hate
floating IPs more than I hate being stabbed in the face with a very
However, that doesn't really matter. What should matter is "what is the
most sane thing we can do for our users"
As you might have seen in the glance thread, I have a bunch of OpenStack
public cloud accounts. Since I wrote that email this morning, I've added
more - so we're up to 13.
Of those public clouds, 5 of them require you to use a floating IP to
get an outbound address, the others directly attach you to the public
network. Most of those 8 allow you to create a private network, to boot
vms on the private network, and ALSO to create a router with a gateway
and put floating IPs on your private ip'd machines if you choose.
Which brings me to the suggestion I'd like to make.
Instead of having our default in devstack and our default when we talk
about things be "you boot a VM and you put a floating IP on it" - which
solves one of the two usage models - how about:
- Cloud has a shared: True, external:routable: True neutron network. I
don't care what it's called ext-net, public, whatever. the "shared"
part is the key, that's the part that lets someone boot a vm on it directly.
- Each person can then make a private network, router, gateway, etc. and
get floating-ips from the same public network if they prefer that model.
Are there any good reasons to not push to get all of the public networks
marked as "shared"?
OH - well, one thing - that's that once there are two networks in an
account you have to specify which one. This is really painful in nova
clent. Say, for instance, you have a public network called "public" and
a private network called "private" ...
You can't just say "nova boot --network=public" - nope, you need to say
"nova boot --nics net-id=$uuid_of_my_public_network"
So I'd suggest 2 more things;
a) an update to python-novaclient to allow a named network to be passed
to satisfy the "you have more than one network" - the nics argument is
still useful for more complex things
b) ability to say "vms in my cloud should default to being booted on the
public network" or "vms in my cloud should default to being booted on a
network owned by the user"
More information about the OpenStack-dev