[libvirt_manager] Allow for multi-numa guest deployment#3686
[libvirt_manager] Allow for multi-numa guest deployment#3686jamepark4 wants to merge 1 commit intoopenstack-k8s-operators:mainfrom
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/a7bff98fca3f4585899a8e5651cb9ede ✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 15m 36s |
2da3e0a to
c94513c
Compare
|
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/8382be646dc64af99078d9a48014c756 ✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 02m 50s |
c94513c to
edea391
Compare
|
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/67dc2b64a8b64d969257d422126ff0e3 ✔️ openstack-k8s-operators-content-provider SUCCESS in 1h 38m 27s |
edea391 to
22fe270
Compare
|
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/9d5465b74e2848a9bf69f98439617884 ✔️ openstack-k8s-operators-content-provider SUCCESS in 1h 43m 19s |
22fe270 to
efef9d5
Compare
efef9d5 to
3bb239c
Compare
Allow for guests to deploy with multiple numa nodes if a numa key is supplied to the cifmw_libvirt_manager_configuration when defining a guest. This is useful when testing multi-numa environments that take advantage of NUMA affinity and managing cpu policy across a slightly more complex architecture. Logic assumes operator will define an evenly distributed system and will not take into account remainders. Signed-off-by: James Parker jparker@redhat.com
2a1c0bf to
8a0fa12
Compare
|
This PR is stale because it has been for over 15 days with no activity. |
| <cpu mode='host-passthrough' check='none'> | ||
| {% if vm_data.numa is defined and vm_data.numa|int > 1 %} | ||
| <numa> | ||
| {% set cores_per_node = (vm_data.cpus|int // vm_data.numa|int) %} |
There was a problem hiding this comment.
I had no previous knowledge with NUMA
(non-blocking) question: As we're dropping here reminders we're going to have some CPUs not allocated.
Should be possible to allocate +1 node if we have some reminders and if it's the last node?
There was a problem hiding this comment.
In my original workup I did take that into consideration, but it was a little verbose. Given how rare it would be to need an uneven Core to NUMA allocation ratio I thought it might be better to keep it simple. Having said all that, after thinking on it some more, it might be better to try and leverage cifmw_libvirt_manager_configuration_patch in the job definition. This allows a user to fine tune the memory/cpu ratio exactly the way they would like for the guest. I'm going to experiment with that now and if that handles my use case I think it would best to abandon this.
Allow for guests to deploy with multiple numa nodes if a numa key is supplied to the cifmw_libvirt_manager_configuration when defining a guest. This is useful when testing multi-numa environments that take advantage of NUMA affinity and managing cpu policy across a slightly more complex architecture. Logic assumes operator will define an evenly distributed system and will not take into account remainders.
Signed-off-by: James Parker jparker@redhat.com