13.2. エミュレートされた Trusted Platform Module (TPM) デバイスをインスタンスに提供するためのコンピュートノードの設定
クラウド管理者は、エミュレートされた Virtual Trusted Platform Module (vTPM) デバイスを持つインスタンスを作成できる機能をクラウドユーザーに提供できます。
クラウドユーザーが vTPM デバイスを持つインスタンスを作成できるようにするには、次のタスクを実行する必要があります。
- vTPM デバイスを持つンスタンスのサポートを有効にし、オーバークラウドをデプロイします。
- vTPM デバイスを持つインスタンスを起動するためのフレーバーまたはイメージを作成します。
前提条件
- Key Manager サービス (barbican) が、vTPM キーを保存するために RHOSP デプロイメントに含まれている。Key Manager サービスを使用したシークレットの管理については、Key Manager サービスを使用したシークレットの管理 を参照してください。
vTPM デバイスを持つインスタンスの制限事項
- vTPM デバイスを持つインスタンスをライブマイグレーションまたは退避することはできません。
- vTPM デバイスを持つインスタンスをレスキューまたは退避することはできません。
- インスタンスには Q35 マシン種別が必要です。
13.2.1. vTPM デバイスを持つインスタンスのサポートの有効化 リンクのコピーリンクがクリップボードにコピーされました!
クラウドユーザーが vTPM デバイスを持つインスタンスを作成できるようにするには、インスタンスに対して vTPM デバイスを有効にするようにオーバークラウドを設定する必要があります。
手順
- Compute 環境ファイルを開きます。
vTPM デバイスのサポートを有効にします。
parameter_defaults: ComputeParameters: ... NovaEnableVTPM: True
parameter_defaults: ComputeParameters: ... NovaEnableVTPM: True
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 更新内容を Compute 環境ファイルに保存します。
その他の環境ファイルと共に Compute 環境ファイルをスタックに追加して、オーバークラウドをデプロイします。
openstack overcloud deploy --templates \ -e /home/stack/templates/overcloud-baremetal-deployed.yaml \ -e /home/stack/templates/node-info.yaml \ -e [your environment files] \ -e /home/stack/templates/<compute_environment_file>.yaml
(undercloud)$ openstack overcloud deploy --templates \ -e /home/stack/templates/overcloud-baremetal-deployed.yaml \ -e /home/stack/templates/node-info.yaml \ -e [your environment files] \ -e /home/stack/templates/<compute_environment_file>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.2.2. vTPM デバイス用のイメージの作成 リンクのコピーリンクがクリップボードにコピーされました!
オーバークラウドで vTPM デバイスを持つインスタンスの作成を有効にしたら、クラウドユーザーが vTPM デバイスを持つインスタンスを起動するために使用できる vTPM デバイスのインスタンスイメージを作成できます。
フレーバーとイメージの両方で TPM デバイスモデルが指定されていて、2 つの値が一致しない場合、スケジューリングが失敗します。
手順
vTPM デバイスの新しいイメージを作成します。
openstack image create ... \ --property hw_tpm_version=2.0 vtpm-image
(overcloud)$ openstack image create ... \ --property hw_tpm_version=2.0 vtpm-image
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記TPM バージョン
1.2
はサポートされていません。オプション: 使用する TPM モデルを指定します。
openstack image set \ --property hw_tpm_model=<tpm_model> \ vtpm-image
(overcloud)$ openstack image set \ --property hw_tpm_model=<tpm_model> \ vtpm-image
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <tpm_model>
を、使用する TPM デバイスのモデルに置き換えます。以下の有効な値のいずれかに設定します。-
tpm-tis
: (デフォルト) TPM インターフェイス仕様。 -
tpm-crb
: コマンド応答バッファー。
-
注記hw_tpm_version
プロパティーが設定されていない場合、Compute サービスはhw_tpm_model
プロパティーの設定を無視します。
検証
vTPM イメージを使用してインスタンスを作成します。
openstack server create --flavor m1.small \ --image vtpm-image vtpm-instance
(overcloud)$ openstack server create --flavor m1.small \ --image vtpm-image vtpm-instance
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - クラウドユーザーとしてインスタンスにログインします。
インスタンスが vTPM デバイスにアクセスできることを確認するには、インスタンスから次のコマンドを入力します。
dmesg | grep -i tpm
$ dmesg | grep -i tpm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.2.3. vTPM デバイス用のフレーバーの作成 リンクのコピーリンクがクリップボードにコピーされました!
オーバークラウドで vTPM デバイスを持つインスタンスの作成を有効にしたら、クラウドユーザーが vTPM デバイスを持つインスタンスを起動するために使用できる 1 つ以上の vTPM デバイスフレーバーを作成できます。
vTPM デバイスフレーバーは、イメージに hw_tpm_model
プロパティーと hw_tpm_version
プロパティーが設定されていない場合にのみ必要です。フレーバーとイメージの両方で TPM デバイスモデルが指定されていて、2 つの値が一致しない場合、スケジューリングが失敗します。
手順
vTPM デバイス用のフレーバーを作成します。
openstack flavor create --vcpus 1 --ram 512 --disk 2 \ --property hw:tpm_version=2.0 \ vtpm-flavor
(overcloud)$ openstack flavor create --vcpus 1 --ram 512 --disk 2 \ --property hw:tpm_version=2.0 \ vtpm-flavor
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記TPM バージョン
1.2
はサポートされていません。オプション: 使用する TPM モデルを指定します。
openstack flavor set \ --property hw:tpm_model=<tpm_model> \ vtpm-flavor
(overcloud)$ openstack flavor set \ --property hw:tpm_model=<tpm_model> \ vtpm-flavor
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <tpm_model>
を、使用する TPM デバイスのモデルに置き換えます。以下の有効な値のいずれかに設定します。-
tpm-tis
: (デフォルト) TPM インターフェイス仕様。 tpm-crb
: コマンド応答バッファー。TPM バージョン 2.0 とのみ互換性があります。注記hw:tpm_version
プロパティーが設定されていない場合、Compute サービスはhw:tpm_model
プロパティーの設定を無視します。
-
検証
vTPM フレーバーを使用してインスタンスを作成します。
openstack server create --flavor vtpm-flavor \ --image rhel-image vtpm-instance
(overcloud)$ openstack server create --flavor vtpm-flavor \ --image rhel-image vtpm-instance
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - クラウドユーザーとしてインスタンスにログインします。
インスタンスが vTPM デバイスにアクセスできることを確認するには、インスタンスから次のコマンドを入力します。
dmesg | grep -i tpm
$ dmesg | grep -i tpm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow