NVP vProxy:啟用 CBRC 時,VM 備份失敗,並顯示 VDDK 錯誤 13「您沒有存取權限」

Summary: NetWorker VMware Protection (NVP) vProxy 虛擬機器 (VM) 備份一或多個磁碟失敗。傳回的錯誤為一般 VMware 磁碟開發套件 (VDDK) 錯誤「您沒有此檔案的存取權限。」出現此錯誤可能有多種原因;不過,本知識文章著重於在 VMware 中設定內容型讀取快取記憶體 (CBRC) 的時機。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

VM 備份工作階段失敗,並在 vProxy 的 /opt/emc/vproxy/runtime/logs/vbackupd/vbackupd-vddk.log 中記錄下列錯誤:

YYYY-MM-DDTHH:mm:SS NOTICE: VDDK INFO VixDiskLib: There is no avaiable transport mode when attempting to open disk. Mounting 42104975-a9ce-e89a-57ec-eed07aaa4eac using transport hotadd failed : Failed to hot-add SCSI targets: Vmomi::MethodFault::Exception: Fault cause: vim.fault.GenericVmConfigFault
YYYY-MM-DDTHH:mm:SS NOTICE: VDDK INFO . at 6502.
YYYY-MM-DDTHH:mm:SS NOTICE: VDDK INFO VixDiskLib: VixDiskLib_OpenEx: Cannot open disk [DATASTORE_NAME] VM_NAME/VM_NAME.vmdk. Error 13 (You do not have access rights to this file) (Mounting 42104975-a9ce-e89a-57ec-eed07aaa4eac using transport hotadd failed : Failed to hot-add SCSI targets: Vmomi::MethodFault::Exception: Fault cause: vim.fault.GenericVmConfigFault

此錯誤僅在 VM 電源開啟時出現。當 VM 電源關閉時,熱新增備份會成功。
或者,如果使用網路塊設備 (NBD) 傳輸模式,則備份成功。

Cause

VM 所在的 VMware ESXi 主機是使用內容型讀取快取 (CBRC) 進行設定。虛擬機器也會在啟用 CBRC 的情況下進行設定。

當 vProxy 嘗試在備份期間熱新增磁碟時,vCenter 伺服器的vpxd.log會回報下列錯誤:

vCenter Server 記錄檔的位置 此超連結會帶您前往 Dell Technologies 以外的網站。

YYYY-MM-DDTHH:mm:SS error vpxd[4017950] [Originator@6876 sub=VmProv opID=77a6f80-01] Get exception while executing action vpx.vmprov.ReconfigureVm:
--> (vim.fault.GenericVmConfigFault) {
-->    faultMessage = (vmodl.LocalizableMessage) [
-->       (vmodl.LocalizableMessage) {
-->          key = "msg.disk.hotadd.digest.nomem", 
-->          message = "CBRC cannot be hot-enabled on a disk unless the VM was powered-on with digest disks or cbrc.cacheEnable was set.", 
-->       }
-->    ], 
-->    reason = "CBRC cannot be hot-enabled on a disk unless the VM was powered-on with digest disks or cbrc.cacheEnable was set.", 
-->    msg = "CBRC cannot be hot-enabled on a disk unless the VM was powered-on with digest disks or cbrc.cacheEnable was set."
--> }
YYYY-MM-DDTHH:mm:SS info vpxd[4017950] [Originator@6876 sub=VmProv opID=77a6f80-01] Workflow context:
--> (vpx.vmprov.ReconfigureContext) {
-->    cbData = (vmodl.KeyAnyValue) [
-->       (vmodl.KeyAnyValue) {
-->          key = "workflow.startTime", 
-->          value = 11354949631767
-->       }, 
-->       (vmodl.KeyAnyValue) {
-->          key = "workflow.actionTiming", 
-->          value = (vmodl.KeyAnyValue) [
-->             (vmodl.KeyAnyValue) {
-->                key = "vpx.vmprov.InvokePrechecks", 
-->                value = "YYYY-MM-DDTHH:mm:SS"
-->             }, 
-->             (vmodl.KeyAnyValue) {
-->                key = "vpx.vmprov.CheckCompatibility", 
-->                value = "YYYY-MM-DDTHH:mm:SS"
-->             }, 
-->             (vmodl.KeyAnyValue) {
-->                key = "vpx.vmprov.ReserveDirectory", 
-->                value = "YYYY-MM-DDTHH:mm:SS"
-->             }, 
-->             (vmodl.KeyAnyValue) {
-->                key = "vpx.vmprov.InvokeCallbacks", 
-->                value = "YYYY-MM-DDTHH:mm:SS"
-->             }, 
-->             (vmodl.KeyAnyValue) {
-->                key = "vpx.vmprov.ReconfigureVm", 
-->                value = "YYYY-MM-DDTHH:mm:SS"
-->             }
-->          ]
-->       }, 
-->       (vmodl.KeyAnyValue) {
-->          key = "OCM.inited", 
-->          value = true
-->       }
-->    ], 
-->    configSpec = (vim.vm.ConfigSpec) {
-->       createDate = "YYYY-MM-DDTHH:mm:SS", 
-->       files = (vim.vm.FileInfo) {
-->          vmPathName = "ds:///vmfs/volumes/67b62d67-8dbb8f29-52af-f4c7aa35600a/VPROXY_NAME/VPROXY_NAME.vmx", 
-->       }, 
-->       deviceChange = (vim.vm.device.VirtualDeviceSpec) [
-->          (vim.vm.device.VirtualDeviceSpec) {
-->             operation = "add", 
-->             device = (vim.vm.device.VirtualDisk) {
-->                key = -1102, 
-->                backing = (vim.vm.device.VirtualDisk.FlatVer2BackingInfo) {
-->                   fileName = "ds:///vmfs/volumes/67b62d67-8dbb8f29-52af-f4c7aa35600a/VM_NAME/VM_NAME.vmdk",

CBRC 使用啟用摘要的磁碟來緩存頻繁讀取的塊。啟用 CBRC 時:

  • VMware 會限制在來源 VM 電源開啟時,將這些摘要式啟用磁碟附加至另一個 VM。
  • 此限制直接影響熱添加傳輸模式,該模式依賴於將源 VM 的磁碟附加到備份代理 VM。

Resolution

此問題發生在 NetWorker 以外。使用下列其中一個選項:

選項一:

針對 VMware 8.0.3+,請參閱:無法在 vSphere 8.0 Update 3 中將 CBRC (摘要) 磁碟熱新增至非 CBRC 虛擬機器,「無法在磁碟上熱啟用 CBRC...」 此超連結會帶您前往 Dell Technologies 以外的網站。

選項二:

請諮詢 VMware 系統管理員,以判斷這些 VM 上是否必須保持啟用 CBRC,或者是否可以停用 CBRC 以支援熱新增備份。如有必要,請就 CBRC 組態事宜與 VMware 支援部門接洽。

選項三:

將 CBRC 虛擬機的備份配置為僅使用網路塊設備 (NBD) 傳輸模式。

注意:NBD 傳輸模式會使用 ESXi 管理網路。NBD 備份效能預期會比熱新增差。大量的 NBD 流量可能會使 ESXi 管理網路擁塞。如需備份傳輸模式的其他資訊,請參閱 NetWorker VMwar 整合指南
  1. 將使用 CBRC 設定的虛擬機器隔離至其自己的 NetWorker 保護群組。
  2. 為新的 CBRC 相關組創建策略/工作流。 
  3. 確定 NetWorker 伺服器上至少有一個 vProxy 已啟用 NBD 工作階段:

NetWorker 管理主控台 (NMC):裝置->VMware 代理
NetWorker Web 使用者介面 (NWUI):保護->VMware 代理

vProxy 的 NBD 工作階段上限

  1. 執行下列其中一個組態選項:
    1. (首選)將備份操作配置為僅使用 NBD 工作階段。
      1. 從 NetWorker Web 使用者介面 (NWUI) 開啟備份動作內容。
      2. VMware 特定組態選項 標籤中,將 傳輸模式 設為 NBD:
        備份操作傳輸模式  
注意:此選項僅適用於 NetWorker 19.10 及更新版本的 NetWorker Web 使用者介面 (NWUI)。這會將 VM 備份工作階段限制為僅限 NBD。如果多個 vProxy 已啟用 NBD,備份可以使用多個 vProxy 來並行處理工作階段。
    1. 設定備份動作,以使用啟用 NBD 工作階段的特定 vProxy。
      1. 從 NMC 或 NWUI,開啟 CRBC 專屬的備份動作,並將 vProxy 設為「手動選取」。 
      2. 選取僅使用 NBD 工作階段設定的 vProxy:

手動選擇 vProxy

Additional Information

VDDK 錯誤 13 有許多可能原因。如果未設定 CBRC,請參閱:NVP vProxy:故障診斷 VM 備份失敗,並顯示「VDDK 錯誤 13:您沒有存取此檔案的權限」

Affected Products

NetWorker

Products

NetWorker Family
Article Properties
Article Number: 000320972
Article Type: Solution
Last Modified: 14 May 2025
Version:  2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.