-
Notifications
You must be signed in to change notification settings - Fork 59
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
New Package Request: mstflint #1264
Comments
Thanks for the report. Two quick comments from my side:
Thus, if the main topic here is "performing host network configuration (before Kubelet starts)", IMHO it would be better to start discussing your usecases with the NetworkManager (and nmstate) folks to make sure it can be covered there. |
Hi @lucab thanks for the comment! let me try to answer, when I say network configuration it's not something related to NetworkManager. Yes network manager will configure the IP address and other stuff on the virtual functions but first, you need to create them. to do that on Mellanox cards you need to run something like this
After the reboot we are able to use the regular sysfs to create the 20 virtual functions so NetworkManager will be able to use them for other network configurations. The reason I need this package is that without it there is no way to create virtual functions for Mellanox cards. |
In OCP, we already pull and run containers via I see no reason this wouldn't work here too. |
Hi @cgwalters :) That is right we can use podman to run containers before kubelet and my team is also doing that to load out of tree drivers. But there are some problems with that solution that makes it hard to use a container in this case:
I hope this explains better the situation and the reason why we will like to have the binary on the host and not use it inside a container |
OK, but is it easier to take a hard dependency on this tool being on the host?
Sure, but you're also proposing shipping this in a container in the core payload (the host system is a container too!). I'm just saying we can use a different container.
As already covered, this container would run at "installation time" i.e. the firstboot before kubelet starts. See https://github.com/openshift/machine-config-operator/blob/master/docs/OSUpgrades.md#applying-os-updates-before-kubelet |
To flesh this out slightly, right now (i.e. today) you can:
|
We discussed this at our community meeting today. This issue is still new so no decisions were made but the discussion did yield some patterns. Keep in mind this discussion was had in the context of Fedora CoreOS specifically: Arguments for adding:
Arguments against adding:
We will discuss more in the coming meeting(s). |
@SchSeba do you have further feedback on this? Could you maybe be around in one of our next meetings. We clearly see that there is a least a package split needed, in order to avoid the Python dependency. |
we will continue to use the mstflint package from inside a container thanks for the help! |
Please try to answer the following questions about the package you are requesting:
There is a need to configure Mellanox Network and SmartNics cards from the Host.
For example, configure the mode of the bluefield 2 dpu. The number of virtual functions for the Mellanox network cards like CX4,CX5,CX6
Today the SR-IOV network operator does run this package inside a container but the request is to have the network configuration done before kubelet even starts. The request is to have virtual functions ready and configured with Vlans Bonds so for example the SDN network will be able to run on a bond interface created from the VFs (of two different PFs)
The second use case is to switch the mode of the Bluefield 2 dpu card from SmartNic to a regular Mellanox CX6 network card.
No
Yes networking issues related to Mellanox Cards only
No, we need to have it as day 1 to change the operation mode of the Bluefield 2 dpu for example, or to connect the SDN to a VF instead of a PF
The package Doesn't contain any services
Not that I am aware of.
Not that I am aware of.
The text was updated successfully, but these errors were encountered: