vCLS 仮想マシンのパワーオンに失敗する
search cancel

vCLS 仮想マシンのパワーオンに失敗する

book

Article ID: 457085

calendar_today

Updated On:

Products

VMware vCenter Server VMware vSphere ESXi

Issue/Introduction

免責事項:これは英文の記事「vCLS virtual machine fails to power ON (344779)」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。


Symptoms:

  • vCLS 仮想マシンをパワーオンできません。
  • クラスタ内にデプロイされている vCLS 仮想マシンが 1 台のみです。
  • vCenter Server の eam.log と vpxd.log に「Feature 'bad_requirement:hv.capable' was 0, but must be at least 1.」のメッセージが出力されます。

eam.log:

[YYYY-MM-DDTHH:MM:SS] | ERROR | cluster-agent-2 | AuditedJob.java | 59 | JOB FAILED: [#1182617302] PowerOnVmJob(ClusterAgent(ID: 'Agent:69812e75-5135-4541-958b-23aa572487c7:null'))
        at com.vmware.vim.vmomi.client.http.impl.HttpExchange.invokeWithinScope(HttpExchange.java:54) ~[vlsi-client.jar:?]
        at com.vmware.vim.vmomi.client.http.impl.TracingScopedRunnable.run(TracingScopedRunnable.java:24) ~[vlsi-client.jar:?]
        at com.vmware.vim.vmomi.client.http.impl.HttpExchangeBase.run(HttpExchangeBase.java:51) ~[vlsi-client.jar:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_252]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_252]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_252]
Caused by: com.vmware.vim.binding.vim.fault.GenericVmConfigFault: Feature 'bad_requirement:hv.capable' was 0, but must be at least 1.

        
vpxd.log:

[YYYY-MM-DDTHH:MM:SS] info vpxd[06809] [Originator@6876 sub=Default opID=7325e956-01] [VpxLRO] -- ERROR task-88155 -- vCLS (1) -- Datacenter.ExecuteVmPowerOnLRO: vim.fault.GenericVmConfigFault:
--> Result:
--> (vim.fault.GenericVmConfigFault) {
-->    faultCause = (vmodl.MethodFault) null,
-->    faultMessage = (vmodl.LocalizableMessage) [
-->       (vmodl.LocalizableMessage) {
-->          key = "msg.featurecompat.requirement.number.minimumNotMet",
-->          arg = (vmodl.KeyAnyValue) [
-->             (vmodl.KeyAnyValue) {
-->                key = "1",
-->                value = "bad_requirement:hv.capable"
-->             },
-->             (vmodl.KeyAnyValue) {
-->                key = "2",
-->                value = "0"
-->             },
-->             (vmodl.KeyAnyValue) {
-->                key = "3",
-->                value = "1"
-->             }
-->          ],
-->          message = "Feature 'bad_requirement:hv.capable' was 0, but must be at least 1."
-->       },
-->       (vmodl.LocalizableMessage) {
-->          key = "msg.moduletable.powerOnFailed",
-->          arg = (vmodl.KeyAnyValue) [
-->             (vmodl.KeyAnyValue) {
-->                key = "1",
-->                value = "FeatureCompatLate"
-->             }
-->          ],
-->          message = "Module 'FeatureCompatLate' power on failed. "
-->       },
-->       (vmodl.LocalizableMessage) {
-->          key = "msg.vmx.poweron.failed",
-->          arg = <unset>,
-->          message = "Failed to start the virtual machine."
-->    reason = "Feature 'bad_requirement:hv.capable' was 0, but must be at least 1."
-->    msg = "Feature 'bad_requirement:hv.capable' was 0, but must be at least 1."

Environment

VMware vCenter Server 7.0.x
VMware vCenter Server 8.0.x
VMware ESXI 7.0.x
VMware ESXI 8.0.x

 

Cause

ESXi ホストの /etc/vmware/config ファイルに 「vhv.enable = true」 パラメータが設定されている場合、vCLS 仮想マシンのパワーオン時にシステムが Intel VT-x/AMD-V を有効化しようとします。しかし、vCLS 仮想マシンは Intel VT-x/AMD-V と互換性がないため、パワーオンに失敗します。

Resolution

この問題を解決するには、ESXi ホストで vhv.enable の設定を無効にします。

  1. 対象の ESXi ホストをメンテナンス モードにします。
  2. SSH 経由で ESXi ホストに接続し、root ユーザーとしてログインします。
  3. 「vi /etc/vmware/config」を実行して設定ファイルを開きます。
  4. vhv.enable 設定をコメントアウト(#)します。

    変更前: 
    vhv.enable = true

    変更後: 
    #vhv.enable = true

  5. ESXi ホストを再起動します。
  6. メンテナンス モードを終了します。

Note: 特定の仮想マシンでハードウェア仮想化が必要な場合は、仮想マシンがパワーオフになっている状態で、仮想マシン単位で「ハードウェア仮想化」(ハードウェア アシストによる仮想化をゲスト OS に公開)を有効にしてください。

Additional Information