1.虚拟化的历史和定义
Putting it bluntly, virtualization is deception.
(坦白說,虛擬化就是欺騙)
1.虛擬技術(shù)帶來的好處與問題
隨著21世紀(jì),信息時代的步伐加快,一些基礎(chǔ)設(shè)施遭到了虛擬機(jī)服務(wù)器、虛擬網(wǎng)絡(luò)、虛擬存儲、虛擬設(shè)備和其他的“虛擬技術(shù)”的逆襲,從而帶來不少好處同時也面臨了一些新的問題需要我們來思考。
1.1虛擬技術(shù)的不斷深入帶來的好處:
- 降低成本,提高資產(chǎn)利用率;
- 更穩(wěn)定和更高的可用性;
- 簡化操作流程
1.2 可能帶來的問題:
- 所有的這些技術(shù)是否真的能帶來這么多好處?
- 什么是虛擬設(shè)備?它近乎是一個設(shè)備嗎?會實現(xiàn)的更好嗎?
- 所有的虛擬化技術(shù)是否都一樣?
2.數(shù)據(jù)中心的基本定義
2.1數(shù)據(jù)中心的定義
數(shù)據(jù)中心:它是一個特殊設(shè)施,他被設(shè)想用來為一個或多個組織安置、管理和支持那些被認(rèn)為至關(guān)重要的計算機(jī)資源。
典型數(shù)據(jù)中心包含:
特殊建筑結(jié)構(gòu)、電源備份結(jié)構(gòu)、冷卻系統(tǒng)、專用室(例如:入口和電信接入)、設(shè)備機(jī)柜、結(jié)構(gòu)化布線、網(wǎng)絡(luò)設(shè)備、存儲系統(tǒng)、服務(wù)器、主機(jī)、應(yīng)用軟件、物理安全系統(tǒng)、監(jiān)控中心,以及許多其他支持系統(tǒng)。所有的這些資源極其相互關(guān)系均為專門人員(本地或遠(yuǎn)程)管理。
如下圖所示:描繪的是一個單一的數(shù)據(jù)中心機(jī)房情況,而現(xiàn)實中模塊數(shù)據(jù)中心可能包括多個類似的跨越不通樓層或建筑的機(jī)房環(huán)境。
需要注意的是:數(shù)據(jù)中心目前已經(jīng)成為各大公司以及技術(shù)人員的關(guān)注焦點,因為現(xiàn)在普遍公司實現(xiàn)利潤增長,業(yè)務(wù)對IT的依賴越來越密不可分,對公司而言所有的數(shù)據(jù)中心組件協(xié)調(diào)工作,以保障以下商業(yè)應(yīng)用具備足夠的服務(wù)等級協(xié)議(Service-Level Agreement,SLA)
- 商業(yè)智能(Business Intelligence,BI)例如:常常談到的大數(shù)據(jù)技術(shù)
- 客戶關(guān)系管理(Customer Relationship Management,CRM)
- 數(shù)據(jù)倉庫(Data Warehouse,DW)
- 電子商務(wù)
- 企業(yè)資源規(guī)劃(Enterprise Resource Planning,ERP)
- 供應(yīng)鏈管理(Supply Chain Management,SCM)
- 其他諸多系統(tǒng)
2.2 數(shù)據(jù)中心的演進(jìn)
2.2.1 DC1.0階段(20世紀(jì)50年代~20世紀(jì)80年代)
可視為一份“藝術(shù)許可協(xié)議”,因為這些設(shè)施被簡單的成為計算機(jī)室。通常有IBM設(shè)計體型龐大,基于龐大的軟件體系機(jī)構(gòu),這些集中的系統(tǒng)需要更加嚴(yán)密的控制,才能獲得較高的資源利用率。
2.2.2 DC2.0階段(20世紀(jì)80年代到21世紀(jì)初)
主要由于“客戶端—服務(wù)器”應(yīng)用模型的普及,個人PC的興起,應(yīng)用環(huán)境開始從大型機(jī)向更小的“服務(wù)器”平臺遷移,并且通過安裝在PC機(jī)上的客戶端應(yīng)用程序來實現(xiàn)訪問。
就性能預(yù)測和軟件模塊化而言,C/S模型被納入到了應(yīng)用協(xié)議層之中,每一層都部署了專用的服務(wù)器來執(zhí)行特定的功能。典型的分層應(yīng)用架構(gòu)的例子:
三層模型:呈現(xiàn)(WEB頁面)、應(yīng)用(APP或業(yè)務(wù)邏輯)、數(shù)據(jù)庫服務(wù)器(DB)
2.2.3 DC3.0 階段(21世紀(jì)初到至今)
DC2.0的突出問題:
數(shù)據(jù)中心的空間和功耗不斷趨于飽和,而擴(kuò)容和部署新的設(shè)施昂貴。(說白了,也就是資源利用率低到尷尬,而且管理不便)
虛擬化技術(shù)項目的應(yīng)用是來解決DC2.0時代產(chǎn)生的的問題
虛擬化項目的目標(biāo):
- 統(tǒng)一的架構(gòu)下環(huán)境隔離
- 離散資源聚集形成共享池
- 操作程序簡單化,最好使用自動化技術(shù)
2.3 作業(yè)區(qū)以及數(shù)據(jù)中心架構(gòu)
2.3.1 數(shù)據(jù)中心組織
?
?上圖中是數(shù)據(jù)中心組織結(jié)構(gòu)關(guān)系,但實際上他們不是相互獨立的,而是相互依存的關(guān)系。
例如:
- 每機(jī)架的服務(wù)器數(shù)量取決于電源動力分配設(shè)計;
- 網(wǎng)絡(luò)設(shè)計必須依據(jù)每個機(jī)架安裝多少服務(wù)器以及提供多少個接口;
- 數(shù)據(jù)中心網(wǎng)絡(luò)設(shè)備的物理位置會影響結(jié)構(gòu)布線設(shè)計;
- 線纜可以布在活動地板下(EOR布線);
- 活動地板會對冷卻系統(tǒng)產(chǎn)生直接影響,而冷卻系統(tǒng)通常是消耗電力最高的;
注意:在數(shù)據(jù)中心“萬物互聯(lián)”的環(huán)境中,一個團(tuán)隊的單獨決定可能會損害整個設(shè)施。因為在整合數(shù)據(jù)中心的演變過程中,強(qiáng)烈推薦站到端到端的角度去考慮,也就是從整體出發(fā),弄清之間的關(guān)聯(lián)性。
2.3.2 不同技術(shù)的生命周期
數(shù)據(jù)中心架構(gòu)是這樣一套指令,由它驅(qū)動著所有數(shù)據(jù)中心的設(shè)計。
如果一個數(shù)據(jù)中心是一座城市的話,數(shù)據(jù)中心的架構(gòu)師就相當(dāng)于城市規(guī)劃師,按照附近的街道容量(網(wǎng)絡(luò))以及公共停車位的數(shù)量(存儲)來統(tǒng)籌部署建筑(服務(wù)器)。同樣的專業(yè)人員還必須處理“社區(qū)”之間的差異性,就像大型機(jī)和低端機(jī)服務(wù)器一樣。
- 建筑:10年~15年
- 布線:7~10年
- 網(wǎng)絡(luò):3~5年
- 存儲:1~2年
- 服務(wù)器:6~18個月
?3.數(shù)據(jù)中心虛擬化的起源
3.1 虛擬內(nèi)存
3.1.1 存儲的定義
存儲:在若干時間間隔內(nèi)來保留計算所使用數(shù)據(jù)的能力。
計算機(jī)至少部署兩個級別的存儲:
- 主存儲器(或主內(nèi)存):可以直接由CPU進(jìn)行訪問,通常是易失性的。(掉電數(shù)據(jù)容易丟失)
- 二級存儲器(或輔助內(nèi)存):它要求一個額外的系統(tǒng)來傳輸數(shù)據(jù)到主存儲器中,通過使非易失性的。(掉電數(shù)據(jù)不丟失容易保存)
注意:根據(jù)定義,二級存儲器會空間會更大,更加便宜,但是比主存儲器慢。
3.1.2 虛內(nèi)存出現(xiàn)的背景
在20世紀(jì)50年代,主內(nèi)存通過磁核直接部署,而輔助內(nèi)存則是基于磁鼓旋轉(zhuǎn)方式實現(xiàn)。那時的程序員在編寫代碼時,需要努力使它不會超過主內(nèi)存大小。有時候,他們不得不使用一個特定的策略將數(shù)據(jù)轉(zhuǎn)移到輔助內(nèi)存中,從而釋放主內(nèi)存空間以滿足程序中更多的數(shù)據(jù)的處理。
3.1.3 虛擬內(nèi)存的產(chǎn)生
1959年,曼徹斯特大學(xué)的阿特拉斯團(tuán)隊發(fā)明了一種自動機(jī)制,解決了程序員對上述存儲分配的煩惱。
虛擬內(nèi)存定義:使用輔助內(nèi)存作為主內(nèi)存的擴(kuò)展。
注意:使用虛擬內(nèi)存,計算機(jī)的CPU可以直接訪問內(nèi)存的一個地址,無需知道它位于主內(nèi)存或者輔助內(nèi)存。
?
?虛擬化操作過程:
- (1)將虛擬內(nèi)存地址轉(zhuǎn)化為主內(nèi)存或輔助內(nèi)存的位置;
- (2)在這兩個存儲設(shè)備之間轉(zhuǎn)換數(shù)據(jù);
- (3)選擇哪些數(shù)據(jù)將被合理放置在更快的主內(nèi)存中;
總結(jié):采用這種做法,一個仿真的內(nèi)存呈現(xiàn)給了CPU,這樣帶來了內(nèi)存擴(kuò)展的優(yōu)勢并且增強(qiáng)了程序代碼的復(fù)用性。
應(yīng)用:虛擬內(nèi)存是最新計算機(jī)操作系統(tǒng)(如:Windows和Linux)的一個重要組成部分。常用的虛擬內(nèi)存方法被稱為分頁,這項技術(shù)中,被稱為頁面的同類數(shù)據(jù)塊就是從輔助內(nèi)存中重新獲得的,實現(xiàn)了非連續(xù)數(shù)據(jù)存儲。虛擬內(nèi)存原理同樣適用于“高速緩沖存儲器”的創(chuàng)建。
3.2 大型機(jī)虛擬化
3.2.1 大型機(jī)虛擬化
1972年,與新一代的處理器(System/370)一起,IBM官方同時發(fā)布了大型機(jī)虛擬化的解決方案。
上圖所示,VM/370操作系統(tǒng)包含一個叫做控制程序(Control Program, CP)的軟件組件,也可稱為超級監(jiān)督者(hypervisor)。
該程序作用:虛擬機(jī)創(chuàng)建、資源共享、設(shè)備管理、虛擬存儲管理和其他的操作系統(tǒng)任務(wù)。每個大型機(jī)用戶可以通過與會話監(jiān)控系統(tǒng)(Conversational Monitor System,CMS)交互,來實現(xiàn)自己物理處理器的仿真。
影響:對于IBM而言,當(dāng)時每個新處理器發(fā)布是,客戶總會面臨操作系統(tǒng)遷移問題,而虛擬機(jī)為此遷移提供了一個解決方案。筆記使用這種虛擬化,一臺獨立的大型機(jī)可以同時安裝不通版本的操作系統(tǒng)(包括另一個CP實例)
3.2.2 分時共享機(jī)制
技術(shù)背景:將昂貴的大型機(jī)資源分配給不同用戶。
技術(shù)原理:通過將掛起當(dāng)前用戶的作業(yè),并在內(nèi)存中保存其用戶狀態(tài),然后加載另一個用戶狀態(tài),為每個用戶提供一個平等的大型機(jī)資源的時間片。
技術(shù)解析:分時共享機(jī)制可以認(rèn)為是一個“陳舊的”虛擬化技術(shù),因為每個用戶均會錯誤的認(rèn)為它完全控制另外的計算機(jī)。然而與虛擬機(jī)截然不同的是,所有用戶共享相同的操作系統(tǒng),不存在不平等的、不適當(dāng)?shù)馁Y源分配情況,也不會處于相同的故障域之中。
注意:這兩個概念對于當(dāng)前計算機(jī)系統(tǒng)界非常重要。如今,分時共享已經(jīng)是多任務(wù)操作系統(tǒng)的基石,虛擬機(jī)則是數(shù)據(jù)中心3.0階段的旗艦技術(shù)。
3.3 熱備份路由協(xié)議
3.3.1 技術(shù)背景
TCP/IP網(wǎng)絡(luò)架構(gòu)中,一臺主機(jī)通常使用一個路由器接口作為默認(rèn)網(wǎng)關(guān)來將數(shù)據(jù)包轉(zhuǎn)發(fā)到另外一個IP子網(wǎng)。盡管在一個局域網(wǎng)(Local-Area Network,LAN)中可以部署多臺路由器,然而絕大多數(shù)的TCP/IP協(xié)議棧只允許為每個主機(jī)定義一個默認(rèn)網(wǎng)關(guān)。
3.3.2 暴露的問題
在TCP/IP體系下存在與生俱來的一個單點故障,當(dāng)含有主機(jī)所定義網(wǎng)關(guān)IP地址的那臺路由器產(chǎn)生故障時,到不同網(wǎng)段間的流量將會中斷。
3.3.3 解決的辦法
思科公司在1998年創(chuàng)建一個稱謂熱備份路由器協(xié)議(Hot Standby Router Protocol,HSRP)解決方案。與之類似的有VRRP(公有標(biāo)準(zhǔn))、GLBP(Cisco私有)。
- 兩臺路由器發(fā)送HSRP Hello消息來協(xié)商參數(shù)狀態(tài),如:所配置虛擬IP地址、HSRP組以及優(yōu)先級;
- 通過這些報文,在HSRP熱備份組中選舉主備路由器,主路由器為本地主機(jī)提供數(shù)據(jù)轉(zhuǎn)發(fā),備份路由器提供備份,模擬的虛擬IP地址充當(dāng)主機(jī)的網(wǎng)關(guān)接口(和派生的虛擬MAC地址),具備更高優(yōu)先級的接口總是當(dāng)選為活動接口;
- 如果活動接口故障,其他HSRP路由器會感知到,于是備份路由器就會模擬相同的虛擬IP。如果WAN口失效,路由器也可以減低活動接口的優(yōu)先級。(這個就是HSRP與Track或者BFD聯(lián)動)
?
?
3. 4 定義虛擬化
通過虛擬內(nèi)存、大型機(jī)虛擬化以及HSRP,可以看到以下相似之處。
- 仿真:在所有例子中,均各自仿真了先前存在的資源(主內(nèi)存,大型機(jī)以及默認(rèn)網(wǎng)關(guān)的IP地址)
- 透明:毫無疑問,IT資源的消費者(CPU,大型機(jī)用戶,TCP/IP主機(jī))均無法區(qū)分是仿真資源還是物理實體
- 好處:與IT物理資源(內(nèi)存擴(kuò)展、資源優(yōu)化和高可用性)相比,這些例子均有各自的優(yōu)勢(好處)。
虛擬化定義:虛擬化是IT資源的透明仿真,為其消費者帶來物理形態(tài)中無法獲得的好處。
虛擬機(jī)可以提供兩種不同風(fēng)格的仿真:
- 模擬:假裝擁有沒寫不存在的特征行為。
- 偽裝:利用別人的知識,掩飾其真實屬性的行為。
注意:從單一地址的變化到一個全新的邏輯結(jié)構(gòu)的建造,透明在這些技術(shù)中有很大差異。同樣,受益的范圍也是非常多樣化的,有時候甚至包括原先并沒有計劃的附帶優(yōu)勢。
4. 虛擬化技術(shù)的分類
借用生物學(xué)分類法:域(Domain)、界(Kingdom)、門(Phylum)、綱(Class)、目(Order)、科(Family)、屬(Genus)、種(Species)。
每個虛擬化“物種”將會按照以下特征進(jìn)行分類:
- 仿真
- 類型和子類型
- 可擴(kuò)展性
- 技術(shù)領(lǐng)域和子領(lǐng)域
- 優(yōu)勢
仿真的含義:通過仿真,IT資源將通過虛擬化而生成;優(yōu)勢:虛擬化帶來的好處。
4.1 虛擬化的分類
盡管與生物圈相比虛擬化技術(shù)在種類變化上遠(yuǎn)遠(yuǎn)不及,但我們的分類系統(tǒng)也可以從層次化分類中受益,在虛擬化技術(shù)中,第一層將被簡單的稱為分類和將涉及的物理組件數(shù)量和邏輯組件數(shù)量之間的比例。
4.1.1 池化虛擬化技術(shù)
在池化虛擬技術(shù)中,幾個物理組件會同事工作從而建立一個單獨的邏輯實體,這些邏輯實體與原來的實體分享其特征。
上圖中,動物世界中,類比于一群大雁的“V”字隊形,它們符合空氣動力學(xué)“V”型,利用這種隊列增加了效率和單個個體的范圍(巧合的是,字母“V”也存在與大多的虛擬化技術(shù)的命名之中)
池化技術(shù)分類:
- 同構(gòu):資源池中的所有組件都是由相似的組件所組成。
- 異構(gòu):資源池中不同的物理組件所組成,并可以部署某些層次結(jié)構(gòu)。(這種情況下,虛擬實體必須具有相似性,至少物理資源池中要有一個類似的硬件)
例子:虛擬內(nèi)存可歸為采用異構(gòu)子類型所實現(xiàn)的池化技術(shù)(因為虛擬內(nèi)存是由2個不通存儲設(shè)備所組成,他們是主內(nèi)存和輔助內(nèi)存)
4.1.2 抽象虛擬化技術(shù)
在抽象虛擬化技術(shù)中,為了創(chuàng)建一個邏輯實體,仿真不會增加或減少物理組件的數(shù)量。一個物理資源創(chuàng)建一個單獨的虛擬組件來提供不同的特征,以實現(xiàn)設(shè)備或者用戶交互。
上圖中的Caligomennon(貓頭鷹蝶)所使用的模仿為例:說明了這些技術(shù),而這些技術(shù)也被用于防御其獵食者的一種機(jī)制。
抽象技術(shù)分類:
- 地址重映射:當(dāng)只改變地址或標(biāo)識符時,邏輯設(shè)備共享物理實體的屬性。
- 結(jié)構(gòu)化:是指一個不共享設(shè)備格式的虛擬組件部署其虛擬化。例如:兩個路由器可以通過一個隧道,創(chuàng)建一條虛擬背靠背連接。
例子:按照這種分類法,HSRP使用了地址重映射子類的方式,部署一個抽象的虛擬化。
注意:盡管多個路由器接口可以作為同一HSRP組的一部分,但常見的情況是,一個組內(nèi)只能有一個活動的IP。然而以這種分類法,可認(rèn)為GLBP(多個網(wǎng)關(guān)之間部署負(fù)載平衡)是一種池化虛擬技術(shù)。
4.1.3 分區(qū)虛擬化技術(shù)
分區(qū)虛擬化特點是采用獨立的邏輯分區(qū)來模擬物理資源的特點。盡管有點粗略,圖中的蝸蟲從原始標(biāo)本中創(chuàng)造了完美的生命副本,其演示了動物界中的鏡像行為。
分區(qū)技術(shù)分類:
- 資源分配型:可以為每一個虛擬分區(qū)預(yù)留物理資源的資產(chǎn)。
- 沒有資源分配型:對與每個創(chuàng)建的分區(qū),沒有資源控制部署。
例子:大型機(jī)的虛擬化,IBM虛擬機(jī)毫無疑問屬于分區(qū)虛擬化技術(shù)中的資源分配型。
4.2 虛擬化的擴(kuò)展性
與虛擬化技術(shù)相關(guān)的一大風(fēng)險是:仿真可以被盲目接受。
為了避免災(zāi)難性的情況,強(qiáng)烈建議讀者清楚地了解每個虛擬化技術(shù)的可擴(kuò)展性。如:
- 可以池化在一起的設(shè)備的最大數(shù)量;
- 每個設(shè)備的地址重映射的最大數(shù)量;
- 分區(qū)的最大數(shù)量;
4.3 技術(shù)領(lǐng)域
在過去的30年里,數(shù)據(jù)中心的基礎(chǔ)設(shè)施解決方案附屬于3個基本的領(lǐng)域:服務(wù)器、存儲和網(wǎng)絡(luò)。
“定位”一個虛擬化技術(shù)到這3個領(lǐng)域中的其一,會進(jìn)一步指定可能與它們有直接交互的運營團(tuán)隊。
將分類系統(tǒng)更進(jìn)一步,將每個技術(shù)領(lǐng)域內(nèi)進(jìn)行分區(qū)定義。子分區(qū)會準(zhǔn)確的指明在單一技術(shù)領(lǐng)域最常用的組件中“哪里”正在被執(zhí)行虛擬化。
例如下圖所示:
?
(1)存儲虛擬化可以在一下位置被執(zhí)行:
- 存儲設(shè)備:代表數(shù)據(jù)存放的位置;
- 主機(jī):代表了能有效檢索和保存數(shù)據(jù)的計算機(jī)系統(tǒng);
- 互連:包括主機(jī)和存儲設(shè)備之間的網(wǎng)絡(luò)媒介。
(2)服務(wù)器虛擬化:
- 硬件:不依賴于所安裝的任何操作系統(tǒng)提供虛擬化;
- 操作系統(tǒng):軟件層直接控制服務(wù)器硬件,并因此提供虛擬化特性
- 應(yīng)用:虛擬化是通過運行在服務(wù)器操作系統(tǒng)之上的一個標(biāo)準(zhǔn)應(yīng)用來執(zhí)行。
(3)網(wǎng)絡(luò)虛擬化:
網(wǎng)絡(luò)虛擬化技術(shù)也可分布于網(wǎng)絡(luò)平面之中,它代表著網(wǎng)絡(luò)設(shè)備中的不同功能組件。
- 數(shù)據(jù)平面:處理穿越兩個或者兩個以上網(wǎng)絡(luò)接口的流量(穿越數(shù)據(jù)包)。負(fù)責(zé)大部分流入這些設(shè)備的數(shù)據(jù)。
- 控制平面:處理直接送往網(wǎng)絡(luò)設(shè)備本身和起源于其他設(shè)備的流量。例如:來自路由協(xié)議的控制數(shù)據(jù)包,控制數(shù)據(jù)平面的行為。
- 管理平面:運行組件用于設(shè)備管理,如命令行界面(command-line interface,CLI)、簡單網(wǎng)絡(luò)管理協(xié)議(Simple Network Management Protocol,SNMP)。這個平面通常會與第三方軟件交互,可以修改控制平面和數(shù)據(jù)平面的行為。
?4.4 分類的例子
下面為用它來對“數(shù)據(jù)中心虛擬化起源”中所描述的技術(shù)進(jìn)行分組
中文翻譯:
顯然,這個分類系統(tǒng)并不是對虛擬化技術(shù)進(jìn)行分類的唯一途徑。其目的在于對于一個技術(shù)分析之前,提供一個快速可視化呈現(xiàn)方式。
轉(zhuǎn)載于:https://www.cnblogs.com/fulong20181055/p/10130681.html
總結(jié)
以上是生活随笔為你收集整理的1.虚拟化的历史和定义的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 项目实战---模拟亿邦动力网
- 下一篇: CentOS7下的Django2集成部署