Skip to content

Commit fa0f1dc

Browse files
Merge pull request #62130 from sabrinajess/CNV27190
CNV-27190 - control plane tuning
2 parents 36cbaec + 4230af7 commit fa0f1dc

File tree

4 files changed

+69
-0
lines changed

4 files changed

+69
-0
lines changed

_topic_maps/_topic_map.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3689,6 +3689,8 @@ Topics:
36893689
File: virt-enabling-descheduler-evictions
36903690
- Name: About high availability for virtual machines
36913691
File: virt-high-availability-for-vms
3692+
- Name: Control plane tuning
3693+
File: virt-vm-control-plane-tuning
36923694
# Importing virtual machines
36933695
- Name: Importing virtual machines
36943696
Dir: importing_vms
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
2+
// Module included in the following assemblies:
3+
//
4+
// * virt/advanced_vm_management/virt-vm-control-plane-tuning.adoc
5+
6+
:_content-type: PROCEDURE
7+
[id="virt-configuring-highburst-profile_{context}"]
8+
= Configuring a highBurst profile
9+
10+
Use the `highBurst` profile to create and maintain a large number of virtual machines (VMs) in one cluster.
11+
12+
.Procedure
13+
14+
* Apply the following patch to enable the `highBurst` tuning policy profile:
15+
+
16+
[source,terminal]
17+
----
18+
$ oc patch -n openshift-cnv hco kubevirt-hyperconverged \
19+
--type=json -p='[{"op": "add", "path": "/spec/tuningPolicy", \
20+
"value": "highBurst"}]'
21+
----
22+
23+
.Verification
24+
25+
* Run the following command to verify the `highBurst` tuning policy profile is enabled:
26+
27+
+
28+
[source,terminal]
29+
----
30+
$ oc get kubevirt.kubevirt.io/kubevirt-kubevirt-hyperconverged \
31+
-n openshift-cnv -o go-template --template='{{range $config, \
32+
$value := .spec.configuration}} {{if eq $config "apiConfiguration" \
33+
"webhookConfiguration" "controllerConfiguration" "handlerConfiguration"}} \
34+
{{"\n"}} {{$config}} = {{$value}} {{end}} {{end}} {{"\n"}}
35+
----
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
2+
// Module included in the following assemblies:
3+
//
4+
// * virt/advanced_vm_management/virt-vm-control-plane-tuning.adoc
5+
6+
:_content-type: PROCEDURE
7+
[id="virt-configuring-rate-limiters_{context}"]
8+
= Configuring rate limiters
9+
10+
To compensate for large-scale burst rates, scale the `QPS` (Queries per Second) and `burst` rate limits to process a higher rate of client requests or API calls concurrently for each component.
11+
12+
.Procedure
13+
14+
* Apply a `jsonpatch` annotation to adjust the `kubevirt-hyperconverged` cluster configuration by using `tuningPolicy` to apply scalable tuning parameters. This tuning policy automatically adjusts all virtualization components (`webhook`, `api`, `controller`, `handler`) to match the `QPS` and `burst` values specified by the profile.
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
:_content-type: ASSEMBLY
2+
[id="virt-vm-control-plane-tuning"]
3+
= Virtual machine control plane tuning
4+
5+
include::_attributes/common-attributes.adoc[]
6+
:context: virt-control-plane-tuning
7+
8+
toc::[]
9+
10+
{VirtProductName} offers the following tuning options at the control-plane level:
11+
12+
* The `highBurst` profile, which uses fixed `QPS` and `burst` rates, to create hundreds of virtual machines (VMs) in one batch
13+
* Migration setting adjustment based on workload type
14+
15+
// this module commented out until jsonpatch is supported or this becomes a TP or DP
16+
// include::modules/virt-configuring-rate-limiters.adoc[leveloffset=+1]
17+
18+
include::modules/virt-configuring-highburst-profile.adoc[leveloffset=+1]

0 commit comments

Comments
 (0)