Hi DPDK Users,

I am trying to use docker container and ovs(2.6.0)-dpdk(16.07) to setup a test. 
I want to setup two docker containers, each of them will use a virtual device 
(socket) created by the ovs-dpdk. The final purpose would let the two 
containers talk to each other.


Setup ovs-dpdk

  1.  ovsdb-tool create $ovs-dir/etc/openvswitch/conf.db 
$ovs-dir/share/openvswitch/vswitch.ovsschema
  2.  ovsdb-server --remote=punix:$ovs-dir/var/run/openvswitch/db.sock 
--remote=db:Open_vSwitch,Open_vSwitch,manager_options --pidfile --detach
  3.  ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-init=true
  4.  ovs-vsctl --no-wait set Open_vSwitch . 
other_config:dpdk-socket-mem="512,512"
  5.  ovs-vswitchd  unix:$ovs-dir/var/run/openvswitch/db.sock --pidfile 
--detach  --log-file=$ovs-dir/temp.log

Setup bridge and ports

  1.  ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev
  2.  ovs-vsctl add-port br0 vhost-user1 -- set Interface vhost-user1 
type=dpdkvhostuser ofport_request=1
  3.  ovs-vsctl add-port br0 vhost-user2 -- set Interface vhost-user2 
type=dpdkvhostuser ofport_request=2
  4.  ovs-ofctl add-flow br0 priority=1000,in_port=1,actions=output:2
  5.  ovs-ofctl add-flow br0 priority=1000,in_port=2,actions=output:1

Run the docker container

  1.  docker run -it --privileged -v 
$ovs-dir/var/run/openvswitch/vhost-user1:/var/run/usvhost -v 
/mnt/huge/:/dev/hugepages/ $docker-image bash

Run the dpdk application in the docker container

  1.  $dpdk-app -c 0x01 --socket-mem=128,0 
--vdev=virtio_user0,path=/var/run/usvhost --file-prefix="docker1"

However, I encountered this error
PMD: vhost_user_setup(): connect error, Connection refused
PMD: virtio_user_dev_init(): backend set up fails
PMD: virtio_user_pmd_devinit(): virtio_user_dev_init fails
EAL: failed to initialize virtio_user0 device

It seems like the application in the docker container cannot connect the socket 
created by the ovs-dpdk.

Can anybody please help me and point out some possible solutions? Looking 
forward to your reply. Thanks very much for your help.

Best wishes,
Xiaoban

Reply via email to