-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
VPP with dpdk plugin in unprivileged container #291
Comments
Updated ticket with additional information |
We have now two jira tickets tracking unprivileged VPP in FD.io:
Pursuing both actively with LFN FD.io community. Will update here when any of above jira ticket states changes. |
Note that collected error logs are from @pmikus tests in FD.io CSIT labs. They have been reviewed by FD.io VPP committer and validated as correct. |
To start with baseline tests there are two minimal settings required
|
Been looking into the vfio part of this over the last couple of days.
For now I don't see any ways of running VPP containers without the |
I will take a look |
When running VPP inside a container, some issues have been seen when trying to use NIC ports/interfaces (PFs/VFs) through the dpdk plugin.
Running the container as privileged (
securityContext -> privileged: true
) works as expected, and can be sufficient - But still not ideal for various reasons.Consider the following configuration file:
Running the POD results in the following error from VPP:
Several variations of the above configuration, with additional mounts and capabilities added, has been tested as well. So far these tests have all been unsuccessful, and the only solution that has worked it to run the POD as privileged.
At this point, any container using PFs/VFs will be run a privileged. An example of this can be seen in #288. While each POD is able to see and use all of the interfaces, using a CNI such as SRIOV Network Device Plugin it is possible to assign a subset of interfaces to each POD, and by using this when generating the VPP configuration the interfaces used by each POD can be limited to the desired amount. This solution works in a controlled environment, under the assumption that each POD will stick to its requested resources. It is however possible for a POD to use a modified VPP configuration which uses more or all resources on the host.
The text was updated successfully, but these errors were encountered: