-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Add SR-IOV doc for shift-on-stack #28418
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
Conversation
|
/cc @jboxman ptal, the sriov doc for https://issues.redhat.com/browse/SDN-1170 /cc @atyronesmith |
|
@zshi-redhat looks like after 2 years I learned how to push to someone else's PR; Can you look at the changes and let me know what you think? Thanks! |
| pfNames: ["<pf_name>", ...] <11> | ||
| rootDevices: ["<pci_bus_id>", "..."] <12> | ||
| netFilter: "<filter_string>" <13> | ||
| netFilter: "<filter_string>" <13> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like the indent is not perfect yet, we need to keep it the same as other selectors like rootDevices.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indent still doesn't look correct?
| ==== | ||
| `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` is the `network_id` from `/var/config/openstack/latest/network_data.json` metadata file. | ||
| ==== | ||
| <13> Optional: The platform specific filter string. The only supported platform is {rh-openstack-first}. Acceptable values are of the following format: `openstack/NetworkID:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`. Replace `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` with the value from the `/var/config/openstack/latest/network_data.json` metadata file. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice change!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In addition, the administrator should also know the OpenStack Network UUID apriori as part of network planning. The OpenStack networks are created to glue together the different VNF/CNF components in the system and have been architected to carry the necessary information.
| ---- | ||
|
|
||
| The following example describes the configuration for a SR-IOV device in OpenStack Virtual Machine: | ||
| The following example describes the configuration for an SR-IOV device in a {rh-openstack} virtual machine: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I noticed the platform is using {rh-openstack-first} in <13>, but this one is {rh-openstack}, is there any difference?
You got to share the tips :-) |
atyronesmith
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe a few tweaks on line 64, but not really necessary.
| ==== | ||
| `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` is the `network_id` from `/var/config/openstack/latest/network_data.json` metadata file. | ||
| ==== | ||
| <13> Optional: The platform specific filter string. The only supported platform is {rh-openstack-first}. Acceptable values are of the following format: `openstack/NetworkID:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`. Replace `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` with the value from the `/var/config/openstack/latest/network_data.json` metadata file. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In addition, the administrator should also know the OpenStack Network UUID apriori as part of network planning. The OpenStack networks are created to glue together the different VNF/CNF components in the system and have been architected to carry the necessary information.
| pfNames: ["<pf_name>", ...] <11> | ||
| rootDevices: ["<pci_bus_id>", "..."] <12> | ||
| netFilter: "<filter_string>" <13> | ||
| netFilter: "<filter_string>" <13> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indent still doesn't look correct?
| feature.node.kubernetes.io/network-sriov.capable: "true" | ||
| numVfs: 1 <1> | ||
| nicSelector: | ||
| vendor: "15b3" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The 'vendor' and 'deviceID' fields are mostly superfluous as there real match is to the UUID.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@atyronesmith I don't have environment to test, if we remove vendor/device IDs from policy, will it expose virtio or other non-sriov devices as k8s resource when the given network ID matches ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My environment is down now as well.... However, if I remember correctly (and I look at https://github.com/openshift/sriov-network-operator/blob/f6aba07546d2c85b319bf3bfeb9deb45a2f007f5/api/v1/helper.go#L429)
A non-zero netFilter will only match that specific netfiler.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@atyronesmith , Jason asked me to do light wordsmithing on this PR and then get it merged. Regarding these two comments about the nicSelector:
Should netFilter be aligned with rootDevices? (I'm guessing yes if the same receiver function can handle both in the helper.go file, but I'm using my imagination.)
The 'vendor' and 'deviceID' fields are mostly superfluous as there real match is to the UUID.
Do you want the doc to suggest using netFilter because it is the most specific? Depending on your answer to this question and if you indicate that netFilter is subordinate to nicSelector, then netFilter deserves some mention in the callout for #8, nicSelector.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @mikemckiernan, netFilter should be used as it is the most specific. RootDevices does not need to be used as netFilter is specific. NetFilter is subordinate to nicSelector and is at the same level as rootDevices, vendor, devicdeID, etc...
|
@zshi-redhat, I used: The |
|
@zshi-redhat, I wonder if this file also needs to be updated? |
@jboxman thanks for the question, do you mean updating the |
|
Going to close this PR as superseded. |
No description provided.