[openstack-dev] [neutron][networking-sfc] Unable to create openstack SFC

Vincent.Chao vincentchao99 at gmail.com
Thu Sep 1 02:42:36 UTC 2016


Hi Neutrons,

I met this situation once in the release Liberty.
Here is the thing.
When the create_port_chain() is called,
(@networking-sfc/networking_sfc/services/sfc/drivers/ovs/driver.py)
it goes the following code path
   -> _thread_update_path_nodes()
   ->_update_path_node_flowrules()
   ->_update_path_node_port_flowrules()
   ->_build_portchain_flowrule_body()
   ->_update_path_node_next_hops()
   ->_get_port_subnet_gw_info_by_port_id
   ->_get_port_subnet_gw_info()    raise exc.SfcNoSubnetGateway
if you didn't give the network a router, it raises SfcNoSubnetGateway .
And then back to the plugin.py: create_port_chain(), cache the exception
sfc_exc.SfcDriverError as e
In this exception, there is a delete_port_chain() method.
But due to the synchronization problem between DB and ovs-bridge, it will
delete failure.
I hope this info. could help anyone who uses a liberty version.
Next time, don't forget giving a router before creating a port chain.

I don't see this code path in the master branch.
It may be better in mitaka.

Thanks
Vincent



2016-08-31 2:19 GMT+08:00 Cathy Zhang <Cathy.H.Zhang at huawei.com>:

> Hi Alioune,
>
>
>
> It is weird that when you create a port chain, you get a “chain delete
> failed” error message.
>
> We never had this problem. Chain deletion is only involved when you do
> “delete chain” or “update chain”.
>
> Not sure which networking code file combination you are using or whether
> it is because your system is not properly cleaned up or not properly
> installed.
>
> We are going to release the networking-sfc mitaka version soon.
>
> I would suggest that you wait a little bit and then use the official
> released mitaka version and reinstall the feature on your system.
>
>
>
> Thanks,
>
> Cathy
>
>
>
> *From:* Alioune [mailto:balioune3 at gmail.com]
> *Sent:* Tuesday, August 30, 2016 8:03 AM
> *To:* OpenStack Development Mailing List (not for usage questions)
> *Cc:* Cathy Zhang; Mohan Kumar; Henry Fourie
> *Subject:* Re: [openstack-dev][neutron][networking-sfc] Unable to create
> openstack SFC
>
>
>
> Hi,
>
> Have you received my previous email ?
>
>
>
> Regards,
>
>
>
> On 15 August 2016 at 13:39, Alioune <balioune3 at gmail.com> wrote:
>
> Hi all,
>
> I'm trying to launch Openstack SFC as explained in[1] by creating 2 SFs, 1
> Web Server (DST) and the DHCP namespace as the SRC.
>
> I've installed OVS (Open vSwitch) 2.3.90 with Linux kernel 3.13.0-62 and
> the neutron L2-agent runs correctly.
>
> I followed the process by creating classifier, port pairs and port_group
> but I got a wrong message "delete_port_chain failed." when creating
> port_chain [2]
>
> I tried to create the neutron ports with and without the option
> "--no-security-groups" then tcpdpump on SFs tap interfaces but the ICMP
> packets don't go through the SFs.
>
>
>
> Can anyone advice to fix? that ?
>
> What's your channel on IRC ?
>
>
>
> Regards,
>
>
>
>
>
> [1] https://wiki.openstack.org/wiki/Neutron/ServiceInsertionAndChaining
>
> [2]
>
> vagrant at ubuntu:~/openstack_sfc$ ./08-os_create_port_chain.sh
>
> delete_port_chain failed.
>
> vagrant at ubuntu:~/openstack_sfc$ cat 08-os_create_port_chain.sh
>
> #!/bin/bash
>
>
>
> neutron port-chain-create --port-pair-group PG1 --port-pair-group PG2
> --flow-classifier FC1 PC1
>
>
>
> [3] Output OVS Flows
>
>
>
> vagrant at ubuntu:~$ sudo ovs-ofctl dump-flows br-tun -O OpenFlow13
>
> OFPST_FLOW reply (OF1.3) (xid=0x2):
>
>  cookie=0xbc2e9105125301dc, duration=9615.385s, table=0, n_packets=146,
> n_bytes=11534, priority=1,in_port=1 actions=resubmit(,2)
>
>  cookie=0xbc2e9105125301dc, duration=9615.382s, table=0, n_packets=0,
> n_bytes=0, priority=0 actions=drop
>
>  cookie=0xbc2e9105125301dc, duration=9615.382s, table=2, n_packets=5,
> n_bytes=490, priority=0,dl_dst=00:00:00:00:00:00/01:00:00:00:00:00
> actions=resubmit(,20)
>
>  cookie=0xbc2e9105125301dc, duration=9615.381s, table=2, n_packets=141,
> n_bytes=11044, priority=0,dl_dst=01:00:00:00:00:00/01:00:00:00:00:00
> actions=resubmit(,22)
>
>  cookie=0xbc2e9105125301dc, duration=9615.380s, table=3, n_packets=0,
> n_bytes=0, priority=0 actions=drop
>
>  cookie=0xbc2e9105125301dc, duration=9615.380s, table=4, n_packets=0,
> n_bytes=0, priority=0 actions=drop
>
>  cookie=0xbc2e9105125301dc, duration=8617.106s, table=4, n_packets=0,
> n_bytes=0, priority=1,tun_id=0x40e actions=push_vlan:0x8100,set_
> field:4097->vlan_vid,resubmit(,10)
>
>  cookie=0xbc2e9105125301dc, duration=9615.379s, table=6, n_packets=0,
> n_bytes=0, priority=0 actions=drop
>
>  cookie=0xbc2e9105125301dc, duration=9615.379s, table=10, n_packets=0,
> n_bytes=0, priority=1 actions=learn(table=20,hard_
> timeout=300,priority=1,cookie=0xbc2e9105125301dc,NXM_OF_
> VLAN_TCI[0..11],NXM_OF_ETH_DST[]=NXM_OF_ETH_SRC[],load:0-
> >NXM_OF_VLAN_TCI[],load:NXM_NX_TUN_ID[]->NXM_NX_TUN_ID[],
> output:NXM_OF_IN_PORT[]),output:1
>
>  cookie=0xbc2e9105125301dc, duration=9615.378s, table=20, n_packets=5,
> n_bytes=490, priority=0 actions=resubmit(,22)
>
>  cookie=0xbc2e9105125301dc, duration=9615.342s, table=22, n_packets=146,
> n_bytes=11534, priority=0 actions=drop
>
> vagrant at ubuntu:~$ sudo ovs-ofctl dump-flows br-int -O OpenFlow13
>
> OFPST_FLOW reply (OF1.3) (xid=0x2):
>
>  cookie=0xbc2e9105125301dc, duration=6712.090s, table=0, n_packets=0,
> n_bytes=0, priority=10,icmp6,in_port=7,icmp_type=136 actions=resubmit(,24)
>
>  cookie=0xbc2e9105125301dc, duration=6709.623s, table=0, n_packets=0,
> n_bytes=0, priority=10,icmp6,in_port=8,icmp_type=136 actions=resubmit(,24)
>
>  cookie=0xbc2e9105125301dc, duration=6555.755s, table=0, n_packets=0,
> n_bytes=0, priority=10,icmp6,in_port=10,icmp_type=136
> actions=resubmit(,24)
>
>  cookie=0xbc2e9105125301dc, duration=6559.596s, table=0, n_packets=0,
> n_bytes=0, priority=10,icmp6,in_port=9,icmp_type=136 actions=resubmit(,24)
>
>  cookie=0xbc2e9105125301dc, duration=6461.028s, table=0, n_packets=0,
> n_bytes=0, priority=10,icmp6,in_port=11,icmp_type=136
> actions=resubmit(,24)
>
>  cookie=0xbc2e9105125301dc, duration=6712.071s, table=0, n_packets=13,
> n_bytes=546, priority=10,arp,in_port=7 actions=resubmit(,24)
>
>  cookie=0xbc2e9105125301dc, duration=6709.602s, table=0, n_packets=0,
> n_bytes=0, priority=10,arp,in_port=8 actions=resubmit(,24)
>
>  cookie=0xbc2e9105125301dc, duration=6555.727s, table=0, n_packets=0,
> n_bytes=0, priority=10,arp,in_port=10 actions=resubmit(,24)
>
>  cookie=0xbc2e9105125301dc, duration=6559.574s, table=0, n_packets=12,
> n_bytes=504, priority=10,arp,in_port=9 actions=resubmit(,24)
>
>  cookie=0xbc2e9105125301dc, duration=6461.005s, table=0, n_packets=15,
> n_bytes=630, priority=10,arp,in_port=11 actions=resubmit(,24)
>
>  cookie=0xbc2e9105125301dc, duration=9620.388s, table=0, n_packets=514,
> n_bytes=49656, priority=0 actions=NORMAL
>
>  cookie=0xbc2e9105125301dc, duration=9619.277s, table=0, n_packets=0,
> n_bytes=0, priority=20,mpls actions=resubmit(,10)
>
>  cookie=0xbc2e9105125301dc, duration=6712.111s, table=0, n_packets=25,
> n_bytes=2674, priority=9,in_port=7 actions=resubmit(,25)
>
>  cookie=0xbc2e9105125301dc, duration=6559.621s, table=0, n_packets=24,
> n_bytes=2576, priority=9,in_port=9 actions=resubmit(,25)
>
>  cookie=0xbc2e9105125301dc, duration=6555.777s, table=0, n_packets=2,
> n_bytes=140, priority=9,in_port=10 actions=resubmit(,25)
>
>  cookie=0xbc2e9105125301dc, duration=6461.082s, table=0, n_packets=47,
> n_bytes=4830, priority=9,in_port=11 actions=resubmit(,25)
>
>  cookie=0xbc2e9105125301dc, duration=6709.646s, table=0, n_packets=3,
> n_bytes=230, priority=9,in_port=8 actions=resubmit(,25)
>
>  cookie=0xbc2e9105125301dc, duration=9619.265s, table=10, n_packets=0,
> n_bytes=0, priority=0 actions=drop
>
>  cookie=0xbc2e9105125301dc, duration=9620.378s, table=23, n_packets=0,
> n_bytes=0, priority=0 actions=drop
>
>  cookie=0xbc2e9105125301dc, duration=9620.368s, table=24, n_packets=0,
> n_bytes=0, priority=0 actions=drop
>
>  cookie=0xbc2e9105125301dc, duration=6709.633s, table=24, n_packets=0,
> n_bytes=0, priority=2,icmp6,in_port=8,icmp_type=136,nd_target=fe80::f816:3eff:fe2a:fe
> actions=NORMAL
>
>  cookie=0xbc2e9105125301dc, duration=6712.101s, table=24, n_packets=0,
> n_bytes=0, priority=2,icmp6,in_port=7,icmp_type=136,nd_target=fe80::f816:3eff:fee7:1362
> actions=NORMAL
>
>  cookie=0xbc2e9105125301dc, duration=6559.607s, table=24, n_packets=0,
> n_bytes=0, priority=2,icmp6,in_port=9,icmp_type=136,nd_target=fe80::f816:3eff:fe91:95ee
> actions=NORMAL
>
>  cookie=0xbc2e9105125301dc, duration=6555.766s, table=24, n_packets=0,
> n_bytes=0, priority=2,icmp6,in_port=10,icmp_type=136,nd_target=fe80::f816:3eff:fe76:d998
> actions=NORMAL
>
>  cookie=0xbc2e9105125301dc, duration=6461.055s, table=24, n_packets=0,
> n_bytes=0, priority=2,icmp6,in_port=11,icmp_type=136,nd_target=fe80::f816:3eff:fe5e:ed96
> actions=NORMAL
>
>  cookie=0xbc2e9105125301dc, duration=6709.611s, table=24, n_packets=0,
> n_bytes=0, priority=2,arp,in_port=8,arp_spa=55.55.55.12
> actions=resubmit(,25)
>
>  cookie=0xbc2e9105125301dc, duration=6555.741s, table=24, n_packets=0,
> n_bytes=0, priority=2,arp,in_port=10,arp_spa=55.55.55.14
> actions=resubmit(,25)
>
>  cookie=0xbc2e9105125301dc, duration=6712.080s, table=24, n_packets=13,
> n_bytes=546, priority=2,arp,in_port=7,arp_spa=55.55.55.11
> actions=resubmit(,25)
>
>  cookie=0xbc2e9105125301dc, duration=6559.584s, table=24, n_packets=12,
> n_bytes=504, priority=2,arp,in_port=9,arp_spa=55.55.55.13
> actions=resubmit(,25)
>
>  cookie=0xbc2e9105125301dc, duration=6461.015s, table=24, n_packets=15,
> n_bytes=630, priority=2,arp,in_port=11,arp_spa=55.55.55.15
> actions=resubmit(,25)
>
>  cookie=0xbc2e9105125301dc, duration=6709.714s, table=25, n_packets=0,
> n_bytes=0, priority=2,in_port=8,dl_src=fa:16:3e:2a:00:fe actions=NORMAL
>
>  cookie=0xbc2e9105125301dc, duration=6559.641s, table=25, n_packets=34,
> n_bytes=2940, priority=2,in_port=9,dl_src=fa:16:3e:91:95:ee actions=NORMAL
>
>  cookie=0xbc2e9105125301dc, duration=6461.117s, table=25, n_packets=60,
> n_bytes=5320, priority=2,in_port=11,dl_src=fa:16:3e:5e:ed:96
> actions=NORMAL
>
>  cookie=0xbc2e9105125301dc, duration=6712.130s, table=25, n_packets=36,
> n_bytes=3080, priority=2,in_port=7,dl_src=fa:16:3e:e7:13:62 actions=NORMAL
>
>  cookie=0xbc2e9105125301dc, duration=6555.801s, table=25, n_packets=0,
> n_bytes=0, priority=2,in_port=10,dl_src=fa:16:3e:76:d9:98 actions=NORMAL
>
>
>
>
>
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160901/47019ba6/attachment.html>


More information about the OpenStack-dev mailing list