您可能非常關(guān)注云計(jì)算和網(wǎng)格計(jì)算的比較。本文介紹了云計(jì)算服務(wù)類型,云計(jì)算和網(wǎng)格計(jì)算的相似與不同。同時(shí)本文探討了云計(jì)算優(yōu)于網(wǎng)格計(jì)算的地方,兩者面臨的共同問題以及一些安全方面的問題。本文以AmazonWeb Services 為例。
實(shí)現(xiàn)云計(jì)算需要三個(gè)部分:瘦客戶機(jī)(或者能夠在胖瘦之間切換的客戶機(jī))、網(wǎng)格計(jì)算和效用計(jì)算。網(wǎng)格計(jì)算將獨(dú)立的計(jì)算機(jī)連接成一個(gè)大的基礎(chǔ)設(shè)施,充分利用閑置的資源。效用計(jì)算就是支付在共享服務(wù)器上使用的服務(wù),就好象支付公共事業(yè)一樣(比如電力、天然氣等)。
通過網(wǎng)格計(jì)算,可以把計(jì)算資源作為能夠開啟關(guān)閉的公用事業(yè)來(lái)提供。云計(jì)算更進(jìn)一步,可以隨需提供計(jì)算資源。這樣在使用公用定價(jià)時(shí)就可以避免過度供給。在滿足數(shù)百萬(wàn)用戶的需求時(shí)也消除了過度供給的需要。
基礎(chǔ)設(shè)施即服務(wù)
消費(fèi)者通過 Internet 可以從完善的計(jì)算機(jī)基礎(chǔ)設(shè)施獲得服務(wù)。這類服務(wù)稱為基礎(chǔ)設(shè)施即服務(wù)(Infrastructure asaService,IaaS)。基于 Internet 的服務(wù)(如存儲(chǔ)和數(shù)據(jù)庫(kù))是 IaaS的一部分。Internet上其他類型的服務(wù)包括平臺(tái)即服務(wù)(Platform as aService,PaaS)和軟件即服務(wù)(Software as aService,SaaS)。PaaS提供了用戶可以訪問的完整或部分的應(yīng)用程序開發(fā),SaaS則提供了完整的可直接使用的應(yīng)用程序,比如通過 Internet管理企業(yè)資源。
作為 Infrastructure as a Service (IaaS) 在實(shí)際應(yīng)用中的一個(gè)例子,The NewYorkTimes 使用成百上千臺(tái) Amazon EC2 實(shí)例在 36 小時(shí)內(nèi)處理 TB 級(jí)的文檔數(shù)據(jù)。如果沒有 EC2,TheNewYork Times 處理這些數(shù)據(jù)將要花費(fèi)數(shù)天或者數(shù)月的時(shí)間。
IaaS 分為兩種用法:公共的和私有的。AmazonEC2在基礎(chǔ)設(shè)施云中使用公共服務(wù)器池。更加私有化的服務(wù)會(huì)使用企業(yè)內(nèi)部數(shù)據(jù)中心的一組公用或私有服務(wù)器池。如果在企業(yè)數(shù)據(jù)中心環(huán)境中
簡(jiǎn)介
您可能非常關(guān)注云計(jì)算和網(wǎng)格計(jì)算的比較。本文介紹了云計(jì)算服務(wù)類型,云計(jì)算和網(wǎng)格計(jì)算的相似與不同。同時(shí)本文探討了云計(jì)算優(yōu)于網(wǎng)格計(jì)算的地方,兩者面臨的共同問題以及一些安全方面的問題。本文以AmazonWeb Services 為例。
實(shí)現(xiàn)云計(jì)算需要三個(gè)部分:瘦客戶機(jī)(或者能夠在胖瘦之間切換的客戶機(jī))、網(wǎng)格計(jì)算和效用計(jì)算。網(wǎng)格計(jì)算將獨(dú)立的計(jì)算機(jī)連接成一個(gè)大的基礎(chǔ)設(shè)施,充分利用閑置的資源。效用計(jì)算就是支付在共享服務(wù)器上使用的服務(wù),就好象支付公共事業(yè)一樣(比如電力、天然氣等)。
通過網(wǎng)格計(jì)算,可以把計(jì)算資源作為能夠開啟關(guān)閉的公用事業(yè)來(lái)提供。云計(jì)算更進(jìn)一步,可以隨需提供計(jì)算資源。這樣在使用公用定價(jià)時(shí)就可以避免過度供給。在滿足數(shù)百萬(wàn)用戶的需求時(shí)也消除了過度供給的需要。
基礎(chǔ)設(shè)施即服務(wù)
消費(fèi)者通過 Internet 可以從完善的計(jì)算機(jī)基礎(chǔ)設(shè)施獲得服務(wù)。這類服務(wù)稱為基礎(chǔ)設(shè)施即服務(wù)(Infrastructure asaService,IaaS); Internet 的服務(wù)(如存儲(chǔ)和數(shù)據(jù)庫(kù))是 IaaS的一部分。Internet上其他類型的服務(wù)包括平臺(tái)即服務(wù)(Platform as aService,PaaS)和軟件即服務(wù)(Software as aService,SaaS)。PaaS提供了用戶可以訪問的完整或部分的應(yīng)用程序開發(fā),SaaS則提供了完整的可直接使用的應(yīng)用程序,比如通過 Internet管理企業(yè)資源。
作為 Infrastructure as a Service (IaaS) 在實(shí)際應(yīng)用中的一個(gè)例子,The NewYorkTimes 使用成百上千臺(tái) Amazon EC2 實(shí)例在 36 小時(shí)內(nèi)處理 TB 級(jí)的文檔數(shù)據(jù)。如果沒有 EC2,TheNewYork Times 處理這些數(shù)據(jù)將要花費(fèi)數(shù)天或者數(shù)月的時(shí)間。
IaaS 分為兩種用法:公共的和私有的。AmazonEC2在基礎(chǔ)設(shè)施云中使用公共服務(wù)器池。更加私有化的服務(wù)會(huì)使用企業(yè)內(nèi)部數(shù)據(jù)中心的一組公用或私有服務(wù)器池。如果在企業(yè)數(shù)據(jù)中心環(huán)境中開發(fā)軟件,那么這兩種類型都能使用,而且使用EC2臨時(shí)擴(kuò)展資源的成本也很低 — 比方說測(cè)試。結(jié)合使用兩者可以更快地開發(fā)應(yīng)用程序和服務(wù),縮短開發(fā)和測(cè)試周期。
Amazon Web 服務(wù)
使用 EC2,客戶可以創(chuàng)建自己的 Amazon MachineImages(AMI),包括操作系統(tǒng)、應(yīng)用程序和數(shù)據(jù),并控制在給定的時(shí)候每個(gè)AMI有多少實(shí)例運(yùn)行?蛻魹檎加玫膶(shí)例時(shí)間(和帶寬)付費(fèi),高峰的時(shí)候增加計(jì)算資源,不需要的時(shí)候減少計(jì)算資源。EC2、SimpleStorageService (S3) 及其他 Amazon 產(chǎn)品能夠通過 Internet 為數(shù)百萬(wàn)用戶提供服務(wù)。
Amazon 提供了從單核的 x86 服務(wù)器到 8 核的x86_64服務(wù)器等五種不同類型的服務(wù)器。提供服務(wù)實(shí)例不需要知道使用了哪種服務(wù)器?梢园褜(shí)例放在不同的地理位置或者可用區(qū)域內(nèi)。Amazon允許使用彈性IP 地址,可以動(dòng)態(tài)分配給實(shí)例。
云計(jì)算
使用云計(jì)算,企業(yè)馬上就能大幅提高自己的計(jì)算能力,而不需要投資新的基礎(chǔ)設(shè)施,開展新的培訓(xùn)或者購(gòu)買新的軟件許可證。云計(jì)算最適合希望將數(shù)據(jù)中心基礎(chǔ)設(shè)施全部外包的中小型企業(yè),或者希望不用花費(fèi)高額成本建立更大的數(shù)據(jù)中心就可獲得更高負(fù)荷能力的大型企業(yè)。不論哪種情況,服務(wù)消費(fèi)者都在Internet上使用所需要的服務(wù)并只為所使用的服務(wù)付費(fèi)。
服務(wù)消費(fèi)者不用再守在 PC 旁邊使用 PC上的應(yīng)用程序,或者購(gòu)買針對(duì)特定智能手機(jī)、PDA及其他設(shè)備的版本。消費(fèi)者不必?fù)碛性浦械幕A(chǔ)設(shè)施、軟件或平臺(tái),因此降低了前期成本、資本支出和運(yùn)營(yíng)成本。消費(fèi)者也不用關(guān)心云中的服務(wù)器和網(wǎng)絡(luò)怎么維護(hù)。消費(fèi)者可以訪問任何地方的多臺(tái)服務(wù)器,不需要知道使用的是哪一臺(tái)服務(wù)器以及它們的位置。
網(wǎng)格計(jì)算
云計(jì)算
是從網(wǎng)格計(jì)算演化來(lái)的,能夠隨需應(yīng)變地提供資源。網(wǎng)格計(jì)算可以在云中,也可能不在,這取決于什么樣的用戶在使用它。如果用戶是系統(tǒng)管理員和集成商,他們就會(huì)關(guān)心如何維護(hù)云。他們升級(jí)、安裝和虛擬化服務(wù)器與應(yīng)用程序。如果用戶是消費(fèi)者,就不必關(guān)心系統(tǒng)是如何運(yùn)行的。
網(wǎng)格計(jì)算
要求軟件的使用可以分為多個(gè)部分,將程序的片段作為大的系統(tǒng)映像傳遞給幾千個(gè)計(jì)算機(jī)中。網(wǎng)格的一個(gè)問題是如果某個(gè)節(jié)點(diǎn)上的軟件片段失效,可能會(huì)影響到其他節(jié)點(diǎn)上的軟件片段。如果這個(gè)片段在其他節(jié)點(diǎn)上可以使用故障轉(zhuǎn)移組件,那么就可以緩解問題,但是如果軟件片段依賴其他軟件片段完成一項(xiàng)或多項(xiàng)網(wǎng)格計(jì)算任務(wù),那么問題仍然得不到解決。大型系統(tǒng)鏡像以及用于操作和維護(hù)的相關(guān)硬件可能造成很高的資本和運(yùn)營(yíng)支出。
異同點(diǎn)
云計(jì)算
和網(wǎng)格計(jì)算都是可伸縮的?缮炜s性是通過獨(dú)立運(yùn)行在通過 Web服務(wù)連接的各種操作系統(tǒng)上的應(yīng)用程序?qū)嵗呢?fù)載平衡實(shí)現(xiàn)的。CPU和網(wǎng)絡(luò)帶寬根據(jù)需要分配和回收。系統(tǒng)存儲(chǔ)能力根據(jù)特定時(shí)間的用戶數(shù)量、實(shí)例的數(shù)量和傳輸?shù)臄?shù)據(jù)量進(jìn)行調(diào)整。
兩種計(jì)算類型都涉及到多承租(multitenancy)和多任務(wù),即很多用戶可以執(zhí)行不同的任務(wù),訪問一個(gè)或多個(gè)應(yīng)用程序?qū)嵗Mㄟ^大型的用戶池共享資源來(lái)降低基礎(chǔ)設(shè)施成本,提高峰值負(fù)荷能力。云計(jì)算和網(wǎng)格計(jì)算都提供了服務(wù)水平協(xié)議(SLA)以保證可用性,比如99%。如果服務(wù)達(dá)不到承諾的正常運(yùn)行時(shí)間,消費(fèi)者將由于數(shù)據(jù)延遲而得到服務(wù)補(bǔ)償。
Amazon S3 在云中提供了存儲(chǔ)和數(shù)據(jù)檢索 Web 服務(wù)。設(shè)置在S3中能夠存儲(chǔ)的對(duì)象數(shù)量的最大上限?梢源鎯(chǔ)只有一個(gè)字節(jié)的對(duì)象,也能存儲(chǔ) 5 GB 甚至 TB 級(jí)的對(duì)象。S3對(duì)于對(duì)象的每個(gè)存儲(chǔ)位置使用“桶(bucket)” 作為容器。這些數(shù)據(jù)采用和 Amazon電子商務(wù)網(wǎng)站相同的數(shù)據(jù)存儲(chǔ)基礎(chǔ)設(shè)施安全地實(shí)現(xiàn)存儲(chǔ)。
雖然網(wǎng)格中的存儲(chǔ)計(jì)算非常適合數(shù)據(jù)密集型存儲(chǔ),但是存儲(chǔ)一個(gè)字節(jié)大小的對(duì)象從經(jīng)濟(jì)上來(lái)說不合適。在數(shù)據(jù)網(wǎng)格中,分布式數(shù)據(jù)的數(shù)量必須足夠大才能發(fā)揮最大效益。
計(jì)算型網(wǎng)格關(guān)注的是計(jì)算量非常大的操作。云計(jì)算中的 Amazon Web Services 提供了兩種實(shí)例:標(biāo)準(zhǔn)和高CPU。
需要考慮的問題
云計(jì)算
和網(wǎng)格計(jì)算面臨著四個(gè)問題:閾值策略、互操作性、隱含成本、異常行為。
閾值策略
假設(shè)有一個(gè)程序在云中進(jìn)行信用卡驗(yàn)證,并且碰到了十二月份的銷售旺季。于是我們發(fā)現(xiàn)了更高的需求,于是創(chuàng)建了更多的實(shí)例來(lái)滿足這種需求。隨著銷售旺季的過去,這種需求就會(huì)減少,資源實(shí)例被回收并重新分配給其他應(yīng)用。
為了檢驗(yàn)程序能否工作,在轉(zhuǎn)入真正的生產(chǎn)環(huán)境之前,在可行性試驗(yàn)(pilotstudy)階段需要開發(fā)、改進(jìn)并實(shí)現(xiàn)一種閾值策略?纯催@種策略能否發(fā)現(xiàn)需求的突然增加,從而創(chuàng)建更多的實(shí)例以滿足這些需求?纯慈绾位厥臻e置的資源并轉(zhuǎn)移到其他工作。
互操作性問題
如果企業(yè)外包或者和一家云計(jì)算供應(yīng)商共同創(chuàng)建應(yīng)用程序,可能會(huì)發(fā)現(xiàn)很難轉(zhuǎn)向其他采用私有API或者具有不同導(dǎo)入和導(dǎo)出數(shù)據(jù)格式的供應(yīng)商。這就造成了兩家云計(jì)算供應(yīng)商之間的互操作性問題?赡苄枰淖償(shù)據(jù)的格式或者應(yīng)用程序邏輯。雖然還沒有出現(xiàn)API或者數(shù)據(jù)導(dǎo)入和導(dǎo)出的云計(jì)算業(yè)界標(biāo)準(zhǔn),但 IBM 和 Amazon Web Services 展開了合作以實(shí)現(xiàn)互操作性。
隱含成本
云計(jì)算
并沒有告訴您隱含的成本有哪些。比方說,如果企業(yè)要使用服務(wù)提供商提供的云中的存儲(chǔ)服務(wù)和包含TB級(jí)數(shù)據(jù)的數(shù)據(jù)庫(kù)應(yīng)用程序,可能需要支付很高的網(wǎng)絡(luò)費(fèi)用。這筆費(fèi)用要比在購(gòu)買新的基礎(chǔ)設(shè)施、培訓(xùn)新的雇員或者購(gòu)買新的軟件許可證方面節(jié)省的成本高。網(wǎng)絡(luò)成本的另一個(gè)例子是,如果企業(yè)距離云提供商很遠(yuǎn),可能會(huì)遇到很長(zhǎng)的延遲,尤其是在流量大的情況下。
無(wú)法預(yù)料的行為
假設(shè)信用卡驗(yàn)證應(yīng)用程序在企業(yè)內(nèi)部數(shù)據(jù)中心運(yùn)行的很好。需要通過可行性試驗(yàn)對(duì)云中的應(yīng)用程序進(jìn)行檢驗(yàn),以檢查是否存在無(wú)法預(yù)料的行為。比方說,檢查應(yīng)用程序如何驗(yàn)證信用卡,在十二月份的銷售高峰期如何分配資源和釋放閑置的資源,并轉(zhuǎn)向其他任務(wù)。如果發(fā)現(xiàn)信用卡驗(yàn)證或者釋放閑置資源出現(xiàn)異常的結(jié)果,那么就需要在將其放入云中之前解決這些問題。
安全問題
2008 年 2 月,Amazon S3 和 EC2 遭遇了三個(gè)小時(shí)的宕機(jī)。盡管SLA提供了數(shù)據(jù)恢復(fù)和針對(duì)這種情況的補(bǔ)償,但這個(gè)期間用戶失去了銷售機(jī)會(huì),高管人員得不到需要的重要業(yè)務(wù)信息。
不要被動(dòng)地等待宕機(jī)的發(fā)生,用戶應(yīng)該自己檢查安全性—看看供應(yīng)商能在多大程度上恢復(fù)數(shù)據(jù)。測(cè)試非常簡(jiǎn)單。不需要特殊的工具。只需要請(qǐng)求過去存儲(chǔ)的數(shù)據(jù)看看供應(yīng)商恢復(fù)它需要多長(zhǎng)時(shí)間。如果時(shí)間很長(zhǎng),問問供應(yīng)商在不同情況下能獲得多少服務(wù)補(bǔ)償。檢查校驗(yàn)和是否匹配原來(lái)的數(shù)據(jù)。
安全測(cè)試的一個(gè)方面是用一種可信的算法在本地機(jī)器上加密數(shù)據(jù),然后使用解密密匙訪問云中遠(yuǎn)程服務(wù)器上的數(shù)據(jù)。如果無(wú)法讀取曾經(jīng)訪問過的數(shù)據(jù),那么就是加密密匙被破壞了或者供應(yīng)商使用了自己的加密算法。可能需要向供應(yīng)商了解該算法。
另一個(gè)是云中數(shù)據(jù)潛在的問題。為了保護(hù)數(shù)據(jù),可能需要管理自己的私有密匙。詢問供應(yīng)商私有密匙的管理問題。如果簽署的話,Amazon將提供證書。
云中的軟件開發(fā)
使用高端數(shù)據(jù)庫(kù)開發(fā)軟件,最可能的選擇是使用企業(yè)內(nèi)部數(shù)據(jù)中心的云服務(wù)器池,測(cè)試的時(shí)候可以使用 AmazonWeb服務(wù)臨時(shí)擴(kuò)展資源。這樣項(xiàng)目管理人員可以更好地控制成本、管理安全問題和分配資源。項(xiàng)目管理人員可以為不同的云類型分配不同的硬件資源:Web開發(fā)云、測(cè)試云和產(chǎn)品云。不同類型的云成本也是不一樣的。開發(fā)云的單位時(shí)間成本可能低于產(chǎn)品云,因?yàn)镾LA和安全性等附加特性都分配在產(chǎn)品云中。
管理人員可以將項(xiàng)目限制為特定的云。比方說,產(chǎn)品云的部分服務(wù)可用于產(chǎn)品配置。開發(fā)云的服務(wù)僅用于開發(fā)。為了優(yōu)化軟件開發(fā)項(xiàng)目不同階段的資產(chǎn),管理人員可以按項(xiàng)目和用戶跟蹤使用情況,從而獲得成本數(shù)據(jù)。如果發(fā)現(xiàn)成本很高,管理人員可花費(fèi)較低的成本使用AmazonEC2 臨時(shí)擴(kuò)展資源,只要安全和數(shù)據(jù)恢復(fù)問題已經(jīng)得到解決。