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

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

本文章適用於 本文章不適用於 本文無關於任何特定產品。 本文未識別所有產品版本。

症狀

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) 傳輸模式,則備份成功。

原因

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。

解析度

此問題發生在 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

其他資訊

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

受影響的產品

NetWorker

產品

NetWorker Family
文章屬性
文章編號: 000320972
文章類型: Solution
上次修改時間: 14 5月 2025
版本:  2
向其他 Dell 使用者尋求您問題的答案
支援服務
檢查您的裝置是否在支援服務的涵蓋範圍內。