From 4d88f138e6df3e43c5652ffafa672d7b6980e96c Mon Sep 17 00:00:00 2001 From: Lee Yarwood Date: Thu, 20 Jun 2024 15:08:14 +0100 Subject: [PATCH 1/2] fedora: Remove interface-multiqueue This requires >= 2 vCPUs exposed as sockets in order to be activated within the resulting guest. At present the preference requires only a single vCPU and doesn't provide a preferredCPUTopology. To avoid changing already defined instance type defaults when using the fedora preference we simply drop the interface-multiqueue tunable from the preference for now. Signed-off-by: Lee Yarwood --- preferences/fedora/kustomization.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/preferences/fedora/kustomization.yaml b/preferences/fedora/kustomization.yaml index 2c5f5932..feb043bf 100644 --- a/preferences/fedora/kustomization.yaml +++ b/preferences/fedora/kustomization.yaml @@ -12,7 +12,6 @@ components: - ../components/interfacemodel-virtio-net - ../components/rng - ../components/secureboot - - ../components/interface-multiqueue patches: - target: From 9ce794dfe54cc9a1d61cf126ddf96444baabe3a7 Mon Sep 17 00:00:00 2001 From: Lee Yarwood Date: Thu, 20 Jun 2024 15:39:28 +0100 Subject: [PATCH 2/2] {rhel,centos}-{8,9}-dpdk: Require 2 vCPUs exposed as sockets As this set of preferences use interface multiqueue we need to ensure that the associated VM and/or instance type provide at least 2 vCPUs exposed as sockets to ensure multiple queues are enabled. Signed-off-by: Lee Yarwood --- preferences/centos/8_stream_dpdk/kustomization.yaml | 3 ++- .../8_stream_dpdk/requirements/kustomization.yaml | 11 +++++++++++ .../8_stream_dpdk/requirements/requirements.yaml | 11 +++++++++++ preferences/centos/9_stream_dpdk/kustomization.yaml | 3 ++- .../9_stream_dpdk/requirements/kustomization.yaml | 11 +++++++++++ .../9_stream_dpdk/requirements/requirements.yaml | 11 +++++++++++ preferences/rhel/8_dpdk/kustomization.yaml | 3 ++- .../rhel/8_dpdk/requirements/kustomization.yaml | 11 +++++++++++ .../rhel/8_dpdk/requirements/requirements.yaml | 12 ++++++++++++ preferences/rhel/9_dpdk/kustomization.yaml | 3 ++- .../rhel/9_dpdk/requirements/kustomization.yaml | 11 +++++++++++ .../rhel/9_dpdk/requirements/requirements.yaml | 12 ++++++++++++ 12 files changed, 98 insertions(+), 4 deletions(-) create mode 100644 preferences/centos/8_stream_dpdk/requirements/kustomization.yaml create mode 100644 preferences/centos/8_stream_dpdk/requirements/requirements.yaml create mode 100644 preferences/centos/9_stream_dpdk/requirements/kustomization.yaml create mode 100644 preferences/centos/9_stream_dpdk/requirements/requirements.yaml create mode 100644 preferences/rhel/8_dpdk/requirements/kustomization.yaml create mode 100644 preferences/rhel/8_dpdk/requirements/requirements.yaml create mode 100644 preferences/rhel/9_dpdk/requirements/kustomization.yaml create mode 100644 preferences/rhel/9_dpdk/requirements/requirements.yaml diff --git a/preferences/centos/8_stream_dpdk/kustomization.yaml b/preferences/centos/8_stream_dpdk/kustomization.yaml index 17f811b7..08e8acc3 100644 --- a/preferences/centos/8_stream_dpdk/kustomization.yaml +++ b/preferences/centos/8_stream_dpdk/kustomization.yaml @@ -7,7 +7,8 @@ resources: components: - ./metadata - - ../../components/cpu-topology-spread + - ./requirements + - ../../components/cpu-topology-sockets - ../../components/interface-multiqueue nameSuffix: ".dpdk" diff --git a/preferences/centos/8_stream_dpdk/requirements/kustomization.yaml b/preferences/centos/8_stream_dpdk/requirements/kustomization.yaml new file mode 100644 index 00000000..91dcc692 --- /dev/null +++ b/preferences/centos/8_stream_dpdk/requirements/kustomization.yaml @@ -0,0 +1,11 @@ +--- +apiVersion: kustomize.config.k8s.io/v1alpha1 +kind: Component + +patches: + - path: ./requirements.yaml + target: + kind: VirtualMachinePreference + - path: ./requirements.yaml + target: + kind: VirtualMachineClusterPreference diff --git a/preferences/centos/8_stream_dpdk/requirements/requirements.yaml b/preferences/centos/8_stream_dpdk/requirements/requirements.yaml new file mode 100644 index 00000000..b16622b6 --- /dev/null +++ b/preferences/centos/8_stream_dpdk/requirements/requirements.yaml @@ -0,0 +1,11 @@ +--- +apiVersion: instancetype.kubevirt.io/v1beta1 +kind: VirtualMachinePreference +metadata: + name: requirements +spec: + requirements: + cpu: + guest: 2 + memory: + guest: 1.5Gi diff --git a/preferences/centos/9_stream_dpdk/kustomization.yaml b/preferences/centos/9_stream_dpdk/kustomization.yaml index 5c27e969..89e376e1 100644 --- a/preferences/centos/9_stream_dpdk/kustomization.yaml +++ b/preferences/centos/9_stream_dpdk/kustomization.yaml @@ -7,7 +7,8 @@ resources: components: - ./metadata - - ../../components/cpu-topology-spread + - ./requirements + - ../../components/cpu-topology-sockets - ../../components/interface-multiqueue nameSuffix: ".dpdk" diff --git a/preferences/centos/9_stream_dpdk/requirements/kustomization.yaml b/preferences/centos/9_stream_dpdk/requirements/kustomization.yaml new file mode 100644 index 00000000..91dcc692 --- /dev/null +++ b/preferences/centos/9_stream_dpdk/requirements/kustomization.yaml @@ -0,0 +1,11 @@ +--- +apiVersion: kustomize.config.k8s.io/v1alpha1 +kind: Component + +patches: + - path: ./requirements.yaml + target: + kind: VirtualMachinePreference + - path: ./requirements.yaml + target: + kind: VirtualMachineClusterPreference diff --git a/preferences/centos/9_stream_dpdk/requirements/requirements.yaml b/preferences/centos/9_stream_dpdk/requirements/requirements.yaml new file mode 100644 index 00000000..b16622b6 --- /dev/null +++ b/preferences/centos/9_stream_dpdk/requirements/requirements.yaml @@ -0,0 +1,11 @@ +--- +apiVersion: instancetype.kubevirt.io/v1beta1 +kind: VirtualMachinePreference +metadata: + name: requirements +spec: + requirements: + cpu: + guest: 2 + memory: + guest: 1.5Gi diff --git a/preferences/rhel/8_dpdk/kustomization.yaml b/preferences/rhel/8_dpdk/kustomization.yaml index 225a5b69..6f717568 100644 --- a/preferences/rhel/8_dpdk/kustomization.yaml +++ b/preferences/rhel/8_dpdk/kustomization.yaml @@ -7,7 +7,8 @@ resources: components: - ./metadata - - ../../components/cpu-topology-spread + - ./requirements + - ../../components/cpu-topology-sockets - ../../components/interface-multiqueue nameSuffix: ".dpdk" diff --git a/preferences/rhel/8_dpdk/requirements/kustomization.yaml b/preferences/rhel/8_dpdk/requirements/kustomization.yaml new file mode 100644 index 00000000..91dcc692 --- /dev/null +++ b/preferences/rhel/8_dpdk/requirements/kustomization.yaml @@ -0,0 +1,11 @@ +--- +apiVersion: kustomize.config.k8s.io/v1alpha1 +kind: Component + +patches: + - path: ./requirements.yaml + target: + kind: VirtualMachinePreference + - path: ./requirements.yaml + target: + kind: VirtualMachineClusterPreference diff --git a/preferences/rhel/8_dpdk/requirements/requirements.yaml b/preferences/rhel/8_dpdk/requirements/requirements.yaml new file mode 100644 index 00000000..87d23fa4 --- /dev/null +++ b/preferences/rhel/8_dpdk/requirements/requirements.yaml @@ -0,0 +1,12 @@ +--- +apiVersion: instancetype.kubevirt.io/v1beta1 +kind: VirtualMachinePreference +metadata: + name: requirements +spec: + # https://access.redhat.com/articles/rhel-limits#minimum-required-memory-3 + requirements: + cpu: + guest: 2 + memory: + guest: 1.5Gi diff --git a/preferences/rhel/9_dpdk/kustomization.yaml b/preferences/rhel/9_dpdk/kustomization.yaml index d7cb23c3..dbd09626 100644 --- a/preferences/rhel/9_dpdk/kustomization.yaml +++ b/preferences/rhel/9_dpdk/kustomization.yaml @@ -7,7 +7,8 @@ resources: components: - ./metadata - - ../../components/cpu-topology-spread + - ./requirements + - ../../components/cpu-topology-sockets - ../../components/interface-multiqueue nameSuffix: ".dpdk" diff --git a/preferences/rhel/9_dpdk/requirements/kustomization.yaml b/preferences/rhel/9_dpdk/requirements/kustomization.yaml new file mode 100644 index 00000000..91dcc692 --- /dev/null +++ b/preferences/rhel/9_dpdk/requirements/kustomization.yaml @@ -0,0 +1,11 @@ +--- +apiVersion: kustomize.config.k8s.io/v1alpha1 +kind: Component + +patches: + - path: ./requirements.yaml + target: + kind: VirtualMachinePreference + - path: ./requirements.yaml + target: + kind: VirtualMachineClusterPreference diff --git a/preferences/rhel/9_dpdk/requirements/requirements.yaml b/preferences/rhel/9_dpdk/requirements/requirements.yaml new file mode 100644 index 00000000..87d23fa4 --- /dev/null +++ b/preferences/rhel/9_dpdk/requirements/requirements.yaml @@ -0,0 +1,12 @@ +--- +apiVersion: instancetype.kubevirt.io/v1beta1 +kind: VirtualMachinePreference +metadata: + name: requirements +spec: + # https://access.redhat.com/articles/rhel-limits#minimum-required-memory-3 + requirements: + cpu: + guest: 2 + memory: + guest: 1.5Gi