雲端計算技術文件

xinghuzhuce發表於2010-12-02

雲端計算技術文件

作者:閔光輝

學校:東莞理工學院

QQ:1261720989

 

雲端計算就是“按需應變”的網路延伸,即廠商按照使用者不斷變化的需求提供相應的硬體、軟體服務。

雲端計算最典型的代表就是Google的搜尋引擎,簡單的說它是由幾百萬臺廉價的伺服器所組成的網路。Google2005年前後在世界各地建造了很多個“點”,

而每一個“點”由幾個足球場那麼大的幾廠房組成,而一個廠房裡面放的全部是串接起來廉價的伺服器元件。而正是這些廉價的伺服器元件成就了全球最大的搜尋引擎。

雲端計算是網格計算、分散式計算、平行計算、效用計算、網路儲存、虛擬化、負載均衡、網路技術等一些傳統計算方法的融合體。它旨在通過網路把多個成本相對較低的計算實體整合成一個具有強大計算能力的完美系統,並藉助SaaSPaaSIaaSMSP等先進的商業模式把這強大的計算能力分佈到終端使用者手中。其核心理念就是通過不斷提高“雲”的處理能力而減少使用者終端的處理負擔,最終使使用者終端簡化成一個單純的輸入輸出裝置,並能按需享受“雲”的強大計算處理能力。

雲端計算的核心技術有程式設計模型、資料管理技術、資料儲存技術、虛擬化技術、雲端計算平臺管理技術。

雲端計算舉例:企業客戶關係管理系統、雲作業系統、雲安全系統、雲端儲存系統、網路硬碟、網路遊戲、搜尋引擎、資源下載、葡萄酒管理系統、虛擬機器等。

 

七種計算方法

 

網格計算:(即分散式計算)

研究如何把一個需要非常巨大的計算能力才能解決的問題分成許多小的部分,然後把這些部分分配給許多計算機進行處理,最後把這些計算結果綜合起來得到最終結果。目的就是通過任何一臺計算機都可以提供無限的計算能力,可以接入浩如煙海的資訊。

 

平行計算:

該計算是相對於序列計算來說的。所謂平行計算可分為時間上的並行和空間上的並行。 時間上的並行就是指流水線技術,而空間上的並行則是指用多個處理器併發的執行計算。

效用計算:

是一種提供模型的服務,在這個模型裡面服務提供商產生客戶需要的計算資源和基礎設施管理,並且根據某個應用,而不是僅僅按照速率進行收費。與其他型別的隨選計算(例如網格計算)一樣,實用模型力圖最大效率地使用資源最小化相關成本。

 

網路儲存:

網路儲存分為為儲存裝置和網通裝置。企業的網路儲存已行之有年,大致分為兩種架構:儲存區域網路和網路附加儲存。前者為支援伺服器和儲存裝置的直接高速資料傳輸的儲存網路架構,後者為直接聯機至區域網路或廣域網路,以方便由多臺伺服器存取資料的儲存架構。

 

虛擬化:

指利用軟體來模擬硬體。由於電腦系統的所有部件,從微處理器、儲存驅動器、到聯網裝置(如路由器、防火牆和負荷均衡器)都是以數字方式執行的,因此它們可以用軟體替代,也就是可以被虛擬化。

例如,當我們通過亞馬遜的EC2服務租用一臺電腦時—或者租用1000臺也是一樣—我們並不是在租用實體的電腦,而是租用虛擬化的電腦,而它們只存在於亞馬遜公司實體電腦的儲存器中。通過虛擬化,亞馬遜公司的一臺電腦在程式設計後即變成了許多不同的電腦,而且每臺電腦都可由一個不同的客戶控制。

其實虛擬化在我們生活中經常見到,如我們的儲存器虛擬技術就是為了擴大儲存器容量而在硬碟要一塊區域當作自己的地盤,虛擬機器就是一臺電腦上可以執行多個作業系統,但其實自己只執行了一個作業系統,其它的都是通過軟體分配另外的程式和資源虛擬出來的。

 

負載平衡:

是建立在現有網路結構之上,它提供了一種廉價有效透明的方法擴充套件網路裝置和伺服器的頻寬、增加吞吐量、加強網路資料處理能力、提高網路的靈活性和可用性。

由於目前現有網路的各個核心部分隨著業務量的提高,訪問量和資料流量的快速增長,其處理能力和計算強度也相應地增大,使得單一的伺服器裝置根本無法承擔。在此情況下,如果扔掉現有裝置去做大量的硬體升級,這樣將造成現有資源的浪費,而且如果再面臨下一次業務量的提升時,這又將導致再一次硬體升級的高額成本投入,甚至效能再卓越的裝置也不能滿足當前業務量增長的需求。

負載均衡有兩方面的含義:首先,大量的併發訪問或資料流量分擔到多臺節點裝置上分別處理,減少使用者等待響應的時間;其次,單個重負載的運算分擔到多臺節點裝置上做並行處理,每個節點裝置處理結束後,將結果彙總,返回給使用者,系統處理能力得到大幅度提高。

提供了多個WAN ports可作多種負載平衡演算法則,企業可依需求自行設定負載平衡規則,而網路存取可參照所設定的規則,執行網路流量負載平衡導引。演算法則有:依序、比重、流量比例、使用者端、應用別、聯機數量、服務別、自動分配。

 

 

四大商業服務模式

 

一、SaaS(Software-as-a- Service):軟體即服務。

SaaS的核心是軟體的服務化。即,SaaS可將軟體看作是一種服務,而不是一種商品。SaaS的基本概念理論認為,軟體的實質是服務。使用者對軟體的需求實際上是對應用服務的需求,而使用者使用軟體實際上是在消費應用服務。軟體的使用者是服務的需求者和消費者,而軟體的提供商是服務的提供者和生產者。

就拿我們常見的來說,平時網路上一些什麼什麼系統或者什麼什麼平臺,這些其實歸根到底都是軟體,只不過是大型軟體而言,因為它的資料可能不僅僅來自於自己的伺服器或者電腦,而要通過網路來處理大量的資料。相當於我們的個人電腦而言,我們的軟體也就只能叫做什麼什麼軟體,因為它們就是裝在自己電腦上的一些應用程式來幫自己處理資料而不需要通過網路連線。

 

1SaaS給使用者帶來的優勢:

 

1)  拿來即用

傳統軟體需求首先要向軟體商購買軟體,然後在自己的電腦或網路伺服器上進行安裝和部署。在這個過程中,也許還有各種較為複雜的配置,特別是對於一些稍大一點的企業管理軟體,往往需要專業人士的參與才能完成整個安裝和部署的過程。

SaaS軟體卻是可以拿來即用的。因為SaaS軟體的安裝和部署都是軟體商的事情,使用者根本無須關心軟體的安裝和部署問題。使用者需要使用軟體時,只需在網上找到所需的軟體點選就可以直接使用了。無須下載、安裝、部署、配置。

 

2)  無須維護

傳統軟體的全部執行環境都是由使用者直接負責的,因此軟體的執行維護也大多要使用者自己解決。一般來說,企業都會有一到多個自己的計算機維護人員,他們負責和保障整個企業的各種軟體的正常執行。這些維護人員在會在軟體公司的維護工程師的指導下,完成制定軟體的問題處理和系統維護工作。

SaaS軟體就簡單多了。SaaS軟體的主要執行環境絕大多數都在伺服器端,在軟體商的機房內。因此,大部分的系統維護工作都是由軟體商承擔的,並有經驗豐富的專職工程師負責實施。

 

3)  按需使用

傳統的軟體買了就買了,只能多買而不能退貨。使用者購買的軟體必須估計到軟體的最大使用情況,否則在業務繁忙時,軟體就無法支撐企業的業務處理。但當企業用不到那麼多軟體時,這些多餘的軟體也就成了閒置的資產,既不能退又無法為企業帶來效益。

SaaS軟體就是可按需使用的服務。因為SaaS的服務收費形式有多種,有的可以按使用次數收費,如重要資料查詢等服務;有的可以按使用人數和時間收費,如各種管理軟體;有的是按處理資料的量來收費,如我們經常用到的簡訊和彩信處理服務。企業可以根據自己的需求訂購自己的服務,如企業人少時就少定一些服務,規模大時就多定些服務,人員縮編時又能相應減少使用一些服務。業務繁忙時多用些服務,淡季又可以少用一些。甚至在企業歇業時也可以完全停止SaaS軟體服務,而以後重新開業後又可以繼續使用,而原來的資料資料都在。

 

4)  隨處可用

傳統軟體的資料資料大都存在一個固定的地方,與物理上的地理位置相關。資料或者在辦公室,或者在企業區域網的伺服器裡面,而當使用者出差或休假時想處理業務時就可想而不可及。

SaaS軟體的資料資料都存放在網路上的伺服器上,它的儲存位置是虛擬的甚至使用者不知道存放資料的具體物理位置。但是,只要在有網路的地方,使用者就可以通過SaaS軟體來處理自己資料資料。

 

5)  風險減小

在傳統軟體那種產品銷售模式中,使用者想引入一套軟體是件很困難的事情,之所以困難是在於軟體的應用評估和決策方面。因為一天軟體在沒有用過之前是很難評估其好壞的,特別是一些企業管理軟體,簡單的試用是無法瞭解整個軟體的情況的,而軟體只有在購買之後才能合法使用,同時軟體的購買往往需要一次性支付很大一筆金錢。如果購買之後該軟體可以滿足企業要求還好說,一旦不能滿足或者不適應該企業的管理模式,將給企業帶來巨大的損失。

SaaS軟體提供的是服務而不是產品,因此並不需要使用者一次性支付很大一筆資金。使用者只需支付很少一部分費用就可以真正使用SaaS軟體了。因此使用者可以很少的投入軟體的嘗試,風險非常小。如果發現該軟體不能滿足要求或者不適應本公司的管理模式,企業也就相當與損失了一點點學費而已。

 

6)  成本降低

傳統軟體大都是按產品和服務分別計費的,尤其很多軟體還有收取升級費。這樣,使用者從第一次購買軟體到維護和服務,以及升級的費用都是一筆不小的開支。

SaaS軟體的成本非常簡單,就是隻按服務來收費,因為它是服務而不是產品。而軟體的維護也是軟體運營商的事情,使用者根本不用關心。

 

7)  先天防毒

對於傳統軟體來說,企業計算機一旦感染病毒,往往給企業帶來的是一場災難。特別是反病毒軟體失效時,大量使用者不得不經常重新安裝系統,一個又一個地安裝應用程式,再一個又一個地恢復資料。往往一不小心又感染了病毒,又不得不重新來過。所有這一切都會消耗企業大量的人力、物力和財力,關鍵的是影響了企業的正常運轉。

而對於SaaS軟體來說,軟體本身就是安裝在SaaS軟體運營商的網路伺服器中。SaaS軟體運營商都會有專業的安全保障措施,也對計算機病毒有嚴密的防範機制。一般來說,計算機病毒想侵入SaaS軟體伺服器,幾乎是不可能的。

 

8)  低配置也可用大軟體

在傳統的軟體執行過程中,大大小小的軟體都是執行在使用者自己的電腦上,而對於一些個人電腦而言,電腦配置相對來說不是很高,但如果個人要用大型的軟體來快速的處理業務就需要相當高的電腦配置才可以,否則該軟體根本不可能執行起來,因為對於有的大型軟體來說或許只可以在大型伺服器上執行,如客戶關心管理系統。

SaaS軟體則可以讓小使用者也可以用大軟體。因為這些大型軟體不是裝在使用者自己的電腦上,而是裝在軟體商的大型伺服器上,而我們只需要很低的配置能上網就可以使用它們。

如我們經常用的大型防毒軟體等,如果把卡巴斯基裝在自己的個人電腦上或許可以使用,但大多數使用者反應這會大大降低電腦的執行速度,而且對於個人來說掏一大筆錢來使用正版的防毒軟體顯然是不划算的,但使用版的防毒能力又不能解決根本問題。所以用線上防毒就可以解決所有的難題。

 

2SaaS給軟體運營商帶來的優勢:

 

1)  節約銷售成本

以前軟體開發商在推廣和銷售傳統的軟體產品時,需要投入巨大的營銷成本。特別是在銷售方面,使用者往往會仔細考慮軟體的各項功能,很難下決定。軟體開發商不得不反覆的給使用者講解和展示軟體的功能,更多地與使用者進行溝通交流,想盡各種辦法說服使用者購買軟體。

但在推廣和銷售SaaS軟體時,軟體商可以將重點資源放在市場推廣方面。只要市場方面的工作做得好,在銷售環節中很容易讓使用者開始使用軟體,因為SaaS軟體並不需要使用者一次性支付很大一筆費用。只有軟體的功能做得好,使用者自然會長期訂購該軟體的服務。

 

2)  節約維護成本

傳統的軟體產品維護是一對多的。就是說,軟體商的維護人員必須同時維護多套軟體產品。維護人員不得不面對各種各樣的使用者現場環境。什麼樣的使用者環境就會出現什麼樣的問題。對於許多嚴重的問題,維護人員不得不跑到使用者的現場環境去解決。這也就加大了軟體維護人員的負擔。更糟糕是,維護人員不到要維護不同的軟體執行環境,甚至還要維護同以軟體的不同版本。這些負責的情況往往使維護人員疲於奔波,既消耗了大量的精力,而維護的質量也不見到高。這些都構成了軟體維護成本居高不下的問題。

SaaS軟體的維護是一對一的。因為SaaS軟體只部署在軟體商的伺服器中,只有一套軟硬體執行環境,因此也只需維護一套軟體的執行。同時SaaS軟體維護人員對自己公司的軟硬體環境非常熟悉,維護起來也得心應手。

 

3)  穩健的經營模式

在傳統的軟體經營模式中,軟體公司的主要收入來源於使用者第一次支付的資金。軟體產品銷售的收入佔整個收入的90%左右,而其它的服務費和維護費收入只佔10%左右。軟體公司在完成一家客戶銷售之後,又不得不尋找新的客戶繼續銷售產品,因此,軟體公司總是將重點業務放在軟體的銷售上,軟體公司的銷售部門也是壓力最大的部門,他們整體東奔西跑就是為了一個目的:簽單。

SaaS軟體的營銷重點是市場,銷售賣的服務所以就比較容易展開。市場上去了使用者量也就自然而然的提高了。使用者一旦開始使用SaaS軟體的服務,只有軟體符合使用者的需求,使用者用的滿意,也自然會持續使用軟體公司的服務。而這就是使得SaaS軟體的使用者群成了一種可以積累的資源,這樣軟體的銷售收入也就可以穩定下來。

 

3SaaS的缺點:

 

1)        依賴網際網路

網際網路是SaaS軟體賴以生存的根基。因為SaaS軟體是安裝和部署在網際網路中的伺服器上,使用者需要通過網際網路上的SaaS軟體的伺服器,才能正常使用SaaS軟體的服務。如果離開網際網路,SaaS軟體將無法使用,使用者什麼也幹不了。

而在如今的網際網路時代,網路發展雖然很迅速,但還是有一些限制,如寬頻、網速等。所以怎樣才能更好、更快、更方便的在網際網路上使用SaaS模式,還需要不斷的探索。

 

2)        資料安全性

在傳統的軟體中,使用者的資料都是存放在自己的電腦上,或者存放在自己企業的伺服器中,使用者會自己維護資料的安全性。只要做好資料的備份工作,一旦出現大的問題,也可以很容易地將資料恢復到上次備份的狀態。對於使用者來說,自己來掌握資料感覺會安全許多。

SaaS軟體的資料都是放在軟體商的網路伺服器中,使用者對這些資料的直接控制能力有限。使用者對將資料交到SaaS軟體商的手裡是很擔心的,因為資料一旦出問題,對企業將會帶來意想不到的損失。

 

3)        資料保密性

軟體的資料不但需要安全的儲存環境,還需要嚴格的保密機制。傳統軟體的資料都是有使用者自己儲存,所有的商業機密也都是由企業自己掌握。只有企業做好自己的商業機密管理,就不存在洩露問題。

SaaS軟體的資料是儲存在SaaS軟體商的網路伺服器中,SaaS軟體商完全可以知道使用者的所有資訊。也就是說,使用者一旦開始使用SaaS軟體,使用者的這個軟體中輸入的所有商業機密也都完全暴露給了SaaS軟體商。

 

4SaaS的成功案例

Salesforce公司的CRM(客戶關係管理)、Google的搜尋引擎和GmailIBM的“藍雲”、AlisoftAEP平臺等一系列SaaS軟體。

 

二、PaaSPlatform-as-a-Service:平臺即服務)

 

PaaS基本都會給開發者提供一整套包括IDE在內的開發和測試環境

PaaS實際上是指將軟體研發的平臺作為一種服務,以SaaS的模式提交給使用者。因此,PaaS也是SaaS模式的一種應用。但是,PaaS的出現可以加快SaaS的發展,尤其是加快SaaS應用的開發速度。在2007年國內外SaaS廠商先後推出自己的PaaS平臺。

PaaS之所以能夠推進SaaS的發展,主要在於它能夠提供企業進行定製化研發的中介軟體平臺,同時涵蓋資料庫和應用伺服器等。PaaS可以提高在Web平臺上利用的資源數量。例如,可通過遠端Web服務使用資料即服務(Data-as-a-Service:資料即服務),還可以使用視覺化的API,甚至像800appPAAS平臺還允許你混合並匹配適合你應用的其他平臺。使用者或廠商基於PaaS平臺可以快速開發自己所需要的應用和產品。同時,PaaS平臺開發的應用能更好地搭建基於SOA架構的企業應用。

此外,PaaS對於SaaS運營商來說,可以幫助他進行產品多元化和產品定製化。例如 SalesforcePaaS平臺讓更多的ISV成為其平臺的客戶,從而開發出基於他們平臺的多種SaaS應用,使其成為多元化軟體服務供貨商,而不再只是一家CRM隨選服務提供商。而國內的SaaS廠商800app通過PaaS平臺,改變了僅是CRM供應商的市場定位,實現了 BTO和線上交付流程。使用800appPaaS開發平臺,使用者不再需要任何程式設計即可開發包括CRMOAHRSCM、進銷存管理等任何企業管理軟體,而且不需要使用其他軟體開發工具並立即線上執行。

面向個人的EC站點巨頭公司 Amazon,把最初為了自己公司的運營用的構築起來的系統平臺,進行出租,使用者可以自由選擇作業系統和中間軟體,以這樣的方式提供硬體以及軟體平臺作為服務,最初被海外以一些冒險事業的企業所使用。從2006年開始 [Amazon EC] [Amazon S3]開始作為服務推向市場。

還有現代軟體業霸主同時又是次時代計算的先驅的Google,大家都知道在世界上構築以及執行了非常多的資料中心。以搜尋引擎以及新的廣告模式而聞名。他們使用便宜的計算機和強有力的中介軟體,以及自己的技術裝備出了世界上最強大的資料中心,以及超高效能的平行計算群。 20084月發表的PaaS服務[Google App Engine]Amazon EC2,S3,SimpleDB等服務擁有相似的功能。這些穩定的平臺上同樣搜尋引擎,GMail等服務也在執行。同樣以ASP~SaaS成功的Salesforce2007年開始用於提供SaaS的系統基盤對外公開,用Force這個名稱開始進入PaaS業務。他所提供的PaaS服務裡採用Java類似的語言Apex以及Eclipse開發平臺,整合的開發環境也作為服務進行提供(Development as a Service)Google/Amazon/Salesforce這三個軟體巨頭非常的重視PaaS這種新的商業模式,AmazonPaaS服務為了使用者可以自由的組合服務提供了更多的自由度,Google的話提供了更多的服務使使用者能夠方便的使用,去掉了一些繁瑣的作業。Google/SalesforcePaaS不僅是基礎硬體的提供開發環境的同樣被提供屬於真正的平臺作為一種服務(PaaS)

 

三、IaaS[1](Infrastructure as a Service)基礎設施即服務

 

IaaS主要提供虛擬機器。就像消費者使用網路硬碟一樣,其實他們不知道他們所使用的網路硬碟的具體物理位置在哪裡,但他們可以像使用自己的硬碟一樣使用網路硬碟。

消費者通過 Internet 可以從完善的計算機基礎設施獲得服務。Internet上其他型別的服務包括PaaSSaaSPaaS提供了使用者可以訪問的完整或部分的應用程式開發,SaaS則提供了完整的可直接使用的應用程式,比如通過 Internet管理企業資源。

IaaS分為兩種用法:公共的和私有的。AmazonEC2在基礎設施雲中使用公共伺服器池。更加私有化的服務會使用企業內部資料中心的一組公用或私有伺服器池。

IaaS可以提供伺服器、作業系統、磁碟儲存、資料庫和/或資訊資源最高階IaaS的代表產品是亞馬遜的AWS,不過IBMVmware和惠普以及其他一些傳統IT廠商也提供這類的服務。IaaS通常會按照"彈性雲"的模式引入其他的使用和計價模式,也就是在任何一個特定的時間,都只使用你需要的服務,並且只為之付費。

 

四、MSP (Managing Successful Programme)

在全球商業規則鉅變的今天,當今掌控變革最有效的方法是專案群管理(Program Management, 而英國政府提出的MSP (Managing Successful Programme),成功的專案群管理) 專案群管理體系正是這一前沿的代表,它綜合了全球五百強企業專案群管理的優秀實踐。通過對專案群進行管理,成功實現企業變革。

MSP將專案群管理定義為:協調組織、指導和實施一系列專案和轉換活動的行為,目的是為了通過一系列變革成果,實現對業務具有戰略重要性的收益

 

雲端計算的核心技術

雲端計算系統運用了許多技術,其中以程式設計模型、資料管理技術、資料儲存技術、虛擬化技術、雲端計算平臺管理技術最為關鍵。

 

1、           程式設計模型

MapReduceGoogle開發的javaPythonC++程式設計模型,它是一種簡化的分散式程式設計模型和高效的任務排程模型,用於大規模資料集(大於1TB)的並行運算。嚴格的程式設計模型使雲端計算環境下的程式設計十分簡單。MapReduce模式的思想是將要執行的問題分解成Map(對映)Reduce(化簡)的方式,先通過Map程式將資料切割成不相關的區塊,分配(排程)給大量計算機處理,達到分散式運算的效果,再通過Reduce程式將結果彙整輸出。

 

2、           海量資料分佈儲存技術

雲端計算系統由大量伺服器組成,同時為大量使用者服務,因此雲端計算系統採用分散式儲存的方式儲存資料,用冗餘儲存的方式保證資料的可靠性。雲端計算系統中廣泛使用的資料儲存系統是GoogleGFSHadoop團隊開發的GFS的開源實現HDFS

GFSGoogle檔案系統(Google File System),是一個可擴充套件的分散式檔案系統,用於大型的、分散式的、對大量資料進行訪問的應用。GFS的設計思想不同於傳統的檔案系統,是針對大規模資料處理和Google應用特性而設計的。它執行於廉價的普通硬體上,但可以提供容錯功能。它可以給大量的使用者提供總體效能較高的服務。

一個GFS叢集由一個主伺服器(master)和大量的塊伺服器(chunkserver)構成,並被許多客戶(Client)訪問。主伺服器儲存檔案系統所以的後設資料,包括名字空間、訪問控制資訊、從檔案到塊的對映以及塊的當前位置。它也控制系統範圍的活動,如塊租約(lease)管理,孤兒塊的垃圾收集,塊伺服器間的塊遷移。主伺服器定期通過HeartBeat訊息與每一個塊伺服器通訊,給塊伺服器傳遞指令並收集它的狀態。GFS中的檔案被切分為64MB的塊並以冗餘儲存,每份資料在系統中儲存3個以上備份。

客戶與主伺服器的交換隻限於對後設資料的操作,所有資料方面的通訊都直接和塊伺服器聯絡,這大大提高了系統的效率,防止主伺服器負載過重。

 

3、           海量資料管理技術

雲端計算需要對分佈的、海量的資料進行處理、分析,因此,資料管理技術必需能夠高效的管理大量的資料。雲端計算系統中的資料管理技術主要是GoogleBT(BigTable)資料管理技術和Hadoop團隊開發的開源資料管理模組HBase

BT是建立在GFS, Scheduler, Lock ServiceMapReduce之上的一個大型的分散式資料庫,與傳統的關聯式資料庫不同,它把所有資料都作為物件來處理,形成一個巨大的表格,用來分佈儲存大規模結構化資料。

Google的很多專案使用BT來儲存資料,包括網頁查詢,Google earthGoogle金融。這些應用程式對BT的要求各不相同:資料大小(從URL到網頁到衛星圖象)不同,反應速度不同(從後端的大批處理到實時資料服務)。對於不同的要求,BT都成功的提供了靈活高效的服務。

 

4、           虛擬化技術

通過虛擬化技術可實現軟體應用與底層硬體相隔離,它包括將單個資源劃分成多個虛擬資源的裂分模式,也包括將多個資源整合成一個虛擬資源的聚合模式。虛擬化技術根據物件可分成儲存虛擬化、計算虛擬化、網路虛擬化等,計算虛擬化又分為系統級虛擬化、應用級虛擬化和桌面虛擬化。

 

5、           雲端計算平臺管理技術

雲端計算資源規模龐大,伺服器數量眾多並分佈在不同的地點,同時執行著數百種應用,如何有效的管理這些伺服器,保證整個系統提供不間斷的服務是巨大的挑戰。

雲端計算系統的平臺管理技術能夠使大量的伺服器協同工作,方便的進行業務部署和開通,快速發現和恢復系統故障,通過自動化、智慧化的手段實現大規模系統的可靠運營。

 

典型雲端計算平臺介紹

 

1、             Google 的雲端計算平臺

Google的硬體條件優勢,大型的資料中心、搜尋引擎的支柱應用,促進Google雲端計算迅速發展。Google的雲端計算主要由MapReduceGoogle檔案系統(GFS)BigTable組成。它們是Google內部雲端計算基礎平臺的3個主要部分。Google 還構建其他雲端計算元件,包括一個領域描述語言以及分散式鎖服務機制等。Sawzall是一種建立在MapReduce基礎上的領域語言,專門用於大規模的資訊處理。Chubby是一個高可用、分散式資料鎖服務,當有機器失效時,Chubby使用Paxos演算法來保證備份。

 

2、             IBM“藍雲計算平臺

藍雲解決方案是由IBM雲端計算中心開發的企業級雲端計算解決方案。該解決方案可以對企業現有的基礎架構進行整合,通過虛擬化技術和自動化技術,構建企業自己擁有的雲端計算中心,實現企業硬體資源和軟體資源的統一管理、統一分配、統一部署、統一監控和統一備份,打破應用對資源的獨佔,從而幫助企業實現雲端計算理念。

IBM 藍雲計算平臺是一套軟、硬體平臺,將Internet上使用的技術擴充套件到企業平臺上,使得資料中心使用類似於網際網路的計算環境。藍雲大量使用了IBM先進的大規模計算技術,結合了IBM自身的軟、硬體系統以及服務技術,支援開放標準與開放原始碼軟體。

藍雲基於IBM Almaden研究中心的雲基礎架構,採用了XenPowerVM虛擬化軟體,Linux作業系統映像以及Hadoop軟體以及MapReduce的開源實現。IBM已經正式推出了基於x86晶片伺服器系統的藍雲產品。

藍雲計算平臺由一個資料中心、IBM Tivoli部署管理軟體、IBM Tivoli監控軟體、IBM WebSphere應用伺服器、IBM DB2資料庫以及一些開源資訊處理軟體和開源虛擬化軟體共同組成。藍雲的硬體平臺環境與一般的x86伺服器叢集類似,使用刀片的方式增加了計算密度。藍雲軟體平臺的特點主要體現在虛擬機器以及對於大規模資料處理軟體Apache Hadoop的使用上。

藍雲平臺的一個重要特點是虛擬化技術的使用。虛擬化的方式在藍雲中有兩個級別,一個是在硬體級別上實現虛擬化,另一個是通過開源軟體實現虛擬化。硬體級別的虛擬化可以使用IBM p系列的伺服器,獲得硬體的邏輯分割槽LPAR(logic partition)。邏輯分割槽的CPU資源能夠通過IBM Enterprise Workload Manager來管理。通過這樣的方式加上在實際使用過程中的資源分配策略,能夠使相應的資源合理地分配到各個邏輯分割槽。p系列系統的邏輯分割槽最小粒度是1/10CPUXen則是軟體級別上的虛擬化,能夠在Linux基礎上執行另外一個作業系統。

 

3、             Amazon的彈性計算雲

Amazon是網際網路上最大的線上零售商,為了應付交易高峰,不得不購買了大量的伺服器。而在大多數時間,大部分伺服器閒置,造成了很大的浪費,為了合理利用空閒伺服器,Amazon建立了自己的雲端計算平臺彈性計算雲EC2elastic compute cloud),並且是第一家將基礎設施作為服務出售的公司。

Amazon將自己的彈性計算雲建立在公司內部的大規模叢集計算的平臺上,而使用者可以通過彈性計算雲的網路介面去操作在雲端計算平臺上執行的各個。使用者使用例項的付費方式由使用者的使用狀況決定,即使用者只需為自己所使用的計算平臺例項付費,執行結束後計費也隨之結束。這裡所說的例項即是由使用者控制的完整的虛擬機器執行例項。通過這種方式,使用者不必自己去建立雲端計算平臺,節省了裝置與維護費用。

計算雲使用者使用客戶端通過SOAP over HTTPS協議與Amazon彈性計算雲內部的例項進行互動。這樣,彈性計算雲平臺為使用者或者開發人員提供了一個虛擬的叢集環境,在使用者具有充分靈活性的同時,也減輕了雲端計算平臺擁有者的管理負擔。彈性計算雲中的每一個例項代表一個執行中的虛擬機器。使用者對自己的虛擬機器具有完整的訪問許可權,包括針對此虛擬機器作業系統的管理員許可權。虛擬機器的收費也是根據虛擬機器的能力進行費用計算的,實際上,使用者租用的是虛擬的計算能力。

總而言之,Amazon通過提供彈性計算雲,滿足了小規模軟體開發人員對叢集系統的需求,減小了維護負擔。其收費方式相對簡單明瞭:使用者使用多少資源,只需為這一部分資源付費即可。

 

雲端計算的影響

 

以上是我對雲端計算有關資料的理解和整理,下面我就以個人理解來淺談一下雲端計算給我們帶來的方便和它的限制。

在計算機迅速發展的時代,雲端計算為我們帶來了前所未有的方便和快捷,但世間萬物相生相剋、相互影響,沒有絕對的好,也沒有絕對的壞,這一切都是相對而言的。所以雲端計算也不例外,但從大的局勢來看,它的利絕對大於弊,所以它的發展空間將是無止境的。

 

一、雲端計算帶來的方便

1、低配置使用大功能

以前我們使用電腦都是自己用自己的,即使網路剛興起的時候,我們通過網路也就可以查些資料而言。而我們所用的一些大型或者小型的軟體都是在我們自己的電腦上執行,這樣以來就對我們的電腦配置要求相當高,尤其是使用大型電腦的企業和使用者。所以也就提高了我們對電腦的使用成本。

但在雲端計算出現以後,很多東西我們都可以通過網路共享而得到和使用,而我們現在對電腦的使用成本大大降低,因為我們的電腦只要可以上網就可以利用網上資源。比如企業用的客戶關係管理系統、線上訂票系統、我們常用的網路硬碟、在網路上執行可以隨時更新升級的大型網路遊戲、網路高清電視等一系列大型資訊處理系統。

 

2、無限的儲存容量

以前我們使用自己的電腦,自己的硬碟有多大就最多能用多大,而現在雲端計算出現之後,我們不但可以使用網路硬碟,而且在無形中也在使用別人的硬碟。網路硬碟是直觀的幫我們儲存資訊,而我們在上網搜尋各種各樣的資訊和下載各種各樣的資源時,其實我們使用的是別人共享是硬碟資源,這就相當於別人共享的硬碟資源也是我們的。比如我們經常使用的電驢、迅雷等一系列下載軟體時,我們其實是在訪問別人的硬碟資源,而現在全球的計算機不計其數,通過雲端計算把這些計算機連線在一起的同時也把各個計算機的硬碟連線在了一起。

 

3、充分利用資源

如果我們在沒有聯網的情況下使用電腦,那麼我們的CPU90%以上都是空閒的,這樣就大大浪費了CPU的處理空間。但在雲端計算出現以後,通過網路就可以大大提高我們的CPU使用率。即使我們使用10%CPU來處理自己的資訊,而把90%CPU用於處理和計算網路資訊和資料,而這樣不但節約了自己的資源,同時也大大提高了對方的處理和計算能力,而對方的配置可以不是很高,處理和計算能力也不是很高。這又是一個網路雙贏!其實這也是雲端計算的一大基本功能。

 

4、大大提高計算能力

在上面其實已經提到了這點,假如我們自己的電腦配置很差、處理資訊和計算資料的能力也很差,但自己又想處理大量的資訊和高速的計算。這時我們就不得不使用雲端計算,我們可以把要處理的資訊和計算的資料扔到“雲”裡面,它會高速的幫你處理大量的資訊和計算資料。

 

5、作業系統的相容性

由於計算機的不斷髮展,各種各樣的作業系統在不同的行業也相繼盛行,如WindowsServiceUnixLinuxAndroidMacPalmAmoeba Amiga等一系列作業系統。但作業系統的相容性卻是一大難題,但自從雲端計算出現之後,通過網路各個作業系統之間就可以之間通訊,即使是電腦和手機。

 

6、軟體的及時更新和升級

以前的軟體大都裝在企業的伺服器或者個人電腦上,每當軟體升級或更新都要一個一個的來,不但很費時間而且費用還很高,例如一些大型的防毒軟體和遊戲更新等。而云計算出現以後,幾乎各種各樣的軟體升級和更新都在軟體商的伺服器上一次性完成,當我們使用時已經是全新的軟體了,這樣不但節省了時間,而且還節省了費用,就像現在的360和一些網路遊戲等。

 

7、增強了資料的安全性

以前自己的資料都放在企業自己的伺服器或者個人伺服器上,這樣電腦一旦感染病毒,以前的資料有可能就會損失或者被竊取。而云計算出現之後,企業和個人的資料等資訊都可以放在軟體商的大型伺服器上,這樣就大大增強了資料的安全性。一般來說,在這樣的伺服器上病毒幾乎是不能感染的。

 

8、更容易群組協作

以前的資訊處理和資料計算等都是在一臺電腦上進行,當然也就由一個人來操作。但云計算出現之後,大量的資訊處理和資料計算可以多人同時進行,這樣不但節省了時間而且還等到了優化。

 

9、減少了維護問題

以前的軟體維護等都要專業人員來操作傳統軟體的全部執行環境都是由使用者直接負責的,因此軟體的執行維護也大多要使用者自己解決。一般來說,企業都會有一到多個自己的計算機維護人員,他們負責和保障整個企業的各種軟體的正常執行。這些維護人員在會在軟體公司的維護工程師的指導下,完成制定軟體的問題處理和系統維護工作。

而云計算出現以後軟體的主要執行環境絕大多數都在伺服器端,在軟體商的機房內。因此,大部分的系統維護工作都是由軟體商承擔的,並有經驗豐富的專職工程師負責實施。

 

10、降低了風險

雲端計算出現後網路軟體提供的是服務而不是產品,因此並不需要使用者一次性支付很大一筆資金。使用者只需支付很少一部分費用就可以真正使用網路軟體了。因此使用者可以很少的投入軟體的嘗試,風險非常小。如果發現該軟體不能滿足要求或者不適應本公司的管理模式,企業也就相當與損失了一點點學費而已。

 

二、雲端計算的限制

1、資料隱私得不到保障

雖然上面提到了資料的安全性等到了保障,但隱私性卻等不但保障。因為企業或個人的資訊和資料都放在了軟體商的伺服器上,而軟體商則可以全部知曉使用者的資訊,而資訊一旦被軟體商所拿到也就等於資訊已經洩露了。

 

2網路傳輸的限制

雲端計算服務依賴網路,目前網速低且不穩定,使雲應用的效能不高。雲端計算的普及依賴網路技術的發展。

 

3、資料安全性得不到保障

有些資料是企業的商業機密,資料的安全性關係到企業的生存和發展。雲端計算資料的安全性問題解決不了會影響雲端計算在企業中的應用。

 

4使用者使用是否習慣

如何改變使用者的使用習慣,使使用者適應網路化的軟硬體應用是長期而艱鉅的挑戰。

 

相關文章