Hello All,
I have been trying to duplicate this guide here mostly.
https://developer.rackspace.com/blog/neutron-networking-vlan-provider-networks/
The provider network part is useful to me but the gre tunnels and and dhcp are
not needed for us. We want to assign the addresses via a central build server
rather than having openstack manage it on a site to site basis.
The VLANs are trunked to the port of the management server and the
compute/network node. The VLAN stuff is verified working through manual
testing. When I tcpdump eth0 I also see lldp announcements showing the right
information in regards to vlans and so on.
I run a standalone management server. I am running the network and compute node
on the second server and I modified necessary settings using the installation
guide for icehouse on docs.openstack.org. I then used some of the settings
above to create the OVS settings.
I have one network card per chassis, a 10Gb Intel adapter.
eth0 has no addressing
I have a bridge called br-eth0 with the addressing from the management network
assigned to it.
Here are my settings from /etc/neutron/plugin.ini (ml2_conf.ini). These are
consistent across the management and compute/network host. Everything seems to
be communicating with its databases fine.
I have tried commenting out the [ml2] stuff and using just the [ovs] stuff to
no success. 106 and 400 are the vlans I configure here and the network is
labelled openstack. We have a third management network but traffic on that is
all untagged.
Here are the parameters set below currently.
[ml2]
type_drivers = vlan
tenant_network_types = vlan
mechanism_drivers = openvswitch
[ml2_type_vlan]
network_vlan_ranges = openstack:106:106,openstack:400:400
[ovs]
enable_tunneling = False
integration_bridge = br-int
bridge_mappings = openstack:br-eth0
network_vlan_ranges = openstack:106:106,openstack:400:400
Neutron net-list shows the networks created when I run the provider commands
linked in the article above. I added a gateway to the address space though as
the cirrus image wouldn't launch without a gateway defined to the network range.
| id | name | subnets
|
+--------------------------------------+------+--------------------------------------------------------+
| 0d6d0bb3-4b99-4d3f-8d67-fa3c9cd9ce64 | VRF |
2601be8f-483b-4823-ae7d-1475ce23b3a5 10.169.2.0/24 |
| 61741e90-09d0-406d-ad37-32712264c62e | GRT |
1a170428-4a47-4dfc-a8d4-d98216b93050 182.255.xxx.xxx/28 |
When I check the web interface the correct segmentation IDs are assigned to
each network
For example in VRF
Provider Network
Network Type: vlan
Physical Network: openstack
Segmentation ID: 106
Neutron subnet-list shows subnets created.
+--------------------------------------+----------+-------------------+------------------------------------------------------+
| id | name | cidr |
allocation_pools |
+--------------------------------------+----------+-------------------+------------------------------------------------------+
| 2601be8f-483b-4823-ae7d-1475ce23b3a5 | NAP_VRF | 10.169.2.0/24 |
{"start": "10.169.2.2", "end": "10.169.2.254"} |
| 1a170428-4a47-4dfc-a8d4-d98216b93050 | NAP_GRT | 182.255.xxx.xxx/28 |
{"start": "182.255.xxx.xxx", "end": "182.255.xxx.xxx"} |
When I attempt to launch a VM with networking the following message goes to
/var/log/nova/api.log
014-09-11 05:42:36.169 14602 INFO oslo.messaging._drivers.impl_qpid [-]
Connected to AMQP server on qld-gdpt-mgmt.aarnet.net.au:5672
2014-09-11 06:07:19.792 14613 ERROR nova.api.openstack
[req-6a2ea530-1f70-407c-a3bf-255a80f06c1e c6099a503e274f4db41ea044da056112
b533b1d0bc754286936d28edfd0e94e3] Caught error: Timed out waiting for a reply
to message ID 4146a0d1ee334cfd9f22587140c49928
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack Traceback (most recent
call last):
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/api/openstack/__init__.py", line 125, in
__call__
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return
req.get_response(self.application)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/webob/request.py", line 1296, in send
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack application,
catch_exc_info=False)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/webob/request.py", line 1260, in
call_application
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack app_iter =
application(self.environ, start_response)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/webob/dec.py", line 144, in __call__
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return resp(environ,
start_response)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/keystoneclient/middleware/auth_token.py",
line 679, in __call__
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return self.app(env,
start_response)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/webob/dec.py", line 144, in __call__
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return resp(environ,
start_response)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/webob/dec.py", line 144, in __call__
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return resp(environ,
start_response)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/routes/middleware.py", line 131, in __call__
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack response =
self.app(environ, start_response)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/webob/dec.py", line 144, in __call__
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return resp(environ,
start_response)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/webob/dec.py", line 130, in __call__
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack resp =
self.call_func(req, *args, **self.kwargs)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/webob/dec.py", line 195, in call_func
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return
self.func(req, *args, **kwargs)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/api/openstack/wsgi.py", line 917, in
__call__
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack content_type, body,
accept)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/api/openstack/wsgi.py", line 983, in
_process_stack
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack action_result =
self.dispatch(meth, request, action_args)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/api/openstack/wsgi.py", line 1070, in
dispatch
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return
method(req=request, **action_args)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/api/openstack/compute/servers.py", line
956, in create
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack
legacy_bdm=legacy_bdm)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/hooks.py", line 103, in inner
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack rv = f(*args,
**kwargs)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/compute/api.py", line 1341, in create
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack
legacy_bdm=legacy_bdm)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/compute/api.py", line 968, in
_create_instance
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack max_count)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/compute/api.py", line 739, in
_validate_and_build_base_options
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack requested_networks,
max_count)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/compute/api.py", line 463, in
_check_requested_networks
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack max_count)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/network/api.py", line 95, in wrapped
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return func(self,
context, *args, **kwargs)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/network/api.py", line 420, in
validate_networks
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack requested_networks)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/nova/network/rpcapi.py", line 225, in
validate_networks
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return
self.client.call(ctxt, 'validate_networks', networks=networks)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/oslo/messaging/rpc/client.py", line 361, in
call
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return
self.prepare().call(ctxt, method, **kwargs)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/oslo/messaging/rpc/client.py", line 150, in
call
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack wait_for_reply=True,
timeout=timeout)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/oslo/messaging/transport.py", line 90, in
_send
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack timeout=timeout)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/oslo/messaging/_drivers/amqpdriver.py", line
412, in send
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack return
self._send(target, ctxt, message, wait_for_reply, timeout)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/oslo/messaging/_drivers/amqpdriver.py", line
403, in _send
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack result =
self._waiter.wait(msg_id, timeout)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/oslo/messaging/_drivers/amqpdriver.py", line
267, in wait
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack reply, ending =
self._poll_connection(msg_id, timeout)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack File
"/usr/lib/python2.6/site-packages/oslo/messaging/_drivers/amqpdriver.py", line
217, in _poll_connection
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack % msg_id)
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack MessagingTimeout: Timed
out waiting for a reply to message ID 4146a0d1ee334cfd9f22587140c49928
2014-09-11 06:07:19.792 14613 TRACE nova.api.openstack
When I launch the vm build without networking the build succeeds and creates
its own network port in each subnet even when not specifying the -nic and
-net-id stuff with nova boot command . Neither respond to ping and when you
login to the vm via you get nowhere even if you assign address as the tagging
applied is random. The web interface shows the port up and active in the subnet
and the device owner is compute:None .
Neutron port-list
+--------------------------------------+------+-------------------+---------------------------------------------------------------------------------------+
| id | name | mac_address | fixed_ips
|
+--------------------------------------+------+-------------------+---------------------------------------------------------------------------------------+
| 511c60ce-d2dd-4f07-a735-cd9ca4ecbb50 | | fa:16:3e:71:6a:6a |
{"subnet_id": "1a170428-4a47-4dfc-a8d4-d98216b93050", "ip_address":
"182.255.xxx.xxx"} |
| 79f595cd-d686-4779-b48e-a64bef964dd3 | | fa:16:3e:cd:ec:88 |
{"subnet_id": "2601be8f-483b-4823-ae7d-1475ce23b3a5", "ip_address":
"10.169.2.3"} |
When I do an ovs-vsctl show I see the new tap created for the vms created
ovs-vsctl show
68eae405-27ae-40f1-b9ab-e751a06987e9
Bridge br-int
fail_mode: secure
Port br-int
Interface br-int
type: internal
Port "qvo79f595cd-d6"
tag: 2
Interface "qvo79f595cd-d6"
Port "int-br-eth0"
Interface "int-br-eth0"
Port "qvo511c60ce-d2"
tag: 1
Interface "qvo511c60ce-d2"
Bridge "br-eth0"
Port "br-eth0"
Interface "br-eth0"
type: internal
Port "eth0"
Interface "eth0"
Port "phy-br-eth0"
Interface "phy-br-eth0"
ovs_version: "1.11.0"
Is there some step I am missing in the plugin.ini (ml2_conf.ini) file that is
stopping me from creating vms with network? It can't be nova as the vm launches
when no network is specified? I have had a second admin check my configuration
files and it followed the guide to a letter aside from the modified network
settings we need to suit out setup which is why I am thinking this is where I
have gone wrong.
Thanks,
Alex
_______________________________________________
Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
Post to : [email protected]
Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack