Skip to content

Commit 7e11eb8

Browse files
authored
Merge pull request #62179 from apinnick/CNV-30692-vmcrcerrors-runbook
CNV- 30692: new runbook
2 parents d72c1ed + 0be24ea commit 7e11eb8

File tree

2 files changed

+81
-1
lines changed

2 files changed

+81
-1
lines changed
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
// Do not edit this module. It is generated with a script.
2+
// Do not reuse this module. The anchor IDs do not contain a context statement.
3+
// Module included in the following assemblies:
4+
//
5+
// * virt/monitoring/virt-runbooks.adoc
6+
7+
:_content-type: REFERENCE
8+
[id="virt-runbook-VirtualMachineCRCErrors"]
9+
= VirtualMachineCRCErrors
10+
11+
[discrete]
12+
[id="meaning-virtualmachinecrcerrors"]
13+
== Meaning
14+
15+
This alert fires when the storage class is incorrectly configured.
16+
A system-wide, shared dummy page causes CRC errors when data is
17+
written and read across different processes or threads.
18+
19+
[discrete]
20+
[id="impact-virtualmachinecrcerrors"]
21+
== Impact
22+
23+
A large number of CRC errors might cause the cluster to display
24+
severe performance degradation.
25+
26+
[discrete]
27+
[id="diagnosis-virtualmachinecrcerrors"]
28+
== Diagnosis
29+
30+
. Get the volume name from a virtual machine:
31+
+
32+
[source,terminal]
33+
----
34+
$ oc get vm <vm_name> -o jsonpath='{.spec.template.spec.volumes}'
35+
----
36+
37+
. Get the storage class name from the volume:
38+
+
39+
[source,terminal]
40+
----
41+
$ oc get pvc <volume> -o jsonpath='{.spec.storageClassName}'
42+
----
43+
44+
. Get the storage class configuration:
45+
+
46+
[source,terminal]
47+
----
48+
$ oc get sc <storage_class> -o yaml
49+
----
50+
51+
. Check the storage class configuration for the `krbd:rxbounce` map option.
52+
53+
[discrete]
54+
[id="mitigation-virtualmachinecrcerrors"]
55+
== Mitigation
56+
57+
Add the `krbd:rxbounce` map option to the storage class configuration:
58+
59+
[source,terminal]
60+
----
61+
apiVersion: storage.k8s.io/v1
62+
kind: StorageClass
63+
metadata:
64+
name: example-storage-class
65+
parameters:
66+
# ...
67+
mounter: rbd
68+
mapOptions: "krbd:rxbounce"
69+
provisioner: openshift-storage.rbd.csi.ceph.com
70+
# ...
71+
----
72+
73+
The `krbd:rxbounce` option creates a bounce buffer to receive data. The default
74+
behavior is for the destination buffer to receive data directly. A bounce buffer
75+
is required if the destination buffer is unstable.
76+
77+
If you cannot resolve the issue, log in to the
78+
link:https://access.redhat.com[Customer Portal] and open a support case,
79+
attaching the artifacts gathered during the diagnosis procedure.

virt/monitoring/virt-runbooks.adoc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,5 +109,6 @@ include::modules/virt-runbook-virtoperatorresterrorsburst.adoc[leveloffset=+1]
109109

110110
include::modules/virt-runbook-virtoperatorresterrorshigh.adoc[leveloffset=+1]
111111

112-
include::modules/virt-runbook-vmcannotbeevicted.adoc[leveloffset=+1]
112+
include::modules/virt-runbook-virtualmachinecrcerrors.adoc[leveloffset=+1]
113113

114+
include::modules/virt-runbook-vmcannotbeevicted.adoc[leveloffset=+1]

0 commit comments

Comments
 (0)