[Openstack] Using Neutron without Nova
Keshav Varma
keshav at edcast.com
Mon Jul 21 02:21:49 UTC 2014
Hello,
I want to use Openstack Neutron as a standalone networking solution for
some Docker-based infrastructure. I can't run Nova using the Docker driver
due to some other issues.
So far, I have followed the Openstack installation docs for Ubuntu and have
set up a controller/network node and a separate compute node. I created a
new port on the network node using 'neutron port-create <network-name>' but
when I look in the database, I see the following:
mysql> select * from ml2_port_bindings;
+--------------------------------------+------+-----------+---------+----------+-------------+--------+---------+
| port_id | host | vnic_type | profile |
vif_type | vif_details | driver | segment |
+--------------------------------------+------+-----------+---------+----------+-------------+--------+---------+
| 185f3e6e-da1d-4249-8873-5cf5700a613e | | normal | {} |
unbound | | NULL | NULL |
| 3090bac1-d1fb-48f9-a20a-3639a22dde43 | | normal | |
unbound | | NULL | NULL |
| 54e93384-5786-44e8-bbab-5c8b764b12db | | normal | |
unbound | | NULL | NULL |
| f93ac96b-0936-4f7c-b07c-ae98fe3e1037 | | normal | |
unbound | | NULL | NULL |
+--------------------------------------+------+-----------+---------+----------+-------------+--------+---------+
On a separate Packstack and Devstack install (tried both), when I create a
new port, I see the following in the database
mysql> select * from ml2_port_bindings;
+--------------------------------------+----------+----------+-------------+--------------------------------------+-----------+------------------------------------------------+---------+
| port_id | host | vif_type | driver
| segment | vnic_type | vif_details
| profile |
+--------------------------------------+----------+----------+-------------+--------------------------------------+-----------+------------------------------------------------+---------+
| 9942bb8f-b863-49a9-8d92-7e62ece60de2 | devstack | ovs | openvswitch
| eaec5104-0888-426d-9827-ffcb63e201c1 | normal | {"port_filter": true,
"ovs_hybrid_plug": true} | |
+--------------------------------------+----------+----------+-------------+--------------------------------------+-----------+------------------------------------------------+---------+
I'm not sure if the difference is because I don't have Nova installed at
all on my environment whereas the Packstack and Devstack install both do.
On the compute node, since I don't have Neutron, I create the port manually
by running:
ovs-vsctl -- --if-exists del-port foobar -- add-port br-int foobar -- set
Interface foobar type=internal -- set Interface foobar
external-ids:iface-id=b9869cd7-a814-45c0-b632-ad3ff1dd46b6 -- set Interface
foobar external-ids:iface-status=active -- set Interface foobar
external-ids:attached-mac=fa:16:3e:26:f4:70
If I run this command on the Packstack install compute node, a new port is
created and when I bind a Docker instance to it, I am able to communicate
with the network node. When running this on my local environment, the port
is created but none of the flows get created. After digging into the code,
this seems to happen because the RPC call to the network node that asks for
port details doesn't return enough information since the segment field is
NULL in the database (
https://github.com/openstack/neutron/blob/stable/icehouse/neutron/plugins/ml2/rpc.py,
line 118).
I can't find much documentation anywhere about using Neutron without Nova
and was wondering what I'm missing to be able to replicate Nova's role in
the port management. I found a few pages trying to do similar things but
didn't find them extremely helpful:
https://answers.launchpad.net/neutron/+question/241870
http://www.gossamer-threads.com/lists/openstack/dev/34719
Many thanks in advance,
- Keshav
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20140720/0cede007/attachment.html>
More information about the Openstack
mailing list