云計算虛擬化技術 虛擬化與云計算的關系
虛擬化[1] 實現(xiàn)了IT資源的邏輯抽象和統(tǒng)一表示,在大規(guī)模數(shù)據(jù)中心管理和解決方案交付方面發(fā)揮著巨大的作用,是支撐云計算偉大構想的最重要的技術基石。本書以在數(shù)據(jù)中心采用服務器虛擬化技術構建云計算平臺為主題,全面地勾畫出虛擬化與云計算的產(chǎn)生背景、發(fā)展現(xiàn)狀和關鍵技術等。本書體系完整,內容豐富,有助于廣大讀者理解信息產(chǎn)業(yè)今后發(fā)展的大脈絡。
云計算(cloud computing)是基于互聯(lián)網(wǎng)的相關服務的增加、使用和交付模式,通常涉及通過互聯(lián)網(wǎng)來提供動態(tài)易擴展且經(jīng)常是虛擬化的資源。云是網(wǎng)絡、互聯(lián)網(wǎng)的一種比喻說法。過去在圖中往往用云來表示電信網(wǎng),后來也用來表示互聯(lián)網(wǎng)和底層基礎設施的抽象。因此,云計算甚至可以讓你體驗每秒10萬億次的運算能力,擁有這么強大的計算能力可以模擬核爆炸、預測氣候變化和市場發(fā)展趨勢。用戶通過電腦、筆記本、手機等方式接入數(shù)據(jù)中心,按自己的需求進行運算。對云計算的定義有多種說法。對于到底什么是云計算,至少可以找到100種解釋?,F(xiàn)階段廣為接受的是美國國家標準與技術研究院(NIST)定義:云計算是一種按使用量付費的模式,這種模式提供可用的、便捷的、按需的網(wǎng)絡訪問,進入可配置的計算資源共享池(資源包括網(wǎng)絡,服務器,存儲,應用軟件,服務),這些資源能夠被快速提供,只需投入很少的管理工作,或與服務供應商進行很少的交互。
虛擬化虛擬化是一個廣義的術語,是指計算元件在虛擬的基礎上而不是真實的基礎上運行,是一個為了簡化管理,優(yōu)化資源的解決方案。如同現(xiàn)在空曠、通透的寫字樓,整個樓層幾乎看不到墻壁,用戶可以用同樣的成本構建出更加自主適用的辦公空間,進而節(jié)省成本,發(fā)揮空間最大利用率。
虛擬化是一個廣義的術語,是指計算元件在虛擬的基礎上而不是真實的基礎上運行,是一個為了簡化管理,優(yōu)化資源的解決方案。如同現(xiàn)在空曠、通透的寫字樓,整個樓層幾乎看不到墻壁,用戶可以用同樣的成本構建出更加自主適用的辦公空間,進而節(jié)省成本,發(fā)揮空間最大利用率。這種把有限的固定的資源根據(jù)不同需求進行重新規(guī)劃以達到最大利用率的思路,在IT領域就叫做虛擬化技術。
虛擬化技術可以擴大硬件的容量,簡化軟件的重新配置過程。CPU的虛擬化技術可以單CPU模擬多CPU并行,允許一個平臺同時運行多個操作系統(tǒng),并且應用程序都可以在相互獨立的空間內運行而互不影響,從而顯著提高計算機的工作效率。
虛擬化技術與多任務以及超線程技術是完全不同的。多任務是指在一個操作系統(tǒng)中多個程序同時并行運行,而在虛擬化技術中,則可以同時運行多個操作系統(tǒng),而且每一個操作系統(tǒng)中都有多個程序運行,每一個操作系統(tǒng)都運行在一個虛擬的CPU或者是虛擬主機上;而超線程技術只是單CPU模擬雙CPU來平衡程序運行性能,這兩個模擬出來的CPU是不能分離的,只能協(xié)同工作。
虛擬化技術也與目前VMware Work station等同樣能達到虛擬效果的軟件不同,是一個巨大的技術進步,具體表現(xiàn)在減少軟件虛擬機相關開銷和支持更廣泛的操作系統(tǒng)方面。
虛擬化是一種綜合技術,然而云計算它是一種商業(yè)模型,云計算可能會利用虛擬換技術,但本質上,它并不是一種技術。
虛擬化
虛擬化是一個廣義的術語,是指計算元件在虛擬而不是真實的基礎上運行,是一個為了簡化管理,優(yōu)化資源的解決方案。在電腦運算中,虛擬化通常扮演硬件平臺、操作系統(tǒng)(OS)、存儲設備或者網(wǎng)絡資源等角色。
云計算
云計算是現(xiàn)有技術和模式的演進和采用。云計算是為了讓用戶能夠受益于這些技術而無需去深入的了解和掌握它們。云旨在降低成本和幫助用戶專注于他們的核心業(yè)務,而不是讓IT成為他們的阻礙。
然而,由于來自非IT人員(董事會)的壓力和“虛擬化就是云”這種錯誤的認知,許多的IT機構自吹自擂它們已經(jīng)“遷移到云”。
我們必須承認虛擬化是云計算中主要支撐技術之一。虛擬化將應用程序和數(shù)據(jù)在不同層次以不同的面貌展現(xiàn),這樣有助于使用者、開發(fā)及維護人員方便的使用、開發(fā)及維護這些應用程序及數(shù)據(jù)。虛擬化允許IT部門添加、減少移動硬件和軟件到它們想要的地方。虛擬化為組織帶來靈活性,從而改善IT運維和減少成本支出。
一旦接受云計算作為總方針來運行業(yè)務,通過簡化管理流程和提高效率來降低總成本可以為虛擬化平臺帶來巨大的價值。
云計算和虛擬化是密切相關的,但是虛擬化對于云計算來說并不是必不可少的。云計算為基礎設施帶來的服務如:管理一個私有云(在你的數(shù)據(jù)中心)、公共云(比如是SalesForce)和管理托管云(托管在別處的虛擬服務器)以及許多其它的增值服務,這些都是虛擬化和云計算的不同。
可以這么說,云計算把計算當做公用資源,而不是一個具體的產(chǎn)品或者是技術。作為一個最為基本的想法,我們可以說云計算是由公用計算的概念演進而來,也可以把云計算想象為把許多不同的計算機當做一個計算環(huán)境。
云計算將各種IT資源以服務的方式通過互聯(lián)網(wǎng)交付給用戶。然而虛擬化本身并不能給用戶提供自服務層。沒有自服務層,就不能提供計算服務。云計算模型允許終端用戶自行提供自己的服務器、應用程序和包括虛擬化等其它的資源,這反過來又能使企業(yè)最大程度的處理自身的計算資源,但這仍需要系統(tǒng)管理員為終端用戶提供虛擬機。
虛擬化就是云計算
這個說法很早就有,尤其商業(yè)廠商, vmware,微軟,都是把以前叫虛擬化的產(chǎn)品,改名為云計算。
其實某種意義上,也對,虛擬化是云計算的初級階段。對于企業(yè)來說,虛擬化,其實就已經(jīng)能完全滿足需求,那其實這就是云計算。相信云計算也是有不同的階段,不同的層次。
API接口
沒有api接口的,就是虛擬化。有api接口的,就是云計算。其實也挺有道理的。因為有api接口,你才可能和第三方調用。沒有api接口,你就只能通過管理界面,一個一個虛擬機創(chuàng)建。
不過現(xiàn)在很多虛擬化廠商也開始提供api接口,不過這只是部分功能的api接口。
如果說IaaS,云計算,必須提供全部功能的API接口,這個定義我還是很贊同的。
節(jié)點規(guī)模
有人說,10臺的規(guī)模,就是虛擬化,1000臺,就是云計算。其實也是有道理的。你管理機器的規(guī)模和你的管理方式有很大的聯(lián)系。一個簡單的例子,你10臺機器的時候,創(chuàng)建虛擬機,制定物理節(jié)點,就是一個剛需。當你的設備超過1k,那么你更多的是考慮放到哪個zone里。
分布式技術
有人認為采用分布式的技術,就是云計算,例如如果你的存儲是用本地存儲,那么還是虛擬化,用了分布式,那么就是云計算,網(wǎng)絡也是類似。
這個觀點,還是很深入人心,符合中國人很多觀念。虛擬機都是分布式的,肯定不會有所謂的單點故障。
彈性擴展
這個就更加深入人心。有彈性擴展的功能,就是云計算,沒有就是虛擬化。不過大家對彈性擴展的理解,其實差異很大。對于虛擬機來說,是橫向還是縱向擴展呢?
云計算是個概念,而不是具體技術。
虛擬化是一種具體技術,指把硬件資源虛擬化,實現(xiàn)隔離性、可擴展性、安全性、資源可充分利用等特點的產(chǎn)品。
CPU虛擬化的技術:Intel的VT-x,AMD的AMD-V。
虛擬化的軟件:VMWare,Hyper-V,Xen,KVM,OpenVZ等
目前云計算,大多是依賴虛擬化,通過把多臺服務器實體虛擬化后,構成一個資源池,實現(xiàn)共同計算,共享資源。也就是現(xiàn)在所謂“云計算”,其實這個詞提出來之前,過去的“服務器集群”就已經(jīng)實現(xiàn)這些功能了,只不過沒有現(xiàn)在那么先進而已。
Cloud Computing is the result of evolution and adoption of existing technologies and paradigms. The goal of cloud computing is to allow users to take bene?t from all of these technologies, without the need for deep knowledge about or expertise with each one of them. The cloud aims to cut costs, and help the users focus on their core business instead of being impeded by IT obstacles.
The main enabling technology for cloud computing is virtualization.
再補充一下自己的認識,云計算通常可能從兩個方面理解:
一是將IT作為一種服務的業(yè)務模式,如AWS、阿里云,其目標是讓IT未來像水和電一樣隨時隨地、簡單方便的使用,并按使用量收費;
二是IT自身的一種演進和優(yōu)化,其目標是提高效率和降低成本,或者說用一種成本可接受的方式解決越來越復雜的業(yè)務問題,例如海量數(shù)據(jù)的存儲和分析、超高并發(fā)訪問(如雙11或12306)等。
虛擬化作為一種技術,可以幫助云計算實現(xiàn)以上目標:資源分配更加靈活、資源利用率更高。同時技術成熟、對上層應用也基本不影響,因此被廣泛使用,甚至在很多時候虛擬化成為了云計算的代名詞。
虛擬化主要解決資源利用率,資源提供的自動擴展。有服務器(compute)虛擬化(kvm/xen/lxc等),存儲虛擬化,網(wǎng)絡虛擬化。原來的數(shù)據(jù)中心服務器整合就利用了大量的虛擬化?,F(xiàn)在的云計算模式也以虛擬化技術為基礎,特別是IAAS層。但云計算本質是效用計算,按需付費,因此SAAS也可以不基于虛擬化來實現(xiàn)。
Hadoop就是用來解決google類似的大數(shù)據(jù)的分析引入的計算框架。(mapreduce和分布式存儲)。你可以把這些東西放在虛擬化環(huán)境里的。
虛擬化技術是否都適用于并行計算,分布式大數(shù)據(jù)存儲和檢索?
這里得區(qū)分是什么的虛擬化。如上,有服務器虛擬化,存儲虛擬化,網(wǎng)絡虛擬化?,F(xiàn)在流行軟件定義網(wǎng)絡,軟件定義存儲,廣義的說,這也算是虛擬化技術的應用。
并行計算是一種計算模式??梢曰谔摂M化技術來實現(xiàn)。lerlang就是采用vm的方式來表示多進程。但是也可以在硬件上實現(xiàn)。
0 Comments.