<html><body><div>Thanks, Dan,</div><div><br></div><div>The patch works well!</div><div><br></div><div>Yapeng<br><br>On Sep 26, 2012, at 04:07 AM, Dan Wendlandt <dan@nicira.com> wrote:<br><br></div><div><blockquote type="cite"><div class="msg-quote"><div class="_stretch">Hi Yapeng,<br> <br> With current devstack, you had to manually add a route to get metadata<br> to work with quantum. I've actually proposed a small patch to<br> devstack to automatically add the route needed for metadata to work:<br> <a href="https://review.openstack.org/#/c/13693/" data-mce-href="https://review.openstack.org/#/c/13693/">https://review.openstack.org/#/c/13693/</a><br> <br> Feel free to test this patch, or just look at the commands run by the<br> patch and run them as part of your local.sh<br> <br> Dan<br> <br> <br> On Tue, Sep 25, 2012 at 2:17 PM, Yapeng Wu <<a href="mailto:yapengwu@me.com" data-mce-href="mailto:yapengwu@me.com">yapengwu@me.com</a>> wrote:<br> > Thanks, Dan,<br> ><br> > The problem has been fixed as your suggested.<br> ><br> > Now I have another instance's meta-data problem during spawning instance,<br> > the following is the instance log message:<br> ><br> > udhcpc (v1.18.5) started<br> > Sending discover...<br> > Sending select for 10.0.0.3...<br> > Lease of 10.0.0.3 obtained, lease time 120<br> > deleting routers<br> > route: SIOCDELRT: No such process<br> > adding dns 10.0.0.2<br> > cloud-setup: checking<br> > <a href="http://169.254.169.254/2009-04-04/meta-data/instance-id" data-mce-href="http://169.254.169.254/2009-04-04/meta-data/instance-id">http://169.254.169.254/2009-04-04/meta-data/instance-id</a><br> > wget: can't connect to remote host (169.254.169.254): Connection timed out<br> > cloud-setup: failed 1/30: up 15.71. request failed<br> > wget: can't connect to remote host (169.254.169.254): Connection timed out<br> > cloud-setup: failed 2/30: up 206.36. request failed<br> > wget: can't connect to remote host (169.254.169.254): Connection timed out<br> > cloud-setup: failed 3/30: up 396.83. request failed<br> ><br> ><br> > I changed the localrc as the following:<br> ><br> > disable_service n-net<br> > enable_service q-svc<br> > enable_service q-agt<br> > enable_service q-dhcp<br> > enable_service q-l3<br> > enable_service quantum<br> > Q_PLUGIN=openvswitch<br> ><br> > OVS_ENABLE_TUNNELING=False<br> > GUEST_INTERFACE_DEFAULT=eth0<br> ><br> > this is /etc/quantum/l3_agent.ini:<br> > [DEFAULT]<br> > external_network_bridge = br-ex<br> > use_namespaces = True<br> > metadata_ip =<br> > debug = True<br> > verbose = True<br> ><br> ><br> > On Sep 25, 2012, at 02:12 PM, Dan Wendlandt <<a href="mailto:dan@nicira.com" data-mce-href="mailto:dan@nicira.com">dan@nicira.com</a>> wrote:<br> ><br> > Hi Yapeng,<br> ><br> > Sorry, I think the wiki page you were probably basing this is a bit<br> > out of date. I've updated it.<br> ><br> > The easy solution is to remove the line:<br> > LIBVIRT_FIREWALL_DRIVER=nova.virt.firewall.NoopFirewallDriver from<br> > your localrc<br> ><br> > The background on this is that the NoopFirewallDriver isn't compatible<br> > with any Nova vif-plugging that uses the Linux Bridge. This includes<br> > the LibvirtBridgeDriver, and the LibvirtHybridOVSBridgeDriver (which<br> > devstack now defaults to for Quantum with OVS plugin). This is<br> > being tracked here: <a href="https://bugs.launchpad.net/nova/+bug/1050433" data-mce-href="https://bugs.launchpad.net/nova/+bug/1050433">https://bugs.launchpad.net/nova/+bug/1050433</a> . I<br> > suspect the fix could be just a simple if-check, and could probably be<br> > included in a later stable release. This bug hasn't really been a<br> > priority, as the main reason for using the<br> > LibvirtHybridOVSBridgeDriver is to work with nova security groups, and<br> > using the NoopFirewallDriver disables security groups.<br> ><br> > Dan<br> ><br> ><br> ><br> > On Tue, Sep 25, 2012 at 9:12 AM, Yapeng Wu <<a href="mailto:yapengwu@me.com" data-mce-href="mailto:yapengwu@me.com">yapengwu@me.com</a>> wrote:<br> >> Hello,<br> >><br> >> When I tries to use devstack and quantum rc3 code base ( single node<br> >> environment in a VM, OpenVSwitch Plugin), the launch instance failed with<br> >> "libvir: Network Filter error : Network filter not found:: Could not find<br> >> filter 'nova-instance-instance-00000001-fa163e31fb45" error message in<br> >> Nova.<br> >><br> >> devstack's localrc:<br> >> disable_service n-net<br> >> enable_service q-svc<br> >> enable_service q-agt<br> >> enable_service q-dhcp<br> >> enable_service quantum<br> >> LIBVIRT_FIREWALL_DRIVER=nova.virt.firewall.NoopFirewallDriver<br> >> Q_PLUGIN=openvswitch<br> >><br> >> nova.conf:<br> >> [DEFAULT]$<br> >> verbose=True$<br> >> auth_strategy=keystone$<br> >> allow_resize_to_same_host=True$<br> >> rootwrap_config=/etc/nova/rootwrap.conf$<br> >> compute_scheduler_driver=nova.scheduler.filter_scheduler.FilterScheduler$<br> >> dhcpbridge_flagfile=/etc/nova/nova.conf$<br> >> fixed_range=10.0.0.0/24$<br> >> s3_host=192.168.0.111$<br> >> s3_port=3333$<br> >> network_api_class=nova.network.quantumv2.api.API$<br> >> quantum_admin_username=quantum$<br> >> quantum_admin_password=stack$<br> >> quantum_admin_auth_url=<a href="http://192.168.0.111:35357/v2.0" data-mce-href="http://192.168.0.111:35357/v2.0">http://192.168.0.111:35357/v2.0</a>$<br> >> quantum_auth_strategy=keystone$<br> >> quantum_admin_tenant_name=service$<br> >> quantum_url=<a href="http://localhost:9696" data-mce-href="http://localhost:9696">http://localhost:9696</a>$<br> >> libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver$<br> >> linuxnet_interface_driver=$<br> >><br> >> osapi_compute_extension=nova.api.openstack.compute.contrib.standard_extensions$<br> >> my_ip=192.168.0.111$<br> >> sql_connection=<a>mysql://root:stack@localhost/nova?charset=utf8</a>$<br> >> libvirt_type=qemu$<br> >> libvirt_cpu_mode=none$<br> >> instance_name_template=instance-%08x$<br> >> novncproxy_base_url=<a href="http://192.168.0.111:6080/vnc_auto.html" data-mce-href="http://192.168.0.111:6080/vnc_auto.html">http://192.168.0.111:6080/vnc_auto.html</a>$<br> >> xvpvncproxy_base_url=<a href="http://192.168.0.111:6081/console" data-mce-href="http://192.168.0.111:6081/console">http://192.168.0.111:6081/console</a>$<br> >> vncserver_listen=127.0.0.1$<br> >> vncserver_proxyclient_address=127.0.0.1$<br> >> api_paste_config=/etc/nova/api-paste.ini$<br> >> image_service=nova.image.glance.GlanceImageService$<br> >> ec2_dmz_host=192.168.0.111$<br> >> rabbit_host=localhost$<br> >> rabbit_password=stack$<br> >> glance_api_servers=192.168.0.111:9292$<br> >> force_dhcp_release=True$<br> >> state_path=/opt/stack/data/nova$<br> >> instances_path=/opt/stack/data/nova/instances$<br> >> logging_context_format_string=%(asctime)s %(levelname)s %(name)s<br> >> [%(request_id)s %(user_name)s %(project_name)s] %(instance)s%(message)s$<br> >> volume_api_class=nova.volume.cinder.API$<br> >> compute_driver=libvirt.LibvirtDriver$<br> >> firewall_driver=nova.virt.firewall.NoopFirewallDriver$<br> >> enabled_apis=ec2,osapi_compute,metadata$<br> >><br> >><br> >> this is the instance's libvirt config from nova's log file:<br> >> 2012-09-25 11:36:08 DEBUG nova.virt.libvirt.config<br> >> [req-baee9add-d44b-449e-ac79-8d20bef14252 demo demo] Generated XML <domain<br> >> type="qemu">$<br> >> <uuid>1eb93cef-3bb9-43c3-aac9-728041698c44</uuid>$<br> >> <name>instance-00000001</name>$<br> >> <memory>524288</memory>$<br> >> <vcpu>1</vcpu>$<br> >> <os>$<br> >> <type>hvm</type>$<br> >><br> >> <kernel>/opt/stack/data/nova/instances/instance-00000001/kernel</kernel>$<br> >><br> >> <initrd>/opt/stack/data/nova/instances/instance-00000001/ramdisk</initrd>$<br> >> <cmdline>root=/dev/vda console=ttyS0</cmdline>$<br> >> </os>$<br> >> <features>$<br> >> <acpi/>$<br> >> </features>$<br> >> <clock offset="utc"/>$<br> >> <devices>$<br> >> <disk type="file" device="disk">$<br> >> <driver name="qemu" type="qcow2" cache="none"/>$<br> >> <source<br> >> file="/opt/stack/data/nova/instances/instance-00000001/disk"/>$<br> >> <target bus="virtio" dev="vda"/>$<br> >> </disk>$<br> >> <interface type="bridge">$<br> >> <mac address="fa:16:3e:31:fb:45"/>$<br> >> <source bridge="qbr4a87701a-bf"/>$<br> >> <filterref filter="nova-instance-instance-00000001-fa163e31fb45">$<br> >> <parameter name="IP" value="10.0.0.3"/>$<br> >> <parameter name="DHCPSERVER" value="10.0.0.2"/>$<br> >> <parameter name="PROJNET" value="10.0.0.0"/>$<br> >> <parameter name="PROJMASK" value="255.255.255.0"/>$<br> >> </filterref>$<br> >> </interface>$<br> >> <serial type="file">$<br> >> <source<br> >> path="/opt/stack/data/nova/instances/instance-00000001/console.log"/>$<br> >> </serial>$<br> >> <serial type="pty"/>$<br> >> <input type="tablet" bus="usb"/>$<br> >> <graphics type="vnc" autoport="yes" keymap="en-us" listen="127.0.0.1"/>$<br> >> </devices>$<br> >> </domain>$<br> >> from (pid=12179) to_xml /opt/stack/nova/nova/virt/libvirt/config.py:66$<br> >><br> >> ...<br> >> libvir: Network Filter error : Network filter not found: Could not find<br> >> filter 'nova-instance-instance-00000001-fa163e31fb45'$<br> >> 2012-09-25 11:36:13 ERROR nova.compute.manager<br> >> [req-baee9add-d44b-449e-ac79-8d20bef14252 demo demo] [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] Instance failed to spawn$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] Traceback (most recent call last):$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] File<br> >> "/opt/stack/nova/nova/compute/manager.py", line 748, in _spawn$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] block_device_info)$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] File<br> >> "/opt/stack/nova/nova/exception.py", line 117, in wrapped$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] temp_level, payload)$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] File<br> >> "/usr/lib/python2.7/contextlib.py", line 24, in __exit__$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] self.gen.next()$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] File<br> >> "/opt/stack/nova/nova/exception.py", line 92, in wrapped$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] return f(*args, **kw)$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] File<br> >> "/opt/stack/nova/nova/virt/libvirt/driver.py", line 1062, in spawn$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] block_device_info)$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] File<br> >> "/opt/stack/nova/nova/virt/libvirt/driver.py", line 1888, in<br> >> _create_domain_and_network$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] domain = self._create_domain(xml)$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] File<br> >> "/opt/stack/nova/nova/virt/libvirt/driver.py", line 1867, in<br> >> _create_domain$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44]<br> >> domain.createWithFlags(launch_flags)$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] File<br> >> "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 187, in<br> >> doit$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] result =<br> >> proxy_call(self._autowrap, f, *args, **kwargs)$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] File<br> >> "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 147, in<br> >> proxy_call$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] rv = execute(f,*args,**kwargs)$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] File<br> >> "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 76, in<br> >> tworker$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] rv = meth(*args,**kwargs)$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] File<br> >> "/usr/lib/python2.7/dist-packages/libvirt.py", line 581, in<br> >> createWithFlags$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] if ret == -1: raise libvirtError<br> >> ('virDomainCreateWithFlags() failed', dom=self)$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44] libvirtError: Network filter not<br> >> found: Could not find filter<br> >> 'nova-instance-instance-00000001-fa163e31fb45'$<br> >> 2012-09-25 11:36:13 TRACE nova.compute.manager [instance:<br> >> 1eb93cef-3bb9-43c3-aac9-728041698c44]-$<br> >><br> >><br> >> sudo ovs-vsctl show<br> >> ff5479be-2277-4e80-962e-9eed63b975ef<br> >> Bridge br-int<br> >> Port br-int<br> >> Interface br-int<br> >> type: internal<br> >> Port "qvo2f22c914-84"<br> >> tag: 1<br> >> Interface "qvo2f22c914-84"<br> >> Port "tapf6d67937-29"<br> >> tag: 1<br> >> Interface "tapf6d67937-29"<br> >> type: internal<br> >> ovs_version: "1.4.0+build0"<br> >><br> >> Could someone on the list give me hint what went wrong?<br> >><br> >> Thanks,<br> >> Yapeng<br> >><br> >> _______________________________________________<br> >> OpenStack-dev mailing list<br> >> <a href="mailto:OpenStack-dev@lists.openstack.org" data-mce-href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br> >> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" data-mce-href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br> >><br> ><br> ><br> ><br> > --<br> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> > Dan Wendlandt<br> > Nicira, Inc: <a href="http://www.nicira.com" data-mce-href="http://www.nicira.com">www.nicira.com</a><br> > twitter: danwendlandt<br> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> ><br> > _______________________________________________<br> > OpenStack-dev mailing list<br> > <a href="mailto:OpenStack-dev@lists.openstack.org" data-mce-href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br> > <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" data-mce-href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br> ><br> ><br> > _______________________________________________<br> > OpenStack-dev mailing list<br> > <a href="mailto:OpenStack-dev@lists.openstack.org" data-mce-href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br> > <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" data-mce-href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br> ><br> <br> <br> <br> -- <br> ~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> Dan Wendlandt<br> Nicira, Inc: <a href="http://www.nicira.com" data-mce-href="http://www.nicira.com">www.nicira.com</a><br> twitter: danwendlandt<br> ~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> <br> _______________________________________________<br> OpenStack-dev mailing list<br> <a href="mailto:OpenStack-dev@lists.openstack.org" data-mce-href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" data-mce-href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br></div></div></blockquote></div></body></html>