虛擬機器的 RecoverPoint:規模環境中初始化狀態和錯誤狀態之間的一致性組迴圈
Summary: 虛擬機器的 RecoverPoint:規模環境中初始化狀態和錯誤狀態之間的一致性組迴圈
Symptoms
規模環境中
初始化狀態和錯誤狀態之間的一致性組迴圈,導致數據複製不可用 (DRU)。
在記錄中找到的症狀:
ESX 分割器記錄:
以下記錄指出讀取 /vmfs/volumes/vsan:5xxxxxxxxxx-dxxxxxxxxx 失敗,因此將會移除 VSAN 中的所有 RPVS 磁碟區。
spl_esx_discover_RPvStorage_clusters_in_datastore:無法讀取目錄 /vmfs/volumes/vsan:5xxxxxxxxx-dxxxxxx,傳回狀態逾時
update_rpvs_db:上次裝置檢視更新
RPVS_ClusterLuns_removeLunInfo 未掃描 LUN 1 (名稱 RPVS_Lun00001.vmdk)。叢集 id=2xxxxxxxxxxxx
update_rpvs_db:上次裝置檢視更新
時未掃描 LUN 12 RPVS_ClusterLuns_removeLunInfo:呼叫 lun=12 (名稱 RPVS_Lun00012.vmdk)。叢集 id=2xxxxxxxxxxxx
update_rpvs_db:上次裝置檢視更新時未掃描 LUN 13...
* RPVS 探索程序成功,因此所有 RPVS 磁碟區都會新增回來:
parse_vmdk_file:使用檔案 /vmfs/volumes/vsan:5xxxxxxxxxxxxxxxx/RPvStorage/4xxxxxxxxxxx/RPVS_Lun00001.vmdk
呼叫 parse_vmdk_file:capacity=12000000、thinLun=0、flat_filename=RPVS_Lun00001-flat.vmdk、rawguid=0x6xxxxxxxxxxxxxxx
RPVS_ClusterLuns_addLunInfo:新增的 LUN 1、叢集 4xxxxxxxxxxxxxxxx parse_vmdk_file:使用檔案 /vmfs/volumes/vsan:5xxxxxxxxxxx-dxxxxxxx/RPvStorage_23d5fb88838940xxx_010/RPVS_Lun00012.vmdk 呼叫parse_vmdk_file: capacity=524288000, thinLun=0, flat_filename=RPVS_Lun00012-flat.vmdk, rawguid=0x6xxxxxxxxxxxx RPVS_ClusterLuns_addLunInfo:新增 LUN 12,叢集 2xxxxxxxxx
* 記錄指出 RPVS 探索程序已花費很長的時間
CommandExecuterBase_v_handleCommands_i:cmd 0x417fdde35040、cmd-execute>(CommandRPVSDiscovery)、執行時間 32585607 微秒、佇列中的 num 命令:11 CommandExecuterBase_v_handleCommands_i:cmd 0x417fdde35040,cmd-execute>(CommandRPVSDiscovery),執行時間 33277695 微秒,佇列內有 num 個命令:11 CommandExecuterBase_v_handleCommands_i: cmd 0x417fdde35040, cmd-execute>(CommandRPVSDiscovery), 執行時間 35834242 微秒, 佇列內有 num 個命令:11 CommandExecuterBase_v_handleCommands_i:cmd 0x417fdde35040、cmd-execute>(CommandRPVSDiscovery)、執行時間 36488014 微秒、佇列中的 num 命令:11 CommandExecuterBase_v_handleCommands_i:cmd 0x417fdde35040、cmd-execute>(CommandRPVSDiscovery)、執行時間 37767728 微秒、佇列中的 num 命令:11 CommandExecuterBase_v_handleCommands_i:cmd 0x417fdde35040、cmd-execute>(CommandRPVSDiscovery)、執行時間 49355575 微秒、佇列中的 num 命令:11 CommandExecuterBase_v_handleCommands_i:cmd 0x417fdde35040,cmd-execute>(CommandRPVSDiscovery),執行時間 109257427 微秒,佇列中的 num 命令:19
受影響的所有 RP4VM 版本
Cause
ESX 分割器每t_rpvsDiscoveryPeriodicTimerInterval掃描一次 RPVS 磁碟區 (日誌和儲存庫) (預設值:30)秒。
掃描的完成方法是讀取 /vmfs/volumes/,並遍歷其中的每個目錄,尋找 RPVS_LunXXXXX.vmdk
RPVS 磁碟區位於 /vmfs/volumes/<datastore>/<cluster=id>/ 中。在 VSAN 環境中,它會位於 /vmfs/volumes/vsan:<vsan-id>/<cluster=id>/
如果讀取 /vmfs/volumes/ 內的任一目錄失敗 (逾時、暫時性錯誤等),將會移除故障目錄中的所有 RPVS 磁碟區。
在任何後續的執行中,如果 rpvs 探索程序成功讀取並找到 RPVS_LunXXXXX.vmdk,則會重新新增對應的 RPVS 磁碟區。
這就是 CG 在錯誤和初始化之間迴圈的原因。
當 VSAN 中有大量主機同時讀取 /vmfs/volumes/ 下的目錄時,問題會放大。
Resolution
在叢集中的每個 ESX 主機中,將分割器調整值 t_rpvsDiscoveryPeriodicTimerInterval
更新為 180 到 600 秒之間的隨機值,然後重新啟動 kdriver。
ESX 分割器 Tweak 可在
/etc/kdriver/tweak/tweak.params.splitter 或 /etc/config/emc/rp/kdriver/tweak/tweak.params.splitter 找到。
解決方案:
Dell EMC 工程部門目前正在調查此問題。永久修正方法仍在進行中。如需技術協助,請聯絡 Dell EMC 客戶支援中心或您的服務代表,並引用此解決方案 ID。