本篇字數較多,覺得硬的話可分次閱讀。
<<前情提要>>
新機器安裝 ESXi 6.7,舊機器原先安裝 ESXi 6.5,新環境佈署 VCSA 6.7,並將所有 ESXi Host 加入管理。在 vSphere HTML5 Client 下操作,所有的 VM 都是放在 Local Datastore 下,將原先在 6.5 的開機的 VM Migrate 到 6.7 沒問題,但要從 6.7 將開機的 VM Migrate 到 6.5 無法成功。
在執行 vMotion+Storage vMotion 時,過程的結尾會發生奇妙的錯誤:The backing path name is invalid. (中文版 Web Client 看到的訊息是:支援路徑名稱無效)
題外話:VMware vSphere 6.7 在 17 APR 2018 低調現身,殺個讓人措手不及,後續有空再來分享 What's new in vSphere 6.7。
<<解題無腦版>>
一般用關鍵字呼叫咕狗,通常第一頁就會有 VMware KB (Knowledge Base) 出來解危,當然 KB 不是一定有用,但至少會有些解謎方向,但這次卻完全沒有相關資料。
嘗試了幾個...沒啥用的方法,像是:
(1)檢查 Virtual Machine Hardware Version,是否不小心按到升級為 ESXi 6.5 不支援的更高版本。
(2)檢查是否有隱藏未刪除乾淨的 snapshot。
(3)將這個 VM → Remove from inventory → Add to inventory。
(4)...
大概還有十八招,不過既然沒用就不用全部寫出來了,以免誤人子弟。
<<解題認真版>>
VM 在 power on 的時候作 vMotion+Storage vMotion,會牽涉到兩端 Host 的 CPU 相容性 (如果主機型號不同,造成 CPU 世代差異,而且又沒有開啟 EVC 的話),所以先問 VM 能否 shutdown,關機後再做 VM Storage vMotion (或是應該說 change host+datastore),這樣子就只牽涉到純資料搬移,去除硬體相容性的影響。
不過 VM shutdown 之後做 Migrate 還是老樣子,一樣失敗,一樣的錯誤訊息~沒關係只好開始土法煉鋼,開始翻各種地方的 log file,查看該個 VM 的 Events 也沒有什麼幫助,只好開始繼續往 ESXi Host 挖。
小提示:可以透過 Export System Logs (Export the Support Bundle) 功能,把 ESXi Host 的各種 Log 資訊打包後下載回來,這也是開 Support Ticket 時,Support Engineer 很常叫客戶做的事情之一。將下載的壓縮檔解開後,在外面使用文字編輯器 (Notepad++, MadEdit, UltraEdit, ...) 會比較容易查看及搜尋,如果對 vi 的用法很熟悉的話,在 ESXi SSH Shell 下直接來也是可以。
順便
關於在每台 ESXi 上 VM 的操作及詳細 log 都會儲存在每台 ESXi Host 的檔案 /var/log/hostd.log,打包出來的 support bundle 目錄結構會有些許改變,變成 /var/run/log/hostd.log。Log files 每天系統會自動 rotate,歷史檔案會壓縮起來,所以往前的歷史天數依序是:hostd.0.gz, hostd.1.gz, ... hostd.8.gz。
在轉移來源端的 hostd.log 內找不到明顯的錯誤,再來往轉移目的端的 ESXi 尋找。
(轉移目的端)節錄 esxi-target-hostd.log 一段,包含可能有問題的訊息:
2018-06-06T08:32:38.932Z info hostd[2105829] [Originator@6876 sub=Vimsvc.ha-eventmgr opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] Event 295 : Creating ucspe-3 on host localhost.localdomain in ha-datacenter2018-06-06T08:32:38.934Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] FILE: FileCreateDirectoryEx: Failed to create /vmfs. Error = 172018-06-06T08:32:38.934Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] FILE: FileCreateDirectoryEx: Failed to create /vmfs/volumes. Error = 172018-06-06T08:32:38.934Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] FILE: FileCreateDirectoryEx: Failed to create /vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948. Error = 172018-06-06T08:32:38.934Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] FILE: FileCreateDirectoryEx: Failed to create /vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3. Error = 172018-06-06T08:32:38.944Z info hostd[2105829] [Originator@6876 sub=Vmsvc.vm:/vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3/ucspe-3.vmx opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] SetVmxVersion: switching environment browser to vmx version 'vmx-13'2018-06-06T08:32:38.952Z info hostd[2098843] [Originator@6876 sub=Snmpsvc] VmConfigListener: vm state change received, queueing reload request2018-06-06T08:32:38.964Z info hostd[2105829] [Originator@6876 sub=Vmsvc.vm:/vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3/ucspe-3.vmx opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] Reconfigure failed: N3Vim5Fault20GenericVmConfigFault9ExceptionE(Fault cause: vim.fault.GenericVmConfigFault--> )--> [context]zKq7AVICAgAAAMKpfAAcaG9zdGQAAHyZNWxpYnZtYWNvcmUuc28AAADAGwBgsBcBv1v9bGlidmltLXR5cGVzLnNvAIFiMhYBgY6HFgGBmnUSAQK1O9hob3N0ZAAC6h3WAu0l1gLcP9YCWwixAlILsQLldLECAYquAta7tQLaxrUCiuq5AkDtuQJCb2WBomQBAQL148EC7ezBACUwKAADNCgAOw82A2uAAGxpYnB0aHJlYWQuc28uMAAE7ZoObGliYy5zby42AA==[/context]2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] CopyFromDisk: Hostlog_Dump: Hostlog /vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3/ucspe-3-757d692b.hlog2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] UUID: 39363436-3230-4e43-3732-34323033324c2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] MigID: 70341228780624305812018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] HLState: none2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] ToFrom: none2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] MigType: invalid2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] OpType: nfc2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] WorldID: 02018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] Item Dir F "/vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3"2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] Item Disk F "/vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3/ucspe-3.vmdk"2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] Item File F "/vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3/ucspe-3.nvram"2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] Item File F "/vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3/vmware-1.log"2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Libs opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] Item File F "/vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3/vmware.log"2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=vm opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] Item Vm F "/vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3/ucspe-3.vmx"2018-06-06T08:32:38.984Z info hostd[2105829] [Originator@6876 sub=Vmsvc.vm:/vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3/ucspe-3.vmx opID=5572f059-d0d4-471b-8fe6-2674b614e9f4-192755-auto-192756-h5c:70026332-44-01-7b-7e27 user=vpxuser:VSPHERE.LOCAL\Administrator] Create failed with given spec: /vmfs/volumes/5b1735f8-10a8490f-6eae-ac162d6f9948/ucspe-3/ucspe-3.vmx
這一看就覺得事情並不單純,ucspe-03.vmx 裡面的內容肯定有鬼,到底是什麼鬼我也不知道,明明七月還沒到就跨丟。
把 ucspe-03.vmx 打開來看,我用火眼金睛看過三次之後,還是看不出哪裡有問題,去咕狗找 vmx format checker 之類的東西,也沒找到這種工具。
繼續來土法煉鋼,如果確定方向是 vmx 的內容有問題,那用 Create Virtual Machine 產生出來的 .vmx 就絕對沒問題。為了以防萬一,原先的 VMDK (Virtual Disk) 先留著,以免發生不測。
假設原先的 VM 是 ucspe-03,新的 VM 取名 ucspe-03-new,請自行依環境修改參數,大致步驟如下:
(vmkfstools 為 ESXi Shell 下指令,請自行小心使用)
(1) 複製 ucspe-03.vmdk,新的檔案 ucspe-03-new.vmdk。
vmkfstools -i ucspe-03.vmdk ucspe-03-new.vmdk
(2) 建立新的虛擬機 (Create a Virtual Machine),名稱為 ucspe-03-new,建立 Virtual Disk 步驟請跳過暫時不要建立,其他參考原先 VM 的 Virtual Hardware 需一致。
請自行操作 Web Client 或 vSphere HTML5 Client。
(3) 將複製出來的 ucspe-03-new.vmdk,搬移到新建 VM 的目錄下 (此步驟是為了往後管理方便)。
vmkfstools -E ucspe-03-new.vmdk ../ucspe-03-new/ucspe-03-new.vmdk
(4) 將新 VM ucspe-03-new 掛上複製的 ucspe-03-new.vmdk。
請自行操作 Web Client 或 vSphere HTML5 Client。
(5) Power On 新 VM ucspe-03-new,看是否運作正常;若正常可將此 VM 關機。
(6) 對新 VM 再做一次 Migrate VM,看 Storage vMotion 搬移過程是否還有錯誤。
(7) 如果一切正常的話,可以把原先無法搬移的舊 VM 完全刪除。
打完收工!
<<參考資料>>
vSphere 6.7 Release Notes
Collecting diagnostic information for VMware ESX/ESXi (653)
vmkfstools - vSphere CLI for managing VMFS volumes.
Validating the .vmx settings of a virtual machine (1003748)
<<附檔收錄>>
這邊是 Migrate VM 的事件完整 log 檔、ucspe-03.vmx,有興趣的可以下載回去研究:
(轉移來源端) esxi-source-hostd.log
(轉移目的端) esxi-target-hostd.log
(VM設定檔) ucspe-3.vmx
〈本文同步刊載於痞客邦部落格〉
No comments:
Post a Comment