李 奇,趙蔚含
(河北傳媒學院,河北 石家莊 050000)
當今隨著智能電網創建的需求量越來越大,對信息化的管控體系的實行速度提出了相對嚴格要求。若是相同時間內服務器的訪問量超過所配置的額度,就會占據更多的資源,進而影響服務器的承載能力,甚至會導致服務器崩潰等問題[1]。虛擬化技術的快速發展與采用,高效地解決此類問題。它可以把虛擬數據存放在資源庫中,使用虛擬主機替換物理主機,這樣一方面可以減少硬件的成本,另一方面還可以提升軟件的運轉速度。
在日常生活中網絡、云計算、大數據等字眼已經不再陌生,要想實現這些網絡熱詞并沒有那么簡單,虛擬化技術可以有效地解決在這些操作上所出現的問題。
虛擬化可將各種物理資源如服務器、存儲器、網絡等進行抽象化和轉換從而打破現實結構間不可切割的障礙,以便于用戶可以更好地使用和應用這些資源,且這些虛擬出來的資源不受現有的資源架構方式、地域、物理配置的限制。
虛擬化技術是現如今比較熱門的一項技術,也是云計算的核心之一,它能夠實現的功能有很多種,如:實現IT資源的彈性分配或使IT資源分配更加靈活,滿足多樣化應用需求。
虛擬化技術其實就是使用軟件的方法去重新定義以及劃分IT資源,能夠實現IT資源動態分配、靈活調度、跨域共享、提高IT資源的使用頻率,虛擬化技術就是為了能夠使IT資源能夠真正地成為社會中的基礎設施,更好地服務于各個行業及領域。
1.2.1 根據實現機制分類
(1)全虛擬化:比較原始的虛擬化技術,是指虛擬的操作系統與底層的硬件完全隔離,中間的虛擬機管理層轉化為虛擬客戶操作系統對底層硬件的調用代碼,全虛擬化不需要更改客戶端的操作系統,兼容性比較好,全虛擬化的運行速度快,但是性能方面還是稍有不足。
(2)半虛擬化:在虛擬的客戶操作系統中融入一些類似特殊的虛擬化指令,相對半虛擬化來說需要按照客戶的操作系統去做一些修改。
(3)硬件輔助虛擬化:由硬件的廠商企業提供功能的虛擬化,目的是去輔助和配合半虛擬化使用。
1.2.2 根據應用分類
虛擬化技術可以根據虛擬化的應用分為3個不同的類別:應用的虛擬化、桌面的虛擬化和系統的虛擬化。
1.2.3 服務器虛擬化概述
服務器虛擬化是指將服務器中的物理資源抽象形成邏輯資源的過程,就是讓一臺服務器變成若干個相互的虛擬的服務器,這樣就不會再受物理上的界限了(見圖1)。此時CPU、內存、磁盤、I/O設備等硬件設備就變為了一個動態的、可以進行動態管理的“資源池”,這樣大大地提高了利用率,同時也簡化了系統的管理,以便于實現服務器的整合以及改善IT對業務的變化的適應性[2]。

圖1 服務器虛擬化
當今有關“云”的說法不管是在生活中還是網絡都是熱議的話題,如:百度網盤云備份、手機云備份、iOS的iClould、阿里云、華為云等在日常生活已經不再陌生。云計算其實就是通過互聯網將一個計算機中的某一項計算的任務分發給一個或多個計算機,并且還可以配置共享計算機的資源池、軟件和一些信息技術,而且云計算是基于互聯網、按需服務、資源池化、高可用性、資源可控性的,使用起來非常方便快捷,大大提高了資源的利用率。
云計算的體系分為3個層次:IaaS,PaaS,SaaS(見圖2)。

圖2 云計算架構
1.3.1 IaaS(基礎設施即服務)
這一層的作用就是將各個底層存儲的資源作為一個服務提供給用戶使用,但是用戶不能管理和控制任何云計算的基礎設施,但完全可以去控制操作系統的選擇以及存儲空間的分配,也能夠去獲取網絡的控制。
1.3.2 PaaS(平臺即服務)
它就是一個平臺,用戶可以在這個平臺上做自己所需的研究,比如研究自己的軟件或者是產品,部署自己的應用和應用環境,不用去考慮其底層的建設設施、網絡、操作系統等。
1.3.3 SaaS(軟件即服務)
SaaS為用戶搭建了一個信息化的基礎網絡設施,包括軟硬件運行和操作的平臺,還負責前期和后期的維護和處理等一系列的服務,用戶只需要通過終端就可以去訪問,也可以通過Web的形式去訪問、使用、管理、運維。
云計算的模式有很多種,通常都是按照云計算的服務進行分類的,可以分為4種:公有的云、私有的云、混合的云、行業的云。
虛擬化計算的本質就是為云計算提供服務的,顧名思義虛擬化是為云計算服務的。虛擬化其實就是把資源進行池化統一收集,然后再劃分資源,但虛擬化技術也包括將多個資源整合形成一個虛擬的資源。云計算技術的本質就是構建大規模的系統資源庫且是分布式的,將系統的計算分布成資源池,實現數據共享計算模式和服務共享模式相結合形成結合體[3]。
虛擬化會更加注重資源隔離,而云計算就更加注重按需服務,虛擬化和云計算之間的關系沒有必然性,它們之間不是必須有聯系,但是虛擬化技術可以加快云計算的發展。
虛擬化需要使用軟件來模擬硬件并創建虛擬的計算機操作系統,這就需要虛擬機的加持才能完成。每一臺虛擬機都是功能獨立的一臺虛擬計算機。一臺計算機上可以放置多臺虛擬機,這樣就可以在一臺服務器上去運行多個操作和應用,從而提高使用的效率,市面上比較成熟的虛擬化技術有很多,如:Hyper-V虛擬化技術、Xen虛擬化技術、KVM虛擬化技術、VMware VSphere 虛擬化技術等[4]。
2.1.1 ESX的虛擬化架構
ESX是VMware的虛擬化產品,ESX的服務器基于Linux操作系統,在Linux操作系統下進行搭建底層和操作管理底層,通過Linux操作系統來加載ESX的虛擬化組件,在底層搭建的虛擬機可以管理本地實體,它所承載的虛擬機的調度就是調度硬件的資源,而虛擬機是通過VMkernel直接進行訪問的(見圖3 )。

圖3 ESX虛擬化架構
2.1.2 Hyper-V的虛擬化架構
Hyper-V的虛擬化是微軟的一款虛擬化的產品,也是微軟第一個采用開源的技術且又基于Hypervisor的一項技術,Hyper-V其實是一種系統管理程序的虛擬化技術,它能夠實現桌面虛擬化,其實Hyper-V就是基于Hypercisor的一項技術,它只是實現了CPU的調度問題及內存資源的分配問題,而且它還進行了分區,分別由子分區和父分區。
2.1.3 Xen的虛擬化架構
Citrix公司有三大最主要的產品:服務器虛擬化 XenServer、應用虛擬化XenAPP和XenDesktop桌面虛擬化。
Xen虛擬化技術是一個能夠直接運行在計算機硬件之上替代操作系統的軟件層。Xen虛擬化技術是支持多種類的處理器,這就是Xen可以在很多計算上運行的原因(見圖4)。

圖4 Xen 虛擬化架構
2.1.4 KVM的虛擬化架構
KVM一般是在Linux的基礎之下,KVM虛擬化技術連同Xen虛擬化技術一樣都是開源的,KVM虛擬化技術主要基于內核虛擬機,KVM虛擬化技術的本身也同樣是支持多種而且廣泛的虛擬化的CPU架構的(見圖5)。

圖5 KVM 虛擬化架構
KVM虛擬化技術充分利用了CPU硬件輔助虛擬化的功能,并且重復使用了Linux內核的許多功能,這樣就使KVM的本身非常小,運行的速度快,KVM的物理設備也可以支持Linux的物理設備,使用起來非常方便。
VMware VSphere是目前行業內的佼佼者,也是最可靠的虛擬化平臺,在工作、日常生活、學習中都廣泛被利用和應用。VSphere是VMware所推出來的基于云計算的新一代數據中心的虛擬化產物(見圖6)。

圖6 VSphere 架構
VMware VSphere是一個可靠的虛擬化平臺,它能夠使每一種應用程序的工作所承載的工作量去履行高一級別的應用程序服務的協議。
VMware VSphere虛擬化技術也有自己的平臺架構,從自身系統的架構來看,它可以分為幾個不同的層次,分別為:虛擬化層、管理層、接口層。通過這樣的分層能夠更加有效地去利用所需要的虛擬化資源,這樣使用起來可以靈活可靠[5]。
ESXi是vSphere非常重要的一部分,負責把計算機的物理資源轉化為邏輯資源,從而高效率地利用計算機資源,VMware ESXi的作用有很多,其有7個重要的功能:生成鏡像、面向用戶的無狀態防火墻、SNMP增強的支持、系統安全日志、自動部署、擴展增強ESXi框架、新一代虛擬機的硬件。
XenServer 服務器虛擬化系統是通過更快的應用交付、更高的IT資源可用性和資源的利用率,讓數據中心能夠變得更加靈活且具有高效性。
XenServer其實也是一個虛擬化的平臺,不同于VMware vSphere 的另外一種服務器虛擬化平臺,它是一個功能性及其強大且豐富的平臺。它具備著卓越的開放性架構、性能、存儲,而且XenServer 服務器虛擬化平臺為眾多的企業提供虛擬化平臺。
XenServer也可以理解為是位于操作系統及硬件之間的服務平臺,為操作系統和硬件之間牽線,負責為其上層運行的操作系統內核提供虛擬化的硬件的資源,XenServer負責管理和分配這些資源,確保上層虛擬機之間互不干擾。
KVM虛擬化技術目前被人們廣泛使用[6]。KVM是基于內核的虛擬機,KVM運行多種無需修改的Windows和Linux的虛擬機操作系統,KVM能夠支持監控程序:
(1)系統資源過度分配的功能——資源超分。
(2)配置極為精簡,允許靈活分配和優化磁盤的空間——精簡配置。
(3)能夠允許共享相同的高頻率使用的數據或者是內存——共享內存。
(4)管理虛擬化的節點——集中管理。
(5)防止虛擬機過度地使用共享的資源——磁盤性能保護。
(6)自動化NUMA性能平衡,把現在所執行的任務移到和所需要的內存更加接近的地方——性能平衡。
(7)能夠根據虛擬機的需要增加處理的能力以便于滿足工作量的需求——虛擬CPU熱添加。
libvirt目前是市面上最為常見的可以對KVM虛擬機進行管理的工具以及API。libvirt程序包是一個與虛擬機監控程序相獨立的虛擬化應用程序接口,其能夠與操作系統的一系列虛擬化性能進行交互。其能夠提供穩定的通用層從而管理主機上的虛擬機,提供管理本地系統和互聯網主機的通用接口,在虛擬機監控程序支持的情況下部署、創建、修改、監督、控制、遷移。
virsh是基于libvirt API創建的,可以用作創建虛擬化的任務從而管理腳本,沒有權限的用戶只能運行只讀模式,只有具備權限的用戶才可以使用所有的管理功能。
虛擬機需要從KVM的存儲器中去提取空間,然后再與虛擬機相連接。KVM虛擬化技術的存儲技術有:本地儲存池、網絡儲存池、存儲卷、仿真存儲設備、鏡像文件(見圖7)。

圖7 KVM 架構
現在全球的云計算都在迅速的發展,許多互聯網公司不管是國內還是國外的都在選用云服務。到目前為止,在全球排名前50萬的網站中,已經有大約2%采用了公有云服務商提供的服務了。而80%的網站采用的是亞馬遜的云服務還有Rackspace提供的云服務。現如今大型的云服務提供商已經明顯主導市場,在國外新生出來的互聯網公司大多數都是用的云服務,可見云服務的發展是非常快速的。
現如今的云計算可以帶動人工智能、物聯網、區塊鏈等等相關的技術,而且還占有一定的優勢,但是有的公司的云計算價格非常的貴,有的價格就相對便宜,可以說價格和服務已經成為各個公司、網站競爭的重要手段了。
在技術層面,虛擬化技術正在面臨著平臺的開放化、鏈接協議的標準化、客戶端的硬件化,及公有云、私有云這四大發展的趨勢。
在硬件層面,需要看市場的競爭力、提供的解決方案等等。
如今虛擬化技術已經在飛速發展,如何把市場的需求得到完美的詮釋和解決已經成為企業資源管理的重中之重了。
本文圍繞虛擬化與云計算技術的實際操作,云計算概念的提出和服務器虛擬化技術的發展,討論了云計算的實現需要服務器虛擬化的技術支持,相信服務器虛擬化技術在云計算的推動下會得到很好的發展,隨著云計算的實現和推廣,服務器虛擬化技術將得到進一步的發展。