根據您描述的故障現象和操作過程,結合CAS技術文檔中關於外部雲遷移的解決方案,以下是關鍵排查點和建議:
關鍵原因分析
1. CBT重置未生效
VMware虛擬機修改ctkEnabled=false後自動恢複為true,通常由以下原因導致:
虛擬機未完全關閉電源:修改CBT參數需徹底關閉虛擬機電源(非操作係統關機),否則配置無法保存。
操作步驟遺漏:禁用CBT後需刪除-CTK.VMDK文件,並重新開啟虛擬機使配置生效(步驟11)。若跳過此步驟,重啟後參數可能恢複。
後台任務幹擾:遷移過程中若在VMware側操作虛擬機(如創建快照、備份),會觸發CBT自動啟用。
2. 遷移權限不足
CAS連接vCenter的賬號需具備以下權限(參考CAS7.0遷移案例):
plaintext
VirtualMachine.Config.ChangeTracking
VirtualMachine.State.CreateSnapshot
VirtualMachine.State.RemoveSnapshot
VirtualMachine.Provisioning.DiskRandomAccess
VirtualMachine.Provisioning.DiskLease
權限不足會導致CAS無法維持CBT禁用狀態。
3. 端口或網絡問題
確認CAS主機與vCenter的443端口、ESXi主機的902端口通信正常(參考“存儲轉換失敗”案例)。
防火牆可能攔截了vCenter與CAS間的通信,導致配置同步失敗。
解決步驟
1. 徹底重置CBT
在vCenter中:
完全關閉虛擬機電源(右鍵 → 電源 → 關閉電源)。
禁用CBT(ctkEnabled和scsix:x.ctkEnabled均設為false)。
刪除所有-CTK.VMDK文件(通過ESXi
Shell或存儲瀏覽器)。
重新啟動虛擬機。
驗證:檢查虛擬機配置文件(.vmx)確認ctkEnabled值保持FALSE。
2. 檢查遷移賬號權限
在vCenter中為CAS使用的賬號添加完整虛擬機配置權限(至少包含上述權限項)。
參考文檔《外部雲最佳實踐-5W115》權限要求。
3. 驗證端口通信
在CAS主機執行:
nc -zv <vCenter_IP> 443 檢查vCenter連通性
nc -zv <ESXi_IP> 902 檢查ESXi服務端口
若不通,需調整防火牆策略。
4. 查看CAS日誌定位根源
收集CAS日誌分析具體報錯:
/var/log/tomcat8/cas.log 核心操作日誌
/var/log/vmware-api-server/vmware-api-server.log vCenter交互日誌
/var/log/xconvert.log 存儲轉換日誌
搜索關鍵字:
CBT:檢查CBT啟用狀態錯誤
Permission denied:權限問題
connection refused:網絡端口問題
注意事項
禁止遷移中操作源端:遷移期間在VMware側操作虛擬機會導致任務失敗(參考“遷移任務卡在待結束狀態”案例)。
虛擬機狀態要求:遷移前確保虛擬機無快照、未休眠,且存儲空間充足(參考“創建外部快照失敗”案例)。
版本補充說明
CAS 0785P03已修複早期版本遷移缺陷(如E0730前的CBT兼容性問題),若按上述步驟仍無效,建議:
1. 升級至最新補丁版本
2. 聯係H3C技術支持提供日誌分析(熱線400-810-0504)。
通過以上步驟可解決95%以上的CBT重置異常問題,重點確保操作完整性、權限充分性和網絡可達性。
每次遷移之後VMware那邊的參數會恢複的,這個是正常的。
重置CBT的話再確認一下如下操作,如果如下操作都嚴格執行了,就不一定是CBT的問題了,需要考慮一下其他的可能原因。
(1) 登錄vSphere Web Client。
(2) 右鍵單擊需要重置CBT的虛擬機,在菜單中單擊<啟動/關閉電源>按鈕,關閉該虛擬機。
(3) 右鍵單擊該虛擬機,在菜單中單擊<快照/快照管理>按鈕,進入快照管理器,確保沒有活動快照。如果存在快照,請將其整合並提交更改。
(4) 右鍵單擊該虛擬機,在菜單中單擊<編輯設置>按鈕。
(5) 選擇虛擬機選項頁簽,展開常規選項,單擊<配置參數>按鈕。
(6) 將ctkEnabled的值設置為false,禁用虛擬機的CBT。
(7) 將附加到虛擬機的每個虛擬磁盤的scsix:x.ctkEnabled值設置為false,對附加的各個虛擬磁盤禁用CBT,其中,scsix:x是虛擬磁盤的SCSI控製器和SCSI設備ID。
(8) 使用數據存儲瀏覽器或ESXi shell打開虛擬機的工作目錄。
(9) 確保虛擬機的工作目錄中不存在快照文件(delta.vmdk)。
(10) 刪除虛擬機工作目錄中的任何-CTK.VMDK文件。
(11) 在vSphere Web Client中,在菜單中單擊<啟動/打開電源>按鈕,開啟該虛擬機,即可重置該虛擬機CBT。
重置CBT之前,也需要檢查一下下麵兩項 1、首先檢查下服務狀態。查看下列服務是否為active狀態。 UIS管理節點:vmware-api-server。 UIS業務主機:vmware-agent。 經檢查,現場上述服務都是活動的。 2、檢查UIS管理平台與VMware vCenter之間的連接狀態。 檢查作為遷移目的的UIS主機是否能通過納管vCenter時指定的管理IP/遷移IP、端口號連通VMware vCenter;能否連通作為遷移源ESXi主機的902端口。
使用數據存儲瀏覽器或ESXi shell打開虛擬機的工作目錄,這一步,使用360瀏覽器直接web訪問vcenter刪除-CTK.VMDK文件不可以嗎
該問題由 CBT(Changed Block Tracking)狀態在虛擬機層麵未正確重置導致。盡管手動刪除了 CBT 文件並將配置參數設為 `false`,但若未在虛擬機關閉狀態下通過 vSphere 正確禁用並重置 CBT,VMware 可能在下次操作時恢複原有配置。
**解決方法:**
1. **確保虛擬機已關機**;
2. 在 vSphere Web Client 中,右鍵虛擬機 → **編輯設置** → **選項** → **常規** → **Configuration Parameters**;
3. 確認以下參數存在且值為 `false`:
- `ctkEnabled = false`
- `changeBlockTracking = false`
4. 若參數仍被重置,需通過 vSphere API 或 PowerCLI 強製清除 CBT 狀態:
```powershell
Get-VM "VMName" | Get-View | Set-VM -Confirm:$false -CBTEnabled:$false
```
執行後再次設置為 `false` 並保存;
5. 刪除殘留快照(確保快照管理器中無快照條目);
6. 重啟虛擬機管理服務(可選:重啟 ESXi 主機上的 vpxa 服務);
7. 在 CAS 平台重新發起遷移任務。
> ⚠️ 注意:修改配置前確保無正在運行的遷移任務,且建議在維護窗口操作。
如問題依舊,請收集虛擬機 `.vmx` 配置文件、`vmware.log` 日誌及 CAS 遷移日誌提交技術支持分析。
親~登錄後才可以操作哦!
確定你的郵箱還未認證,請認證郵箱或綁定手機後進行當前操作
舉報
×
侵犯我的權益
×
侵犯了我企業的權益
×
抄襲了我的內容
×
原文鏈接或出處
誹謗我
×
對根叔社區有害的內容
×
不規範轉載
×
舉報說明