河北 王曉洲 王春海
本文總結(jié)了近期筆者碰到的幾例VMware Horizon 虛擬桌面在版本升級(jí)或使用中的故障及其解決方法,希望對(duì)有同樣問(wèn)題的讀者有所幫助。
某公司使用DELL Wyse 5030 Zero Client(瘦客戶機(jī))登錄VMware Horizon 7.5的虛擬桌面。在將Horizon連接服務(wù)器、Composer 服務(wù)器升級(jí)到7.10 之后,有些工作站登錄到虛擬桌面時(shí)提示“View Connection Server communication error”,也有部分工作站登錄正常。
經(jīng)過(guò)檢查,發(fā)現(xiàn)瘦客戶端固件版本5.51 的可以登錄,4.8 版本的不行。升級(jí)瘦客戶端固件可以解決。
在登錄到Horizon Administrator 后,在“目錄→桌面池”中,雙擊已經(jīng)配置好的桌面池進(jìn)行編輯時(shí),出現(xiàn)“服務(wù)器錯(cuò)誤→未知”的錯(cuò)誤,如圖1 所示。
圖1 出現(xiàn)未知錯(cuò)誤
如果新建桌面池,在“vCenter 設(shè)置”步驟中,在選擇“主機(jī)或群集”時(shí)出現(xiàn)“java.lang.IllegalAr gumentException:Invalid parameters”錯(cuò)誤,如圖2 所示。
圖2 選擇“主機(jī)或群集”時(shí)出錯(cuò)
出現(xiàn)這個(gè)錯(cuò)誤的原因,一般是當(dāng)前vCenter Server所管理的ESXi 主機(jī)中有離線主機(jī)。例如在當(dāng)前的虛擬化環(huán)境中,由4 臺(tái)ESXi 6.7 主機(jī)組成的vSAN 環(huán)境,但其中1 臺(tái)主機(jī)出現(xiàn)故障離線。如果故障主機(jī)短期無(wú)法修復(fù),應(yīng)在vCenter Server 中暫時(shí)移除故障主機(jī)就可解決這個(gè)故障。等故障主機(jī)修好之后重新加入群集即可。
某環(huán)境中有兩臺(tái)Horizon 7.5 的連接服務(wù)器,一臺(tái)為Horizon 連接服務(wù)器,另一臺(tái)為第一臺(tái)連接服務(wù)器的副本服務(wù)器。
在將兩臺(tái)Horizon 連接服務(wù)器升級(jí)到7.10 時(shí),其中第一臺(tái)連接服務(wù)器升級(jí)成功,在升級(jí)第二臺(tái)連接服務(wù)器(副本服務(wù)器)時(shí),提示“LDAP 未就緒,發(fā)生與服務(wù)器VCS02 有關(guān)的復(fù)制問(wèn)題”。
發(fā)生這種故障的主要原因是由于連接服務(wù)器(副本)長(zhǎng)時(shí)間未與第一臺(tái)連接服務(wù)器同步導(dǎo)致。因?yàn)榈谝慌_(tái)連接服務(wù)器是正常的,如果要解決這個(gè)問(wèn)題,可以卸載第二臺(tái)連接服務(wù)器(副本)及AD LDS 實(shí)例,然后重新安裝連接服務(wù)器(副本),并重新從第一臺(tái)服務(wù)器復(fù)制數(shù)據(jù)即可。
1.在“程序和功能”中依次卸載VMware Horizon 7 Connection Server、VMware Horizon 7 HTML Access、AD LDS 實(shí) 例VMware VDMDS,如圖3 所示。
圖3 卸載連接服務(wù)器及其組件
2.在卸載“AD LDS 實(shí)例VMware VDMDS”組件時(shí),選擇“全部跳過(guò)”,在“已成功刪除AD LDS”對(duì)話框中單擊“關(guān)閉”按鈕。
3.運(yùn) 行Horizon 7.10連接服務(wù)器的安裝程序,選擇副本服務(wù)器,如圖4 所示。然后在“源服務(wù)器”中指定第一臺(tái)連接服務(wù)器的域名或IP 地址。
圖4 安裝副本服務(wù)器
4.在“VMware Horizon 7 Connection Server”對(duì)話框中彈出“指定的Horizon 7 連接服務(wù)器已包含該計(jì)算機(jī)的復(fù)制配置,是否要繼續(xù)并使用該計(jì)算機(jī)中的復(fù)制配置信息覆蓋該配置”警告提示中單擊“確定”按鈕。然后根據(jù)向?qū)瓿砂惭b。
最后,在 Horizon administrator 管理界面的“View 配置→服務(wù)器→連接服務(wù)器”中可以看到,兩臺(tái)服務(wù)器已經(jīng)是7.10 的版本,如圖5 所示。
圖5 查看連接服務(wù)器版本
某大學(xué)圖書(shū)館多媒體教室,VMware vSphere 5.5 的環(huán)境,7 臺(tái)ESXi 主機(jī),1 臺(tái)EMC 的存儲(chǔ),使用VMware View 5.2 虛擬桌面(虛擬機(jī)操作系統(tǒng)是Windows XP)。有80 個(gè)終端使用桌面。有次存儲(chǔ)出故障修復(fù)之后,有些桌面能使用,有些桌面無(wú)法登錄。
1.登錄 Horizon Administrator,在“清單→桌面”中,發(fā)現(xiàn)有些桌面狀態(tài)為“無(wú)法訪問(wèn)代理”,有些桌面狀態(tài)為“已部署(缺少),如圖6 所示。
圖6 桌面清單
2.在檢查“桌面池”并編輯桌面池時(shí),在“vCenter Server 設(shè)置”的“父虛擬機(jī)”中,沒(méi)有找到原來(lái)該桌面池的父虛擬機(jī)。這個(gè)桌面池的父虛擬機(jī)的名稱為XP_SP3。
經(jīng)過(guò)詢問(wèn)管理員得知存儲(chǔ)出故障時(shí),有一個(gè)LUN 數(shù)據(jù)全部丟失。而名為XP_SP3的桌面池的父虛擬機(jī)以及部分桌面就保存在這個(gè)存儲(chǔ)中。因?yàn)長(zhǎng)UN 數(shù)據(jù)全部丟失,部分虛擬桌面虛擬機(jī)丟失,但使用重構(gòu)功能后,找不到父虛擬機(jī)所以重構(gòu)失敗。
因?yàn)楫?dāng)前存儲(chǔ)有多個(gè)LUN,同時(shí)有的虛擬桌面仍然可以使用??梢詫⒁粋€(gè)能使用的虛擬桌面為基礎(chǔ),克隆出新的虛擬機(jī)用做新的父虛擬機(jī)用于桌面池。
另外,在部署克隆鏈接的虛擬桌面池時(shí),Horizon 會(huì)復(fù)制出一個(gè)名為replicaxxxx 的虛擬機(jī)為基礎(chǔ),并以此為基礎(chǔ)創(chuàng)建克隆鏈接的虛擬機(jī)。此時(shí)可以在當(dāng)前的環(huán)境中查找名為replicaxxxx 開(kāi)頭的虛擬機(jī),檢查哪一個(gè)為從XP_SP3 父虛擬機(jī)克隆后的模板虛擬機(jī)就可以。經(jīng)過(guò)檢查發(fā)現(xiàn)有4 個(gè)以replica-xxxx 開(kāi)頭的虛擬機(jī),如圖7 所示。這里面應(yīng)該有一個(gè)虛擬機(jī)是我們所需要的模板虛擬機(jī)。
圖7 查找replica 開(kāi)頭的虛擬機(jī)
通過(guò)瀏覽存儲(chǔ)對(duì)比,發(fā)現(xiàn)名為replica-5ec3b233-836e-437e-8370-8b9449c814ea 是我們需要的虛擬機(jī),如圖8 所示。
圖8 查找XP_SP3 克隆出來(lái)的基準(zhǔn)虛擬機(jī)
找到XP_SP3 的克隆虛擬機(jī)后,用鼠標(biāo)右鍵單擊該虛擬機(jī)選擇“克隆”,并設(shè)置新的虛擬機(jī)名稱為XP_SP3_New,克隆虛擬機(jī)完成后,打開(kāi)虛擬機(jī)的電源,進(jìn)入控制臺(tái)查看該虛擬機(jī)是否為所需要的虛擬機(jī),檢查無(wú)誤之后,關(guān)閉虛擬機(jī)的電源,然后為名為XP_SP3_New 的虛擬機(jī)創(chuàng)建快照,設(shè)置快照名稱為fix01。
再次編輯虛擬機(jī)桌面池,在“vCenter 設(shè)置”中,父虛擬機(jī)選擇新克隆出的名為XP_SP3_new 的虛擬機(jī),選擇快照名稱為fix01(如圖9所示),其他選擇虛擬機(jī)文件夾、主機(jī)或群集、資源池、數(shù)據(jù)存儲(chǔ)等,這些與原來(lái)的設(shè)置相同。
編輯桌面池設(shè)置之后,在“清單→桌面”中,用鼠標(biāo)右鍵選中狀態(tài)為“已部署(缺少)”的虛擬機(jī),在彈出的右鍵菜單中選擇“移除”命令,如圖10 所示。刪除出故障的虛擬桌面,虛擬桌面會(huì)重新創(chuàng)建。
圖9 vCenter 設(shè)置
圖10 移除故障的虛擬桌面虛擬機(jī)
將所有有問(wèn)題的桌面移除之后,Horizon 會(huì)重建刪除的桌面,然后重新部署虛擬桌面。最后在“狀態(tài)”中所有桌面為“可用”,桌面重建完成。
在重新配置了一些虛擬桌面之后,用戶發(fā)現(xiàn)瘦客戶端無(wú)法訪問(wèn)虛擬桌面,通過(guò)重新啟動(dòng)連接服務(wù)器虛擬機(jī)解決了這個(gè)問(wèn)題。
對(duì)于部分虛擬桌面無(wú)法使用,通過(guò)重置虛擬桌面,或重構(gòu)虛擬桌面的方法解決。
在大批量重新生成新的虛擬桌面過(guò)程中,可能個(gè)別的桌面會(huì)出現(xiàn)錯(cuò)誤。對(duì)于出現(xiàn)錯(cuò)誤的虛擬桌面,通過(guò)移除故障虛擬桌面、重新生成的方式解決即可。