-
Notifications
You must be signed in to change notification settings - Fork 114
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
Allow creating policies that ignore NUMA topology #435
Allow creating policies that ignore NUMA topology #435
Conversation
Thanks for your PR,
To skip the vendors CIs use one of:
|
Thanks for your PR,
To skip the vendors CIs use one of:
|
Thanks for your PR,
To skip the vendors CIs use one of:
|
Pull Request Test Coverage Report for Build 5135001239
💛 - Coveralls |
Thanks for your PR,
To skip the vendors CIs use one of:
|
Thanks for your PR,
To skip the vendors CIs use one of:
|
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.
Great work!
clean PR :)
/lgtm
Thanks for your PR,
To skip the vendors CIs use one of:
|
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.
minor nit otherwise lgtm
+1 on the refactors here :)
@@ -57,6 +57,8 @@ type SriovNetworkNodePolicySpec struct { | |||
// +kubebuilder:validation:Enum=virtio | |||
// VDPA device type. Allowed value "virtio" | |||
VdpaType string `json:"vdpaType,omitempty"` | |||
// Exclude device's NUMA node when advertising this resource. Default to false. |
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.
nit: Exclude device's NUMA node when advertising this resource by sriov network device plugin
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 good, thanks
Thanks for your PR,
To skip the vendors CIs use one of:
|
@zeeke lets rebase and we are good 2 go with merging this one |
The function mainly creates and updates ResourceConfig in the list. Split the function into two smaller ones. Adjust unit test to satisfy `SriovNetworkNodePolicyReconciler` dependencies through fake client. Signed-off-by: Andrea Panattoni <[email protected]>
Add field `SriovNetworkNodePolicy.Spec.ExcludeTopology` and forward it to the sriov-device-plugin configuration. Signed-off-by: Andrea Panattoni <[email protected]>
Multiple SriovNetworkNodePolicies may target the same resource, but the new field must have the same value. Add a resource validation step to ensure this condition is met. Refactor `Spec.NicSelector.PfNames` check to its own function. Signed-off-by: Andrea Panattoni <[email protected]>
Thanks for your PR,
To skip the vendors CIs use one of:
|
This PR allows users to create policies that set the sriov-network-device plugin
ExcludeTopology
field in the advertised resource list.The feature is helpful in scenarios where the kubelet is configured with
--topology-manager-policy single-numa-node
[2] and some workloads may run with a NIC that is not aligned to the CPU/Memory NUMA node.[1] https://github.com/k8snetworkplumbingwg/sriov-network-device-plugin/blob/master/pkg/types/types.go#L101
[2] https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/#policy-single-numa-node