Skip to content

Commit ec12150

Browse files
committed
CNV-60438: Corrected misleading information about vTPM devices
1 parent 4ad0cfa commit ec12150

File tree

1 file changed

+23
-2
lines changed

1 file changed

+23
-2
lines changed

modules/virt-about-vtpm-devices.adoc

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,30 @@ A virtual Trusted Platform Module (vTPM) device functions like a
1010
physical Trusted Platform Module (TPM) hardware chip.
1111
You can use a vTPM device with any operating system, but Windows 11 requires
1212
the presence of a TPM chip to install or boot. A vTPM device allows VMs created
13-
from a Windows 11 image to function without a physical TPM chip.
13+
from a Windows 11 image to function without a physical TPM chip. A vTPM device also protects virtual machines by storing secrets without physical hardware.
1414

15-
A vTPM device also protects virtual machines by storing secrets without physical hardware. {VirtProductName} supports persisting vTPM device state by using Persistent Volume Claims (PVCs) for VMs. You must specify the storage class to be used by the PVC by setting the `vmStateStorageClass` attribute in the `HyperConverged` custom resource (CR):
15+
{VirtProductName} supports persisting vTPM device state by using Persistent Volume Claims (PVCs) for VMs. If you do not specify the storage class for this PVC, {VirtProductName} uses the default storage class for virtualization workloads. If the default storage class for virtualization workloads is not set, {VirtProductName} uses the default storage class for the cluster.
16+
17+
[NOTE]
18+
====
19+
The storage class that is marked as default for virtualization workloads has the annotation `storageclass.kubevirt.io/is-default-virt-class` set to "true". You can find this storage class by running the following command:
20+
21+
[source,terminal]
22+
----
23+
$ oc get sc -o json | jq '.items[].metadata|select(.annotations."storageclass.kubevirt.io/is-default-virt-class"=="true")|.name'
24+
----
25+
26+
Similarly, the default storage class for the cluster has the annotation `storageclass.kubernetes.io/is-default-class` set to "true". To find this storage class, run:
27+
28+
[source,terminal]
29+
----
30+
$ oc get sc -o json | jq '.items[].metadata|select(.annotations."storageclass.kubernetes.io/is-default-class"=="true")|.name'
31+
----
32+
33+
To ensure consistent behavior, configure only one storage class as the default for virtualization workloads and for the cluster respectively.
34+
====
35+
36+
Because this behavior might change in the future, it is recommended that you specify the storage class explicitly by setting the `vmStateStorageClass` attribute in the `HyperConverged` custom resource (CR):
1637

1738
[source,yaml]
1839
----

0 commit comments

Comments
 (0)