microsoft/Freeflow

Linux Containers(LXC) - does it work?

kkbachu opened this issue · 6 comments

Hi,
Are there steps to deploy it with linux containers?
I tried following the steps described with Dockers, but when I start the router.
I gave HOST_IP=hostname of the Ubuntu host where I deployed a linux container for router1.

I get this error -
/usr/share/Freeflow/ffrouter# ./router router1
could not get device

Thanks for your help.
_Kiran

Another question I have is or validating my understanding.
I have an App that uses RDMA(Mellanox), I install it in a container. My container host doesn't have Mellanox NIC card but installed Mellanox drivers and stuff. Does the idea of 'router' container still require Mellanox NIC card on the container host? My understanding from reading FreeFlow papers is that RDMA NIC is not required on the container host which is what I am exactly looking for. I am looking for software based RDMA so that RDMA based application can work in a non-RDMA environment.
Please help clarify.

We never tested Freeflow with SoftRoCE (librxe). The goal of Freeflow is to let containers use RDMA without direct access to RDMA NIC, while the physical host has the RDMA NIC.

Did you use librxe on the host, and can you run your RDMA program on your host using librxe? If so, Freeflow might work.

Thanks for the clarification.
I am testing with RoCE with Mellanox, can't get the router to start successfully.
Few questions on the usage -

  1. Do I need to have overlay network installed (eg., Weave) when I have Linux Containers on my host?
  2. What is /freeflow in below command? I don't have that directory on my host, do I need to install something?
    sudo docker run --name node1 --net weave -e "FFR_NAME=router1" -e "FFR_ID=10" -e "LD_LIBRARY_PATH=/usr/lib" -e --ipc=container:router1 -v /sys/class/:/sys/class/ -v /freeflow:/freeflow -v /dev/:/dev/ --privileged --device=/dev/infiniband/uverbs0 --device=/dev/infiniband/rdma_cm -it -d ubuntu /bin/bash

question 2:
i think we should install ofed and build the freeflow,install ffr and ffl in the ubuntu container, shouldn't we?

So... did you get it working with LXC?

It didn't work for me. I haven't tried it again.