vSphere 8.0 Update 3 では、CBRC(ダイジェスト)ディスクを非 CBRC VM にホットアドできません。「CBRC cannot be hot-enabled on a disk...」
search cancel

vSphere 8.0 Update 3 では、CBRC(ダイジェスト)ディスクを非 CBRC VM にホットアドできません。「CBRC cannot be hot-enabled on a disk...」

book

Article ID: 413670

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

免責事項:これは英文の記事「Cannot hot add CBRC (digest) disks to non-CBRC VMs in vSphere 8.0 Update 3, "CBRC cannot be hot-enabled on a disk..."」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

  • CBRC(コンテンツベース読み取りキャッシュ)は、Horizon仮想マシンに対して、以下のいずれかの方法で有効化されます。
    • 「ビュー ストレージ アクセラレータを使用する」オプションを有効にする、または
    • 仮想マシンが実行されているホストに対してCBRCを明示的に有効化すること
    • あるいは、両方
  • ただし、これらの仮想マシンに対してスナップショットベースのバックアップを作成しようとすると、バックアップ仮想マシン/バックアッププロキシに対してホットアドエラーが発生し、以下のメッセージが表示されます:
    CBRC cannot be hot-enabled on a disk unless the VM was powered-on with digest disks or cbrc.cache Enable was set
  • バックアップソフトウェアでも同様のエラーが発生します。例えばVeeam Backup and Replicationでは:
    Unable to hot add source disk <disk_name>.vmdk, failing over to network mode
  • ホストデーモンのログ(/var/run/log/hostd.log)を確認すると、以下のエントリが見つかります:
    <timestamps> In(166) Hostd[2102278]: [Originator@6876 sub=Vmsvc.vm:/vmfs/volumes/<datastore>/<backup_proxy_or_app_VM_folder>/<backup_proxy_or_app_VM_name>.vmx opID=#### sid=### user=vpxuser:<domain>/<user>] Reconfigure failed: N3Vim5Fault20GenericVmConfigFault9ExceptionE(Fault cause: vim.fault.GenericVmConfigFault
    <timestamps> In(166) Hostd[2102236]: --> )
    <timestamps> In(166) Hostd[2102236]: --> [context]zKq7AVICAgAAAKckdwEWaG9zdGQAAOPJR2xpYnZtYWNvcmUuc28AgU+BHQFsaWJ2aW0tdHlwZXMuc28AAWF26IKpShEBaG9zdGQAgt4iDAGCHDUMAYKlPgwBAqdU/AKNffwCx4b8AqyN/AIKc/gCOkP5Ar9R+QJlVPmBMAoWAQK1lWIAHtssAOD/LAA7UFIDUngAbGlicHRocmVhZC5zby4wAAQ/Ug9saWJjLnNvLjYA[/context]
    <timestamps> Wa(164) Hostd[2102278]: [Originator@6876 sub=Vmsvc.vm:/vmfs/volumes/<datastore>/<backup_proxy_or_app_VM_folder>/<backup_proxy_or_app_VM_name>.vmx opID=#### sid=### user=vpxuser:<domain>/<user>] Exception thrown during reconfigure: (vim.vm.ConfigSpec) {
    <timestamps> Wa(164) Hostd[2102236]: -->    createDate = "<timestamp>",
    <timestamps> Wa(164) Hostd[2102236]: -->    files = (vim.vm.FileInfo) {
    <timestamps> Wa(164) Hostd[2102236]: -->       vmPathName = "[]/vmfs/volumes/<datastore>/<backup_proxy_or_app_VM_folder>/<backup_proxy_or_app_VM_name>.vmx",
    <timestamps> Wa(164) Hostd[2102236]: -->    },
    <timestamps> Wa(164) Hostd[2102236]: -->    deviceChange = (vim.vm.device.VirtualDeviceSpec) [
    <timestamps> Wa(164) Hostd[2102236]: -->       (vim.vm.device.VirtualDeviceSpec) {
    <timestamps> Wa(164) Hostd[2102236]: -->          operation = "add",
    <timestamps> Wa(164) Hostd[2102236]: -->          device = (vim.vm.device.VirtualDisk) {
    <timestamps> Wa(164) Hostd[2102236]: -->             key = 0,
    <timestamps> Wa(164) Hostd[2102236]: -->             backing = (vim.vm.device.VirtualDisk.FlatVer2BackingInfo) {
    <timestamps> Wa(164) Hostd[2102236]: -->                fileName = "[]/vmfs/volumes/<datastore>/<backed_up_VM>/<VM_name>.vmdk",
    <timestamps> Wa(164) Hostd[2102236]: -->                diskMode = "independent_nonpersistent",
    <timestamps> Wa(164) Hostd[2102236]: -->             },
    <timestamps> Wa(164) Hostd[2102236]: -->             connectable = (vim.vm.device.VirtualDevice.ConnectInfo) {
    <timestamps> Wa(164) Hostd[2102236]: -->                startConnected = true,
    <timestamps> Wa(164) Hostd[2102236]: -->                allowGuestControl = false,
    <timestamps> Wa(164) Hostd[2102236]: -->                connected = true,
    <timestamps> Wa(164) Hostd[2102236]: -->             },
    <timestamps> Wa(164) Hostd[2102236]: -->             controllerKey = 1000,
    <timestamps> Wa(164) Hostd[2102236]: -->             unitNumber = 2,
    <timestamps> Wa(164) Hostd[2102236]: -->             capacityInKB = 0,
    <timestamps> Wa(164) Hostd[2102236]: -->          },
    <timestamps> Wa(164) Hostd[2102236]: -->       }
    <timestamps> Wa(164) Hostd[2102236]: -->    ],
    <timestamps> Wa(164) Hostd[2102236]: --> }
    <timestamps> Wa(164) Hostd[2102236]: --> N3Vim5Fault20GenericVmConfigFault9ExceptionE(Fault cause: vim.fault.GenericVmConfigFault
    <timestamps> Wa(164) Hostd[2102236]: --> )
    <timestamps> Wa(164) Hostd[2102236]: --> [context]zKq7AVICAgAAAKckdwEWaG9zdGQAAOPJR2xpYnZtYWNvcmUuc28AgU+BHQFsaWJ2aW0tdHlwZXMuc28AAWF26IKpShEBaG9zdGQAgt4iDAGCHDUMAYKlPgwBAqdU/AKNffwCx4b8AqyN/AIKc/gCOkP5Ar9R+QJlVPmBMAoWAQK1lWIAHtssAOD/LAA7UFIDUngAbGlicHRocmVhZC5zby4wAAQ/Ug9saWJjLnNvLjYA[/context]

 

Environment

VMware vSphere ESXi 8.0.3

Cause

vSphere 8.0 Update 3 では、CBRC の動作に変更が導入されました。
CBRC フィルターのメモリ消費量を削減するため、このバージョン以降、CBRC 対応(ダイジェスト)ディスクのホットアドは、対象の仮想マシンに既にダイジェストディスクが接続されている場合、または仮想マシンで CBRC が明示的に有効化されている場合にのみ許可されます。

Resolution

この問題を解決するには、次の手順を適用してください:

  1. 仮想マシンをシャットダウンして電源を切る
  2. 仮想マシンが配置されているESXiホストにSSHで接続し、rootユーザーでログインする
  3. 仮想マシンのフォルダ(通常は/vmfs/volumes/<データストア名>/<仮想マシン名>/)に移動する
  4. VIエディタを使用して.vmx設定ファイルを編集する
  5. ファイルの末尾に次の行を追加する:
    cbrc.cacheEnable = "TRUE"
  6.  ファイルを保存する
  7. 仮想マシンを再起動する