8.10. 仮想 Trusted Platform Module デバイスの使用
VirtualMachine
(VM) または VirtualMachineInstance
(VMI) マニフェストを編集して、仮想 Trusted Platform Module (vTPM) デバイスを新規または既存の仮想マシンに追加します。
OpenShift Virtualization 4.18 以降では、vTPM デバイスがアタッチされた 仮想マシン (VM) をエクスポート し、これらの仮想マシンのスナップショットを作成 して、これらのスナップショットから仮想マシンを復元 できます。ただし、vTPM デバイスがアタッチされた仮想マシンのクローン作成や、そのスナップショットからの新しい仮想マシンの作成はサポートされていません。
8.10.1. vTPM デバイスについて
仮想トラステッドプラットフォームモジュール (vTPM) デバイスは、物理トラステッドプラットフォームモジュール (TPM) ハードウェアチップのように機能します。vTPM デバイスはどのオペレーティングシステムでも使用できますが、Windows 11 をインストールまたは起動するには TPM チップが必要です。vTPM デバイスを使用すると、Windows 11 イメージから作成された VM を物理 TPM チップなしで機能させることができます。
また、vTPM デバイスは、物理ハードウェアを使用せずにシークレットを保存することで仮想マシンを保護します。OpenShift Virtualization は、仮想マシンの永続ボリューム要求 (PVC) を使用して、vTPM デバイス状態の永続化をサポートします。HyperConverged
カスタムリソース (CR) で vmStateStorageClass
属性を設定することにより、PVC が使用するストレージクラスを指定する必要があります。
kind: HyperConverged metadata: name: kubevirt-hyperconverged spec: vmStateStorageClass: <storage_class_name> # ...
vTPM を有効にしないと、ノードに TPM デバイスがある場合でも、VM は TPM デバイスを認識しません。
8.10.2. 仮想マシンへの vTPM デバイスの追加
仮想トラステッドプラットフォームモジュール (vTPM) デバイスを仮想マシン (VM) に追加すると、物理 TPM デバイスなしで Windows 11 イメージから作成された仮想マシンを実行できます。vTPM デバイスには、その仮想マシンのシークレットも保存されます。
前提条件
-
OpenShift CLI (
oc
) がインストールされている。
手順
次のコマンドを実行して、仮想マシン設定を更新します。
$ oc edit vm <vm_name> -n <namespace>
仮想マシン仕様を編集して vTPM デバイスを追加します。以下に例を示します。
apiVersion: kubevirt.io/v1 kind: VirtualMachine metadata: name: example-vm spec: template: spec: domain: devices: tpm: 1 persistent: true 2 # ...
- 変更を適用するには、エディターを保存し、終了します。
- オプション: 実行中の仮想マシンを編集している場合は、変更を有効にするためにこれを再起動する必要があります。