Error running ipdk demo on Fedora 33
The following error is observed while running ipdk demo on Fedora 33: Creating vhost-user ports Return grpc errno (14), Reason: failed to connect to all addresses Return grpc errno (14), Reason: failed to connect to all addresses Generating simple_l3 pipeline package with P4C and OVS pipeline builder I20220207 23:07:56.364490 567 bf_pipeline_builder.cc:113] Found P4 program: simple_l3 I20220207 23:07:56.364598 567 bf_pipeline_builder.cc:120] Found pipeline: pipe Programming P4-OVS pipeline CRITICAL:root:StreamChannel error, closing stream CRITICAL:root:P4Runtime RPC error (UNAVAILABLE): failed to connect to all addresses CRITICAL:root:Failed to establish session with server Add table rules to the pipeline CRITICAL:root:StreamChannel error, closing stream CRITICAL:root:P4Runtime RPC error (UNAVAILABLE): failed to connect to all addresses CRITICAL:root:Failed to establish session with server CRITICAL:root:StreamChannel error, closing stream CRITICAL:root:P4Runtime RPC error (UNAVAILABLE): failed to connect to all addresses CRITICAL:root:Failed to establish session with server
Do you have some more system information? Running in Fedora Docker container, within a Vagrant VM or on a bare metal Fedora system?
It looks like p4ovs isn't started? Can you check that with ovs-vsctl show
A server running Fedora 33 and tried to follow https://github.com/ipdk-io/ipdk/blob/main/build/README_DOCKER.md. Section 1 completed and tried the command "ipdk demo" in Section 2. It worked on Ubuntu.
Can you do ipdk status long and then ipdk connect and then ps -ef | grep ovs and then exit + copy all the output of the previous commands here?
Thanks for opening this issue @stadju, I'll try to replicate this today.
@stadju I don't see this exact error. From your earlier point, it seems that both programming the ports using OpenConfig and building the P4 pipeline are failing. This all works just fine for me both running ipdk demo and by hand:
[root@fe6875653295 scripts]# gnmi-cli set "device:virtual-device,name:net_vhost0,host:host1,\
> device-type:VIRTIO_NET,queues:1,socket-path:/tmp/vhost-user-0,\
> port-type:LINK"
Set request, successful...!!!
[root@fe6875653295 scripts]# gnmi-cli set "device:virtual-device,name:net_vhost1,host:host2,\
> device-type:VIRTIO_NET,queues:1,socket-path:/tmp/vhost-user-1,\
> port-type:LINK"
Set request, successful...!!!
[root@fe6875653295 scripts]#
[root@fe6875653295 simple_l3]# ovs_pipeline_builder --p4c_conf_file=simple_l3.conf \
> --bf_pipeline_config_binary_file=simple_l3.pb.bin
I20220208 21:22:46.396765 101 bf_pipeline_builder.cc:113] Found P4 program: simple_l3
I20220208 21:22:46.396925 101 bf_pipeline_builder.cc:120] Found pipeline: pipe
[root@fe6875653295 simple_l3]#
I'm running the fedora:33 container inside of a Virtualbox VM. Are you running this natively on a host?
I am seeing some other errors where qemu-kvm crashes on fedora, but that is different than the error you are seeing.
@mestery I ran natively on a host. Tried 2 different servers. Same error. I could run the commands inside the container successfully but not from host.
Hi @stadju, I had the same gRPC problem failed to connect to all addresses when running ipdk demo. And all errors are gone after I add 127.0.0.1 to the env variable no_proxy:
[root@833c02b6a347 scripts]# echo $no_proxy
no_proxy=noproxy.com,.10.0.0.0/8,192.168.0.0/16,localhost,.local,127.0.0.0/8,127.0.0.1
Before that, ipdk container's no_proxy is the value defined in Vagrantfile:
[root@833c02b6a347 scripts]# echo $no_proxy
no_proxy=noproxy.com,.10.0.0.0/8,192.168.0.0/16,localhost,.local,127.0.0.0/8
I didn't use vagrant. Closing this issue.