劉源+蔣建峰

摘要:本文闡述了虛擬云桌面研究的必要性,詳細介紹了最新的云桌面傳輸協議SPICE,并將它與VNC和RDP協議進行了比較,基于SPICE協議本文提出了一套解決方案,并在實驗環境中對解決方案進行了驗證,最后對SPICE協議的未來進行了展望。
關鍵字:云桌面;KVM;SPICE
中圖分類號: TP311.5 文獻標識碼:A 文章編號:1672-3791(2016)10(c)-0000-00
1 引言
隨著2015年國家“互聯網+”行動計劃的逐步實施,移動互聯網、云計算和大數據等新技術的不斷推進,很多傳統的信息框架和觀念被淘汰或更新,國家信息化和現代化的發展日新月異。但是長期以來一些信息化基礎設施的建設卻比較落后,尤其是傳統桌面終端的管理存在安全性差,設備不穩定,維護成本較高等問題,這些問題不僅限制了人們的使用,也阻礙了信息化的發展。而以RDP、VNC和SPICE等技術為基礎的虛擬云桌面的發展將操作系統和應用數據集中于數據中心統一管理,這種系統運行方式的變革提升了數據的安全和用戶的體驗,有效的解決了傳統構架帶來的復雜管理和高耗能等問題,是未來桌面終端應用發展的趨勢。
2 SPICE
2.1 協議簡介
SPICE(Simple Protocol for independent Computing Environment,獨立計算環境的簡單協議)是基于虛擬云桌面的一種虛擬化框架,也是一個桌面服務展示協議,與RDP(Remote Desktop Protocol,遠程桌面協議)和VNC(Virtual Network Console,虛擬網絡控制臺)類似。通過SPICE我們可以像使用本地計算機一樣訪問遠程PC,這樣可以將需要進行高強度和長時間計算的工作移交給數據中心服務器,有效的提高運行效率,降低企業開支,用戶身邊只要有可以上網的設備就可以方便的與遠程虛擬桌面進行交互,并且整個方案是開源構架的。
2.2 協議組件
作為REDHAT公司重要的虛擬化桌面組件之一,SPICE具有很強的自適應能力,能夠讓用戶獲得與真實PC相同的體驗,它主要包含以下3個組件:
SPICE Driver(SPICE驅動器):每個虛擬桌面都具備的基礎組件。
SPICE Device(SPICE設備):REDHAT企業虛擬化Hypervisor設備內存在的組件。
SPICE Client(SPICE客戶端):終端組件,終端可以是個人電腦、平板電腦、瘦客戶端甚至是ipad等設備,用于接入虛擬桌面。
這三個組件相互協作運行,以既能提高用戶體驗又能降低系統資源消耗的方式提供最優質的虛擬桌面效果。如果客戶端足夠強大,SPICE可以向客戶端發送圖形命令,并在客戶端對圖形進行處理,這將顯著減輕服務器的資源消耗。如果客戶機不夠強大,SPICE在服務器端處理圖形,從CPU的角度來說,圖形處理并不需要消耗很多資源。
2.3 協議優勢
目前虛擬云桌面協議主要有RDP、VNC與SPICE,通過對三者間的對比我們可以發現,SPICE相比其他兩種協議在許多參數都占有較大的優勢,對比表格如下所示: 3 基于SPICE的虛擬云桌面解決方案
針對SPICE的技術特點和實際虛擬云桌面的使用需求,我們組建了一種綜合虛擬云桌面解決方案,在具體實驗環境中由于設備的限制,方案設計采用兩次虛擬化的方式實現部署。
3.1 總體規劃
考慮到方案的穩定性與可靠性,數據中心的服務器集群通過KVM(Kernel-based Virtual Machine,基于Kernel的虛擬機)進行虛擬化,并部署HA(High Available,高可用性)保證高可用性,在服務端和客戶端之間還應該部署LB(load balance,負載均衡)設備保證高并發環境下系統的穩定,解決方案如下圖1所示:
3.2 方案具體實施過程
為了驗證虛擬云桌面方案的可行性,我們可以搭建一個實驗環境進行測試,實驗環境至少需要一臺主機,并在實驗之前需要將設備主板BIOS中的硬件虛擬化功能打開,同時我們還需要可以支持兩次虛擬化的軟件,所以綜上所述我們實驗環境至少需要一臺CPU性能至少為INTEL I5,內存性能至少為8G的PC,虛擬化軟件選擇VMWare Workstation12。
實驗環境要能反正解決方案中的結果需要經過以下幾個步驟:
1) 在確保PC的VMware軟件正確安裝后,打開軟件的虛擬化選項,這是二次虛擬化非常重要的一步。由于我們的實驗環境是在虛擬化軟件內安裝CENTOS操作系統,并在操作系統內再安裝一個KVM虛擬化軟件,所以這需要我們的第一個虛擬化軟件支持兩次虛擬化功能。在VMware的虛擬機設置中找到虛擬化Intel VT-x/EPT或AMD-V/RVI選項并勾選。
2) 檢查內核,安裝KVM和支持的API,最后驗證KVM模塊。通過這幾個步驟我們可以校驗KVM是否順利的安裝到了CENTOS系統中,主要執行的代碼有以下5條:
3) 在CENTOS操作系統的圖形化界面中使用virt-manager在KVM中創建一個新的WINXP操作系統。這個創建過程和在VMware中創建CENTOS操作系統相似,在此就不詳細介紹。
4) 對KVM創建好的WINXP操作系統進行設置。主要更改的選項有Display中的Type下拉菜單選擇SPICE協議,在Graphics中勾選Listen on all public network interfaces,端口號設置為5900,最后在Video中Model下拉菜單選擇qxl。
5) 在CENTOS操作系統中創建一個新的名為bridge的網卡,網卡參數與默認的eth0相類似,在最后添加TYPE=“Bridge”即可,最后使用命令service network restart重新啟動CENTOS的網絡連接。
6) 在安裝了SPICE客戶端的PC中通過端口5900,遠程上WINXP操作系統。
完成試驗后可以通過一系列的系統性能測試軟件對虛擬云桌面的系統性能進行測試,這里就不做詳細介紹,從測試結果可以發現,這種遠程的連接性能與使用本地PC的性能相差無幾,可以說做到了真正的云端資源本地化。
4 SPICE的未來
相信隨著虛擬化技術的不斷創新與完善,基于SPICE的虛擬云桌面技術將越來越好。未來我們可以直接借助對DirectX和API的操作實現一個虛擬視頻卡,加快CAD應用和多媒體應用,加快游戲畫面的切換并減少閃爍,3D加速性能也將得到很大的提高,在系統兼容性方面將不僅兼容傳統的PC與筆記本電腦,還將兼容智能手機及ipad等平板設備,實現真正的隨時隨地使用云桌面。
參考文獻:
[1]朱愛軍 云桌面技術在學院公共機房改造中的應用[J].信息通信,2016(3)
[2]周建美,赫榮康 基于云桌面的計算機實訓室設計與實現[J].信息與電腦,2015(14)
[3]任風君,鄭禮河,曾文玄 桌面虛擬化在高校信息化建設中的研究和實踐[J].福建醫科大學學報(社會科學版),2016(17)