
亞馬遜是互聯(lián)網(wǎng)上最大的在線零售商,但是同時(shí)也為獨(dú)立開發(fā)人員以及開發(fā)商提供云計(jì)算服務(wù)平臺(tái)。亞馬遜將他們的云計(jì)算平臺(tái)稱為彈性計(jì)算云(Elastic Compute Cloud,EC2),它是最早提供遠(yuǎn)程云計(jì)算平臺(tái)服務(wù)的公司。
開放的服務(wù)
與Google提供的云計(jì)算服務(wù)不同,Google僅為自己在互聯(lián)網(wǎng)上的應(yīng)用提供云計(jì)算平臺(tái),獨(dú)立開發(fā)商或者開發(fā)人員無(wú)法在這個(gè)平臺(tái)上工作,因此只能轉(zhuǎn)而通過開源的Hadoop軟件支持來開發(fā)云計(jì)算應(yīng)用。亞馬遜的彈性計(jì)算云服務(wù)也和IBM的云計(jì)算服務(wù)平臺(tái)不一樣,亞馬遜不銷售物理的云計(jì)算服務(wù)平臺(tái),沒有類似于“藍(lán)云”一樣的計(jì)算平臺(tái)。亞馬遜將自己的彈性計(jì)算云建立在公司內(nèi)部的大規(guī)模集群計(jì)算的平臺(tái)之上,而用戶可以通過彈性計(jì)算云的網(wǎng)絡(luò)界面去操作在云計(jì)算平臺(tái)上運(yùn)行的各個(gè)實(shí)例(Instance),而付費(fèi)方式則由用戶的使用狀況決定,即用戶僅需要為自己所使用的計(jì)算平臺(tái)實(shí)例付費(fèi),運(yùn)行結(jié)束后計(jì)費(fèi)也隨之結(jié)束。
彈性計(jì)算云從沿革上來看,并不是亞馬遜公司推出的第一項(xiàng)這種服務(wù),它由名為亞馬遜網(wǎng)絡(luò)服務(wù)的現(xiàn)有平臺(tái)發(fā)展而來。早在2006年3月,亞馬遜就發(fā)布了簡(jiǎn)單存儲(chǔ)服務(wù)(Simple Storage Service,S3),這種存儲(chǔ)服務(wù)按照每個(gè)月類似租金的形式進(jìn)行服務(wù)付費(fèi),同時(shí)用戶還需要為相應(yīng)的網(wǎng)絡(luò)流量進(jìn)行付費(fèi)。亞馬遜網(wǎng)絡(luò)服務(wù)平臺(tái)使用REST (Representational State Transfer)和簡(jiǎn)單對(duì)象訪問協(xié)議(SOAP)等標(biāo)準(zhǔn)接口,用戶可以通過這些接口訪問到相應(yīng)的存儲(chǔ)服務(wù)。
2007年7月,亞馬遜公司推出了簡(jiǎn)單隊(duì)列服務(wù)(Simple Queue Service,SQS),這項(xiàng)服務(wù)使托管主機(jī)可以存儲(chǔ)計(jì)算機(jī)之間發(fā)送的消息。通過這一項(xiàng)服務(wù),應(yīng)用程序編寫人員可以在分布式程序之間進(jìn)行數(shù)據(jù)傳遞,而無(wú)須考慮消息丟失的問題。通過這種服務(wù)方式,即使消息的接收方還沒有模塊啟動(dòng)也沒有關(guān)系。服務(wù)內(nèi)部會(huì)緩存相應(yīng)的消息,而一旦有消息接收組件被啟動(dòng)運(yùn)行,則隊(duì)列服務(wù)將消息提交給相應(yīng)的運(yùn)行模塊進(jìn)行處理。同樣的,用戶必須為這種消息傳遞服務(wù)進(jìn)行付費(fèi)使用,計(jì)費(fèi)的規(guī)則與存儲(chǔ)計(jì)費(fèi)規(guī)則類似,依據(jù)消息的個(gè)數(shù)以及消息傳遞的大小進(jìn)行收費(fèi)。
在亞馬遜提供上述服務(wù)的時(shí)候,并沒有從頭開始開發(fā)相應(yīng)的網(wǎng)絡(luò)服務(wù)組件,而是對(duì)公司已有的平臺(tái)進(jìn)行優(yōu)化和改造,一方面滿足了本身網(wǎng)絡(luò)零售購(gòu)物應(yīng)用程序的需求,另一方面也供外部開發(fā)人員使用。
在開放了上述的服務(wù)接口之后,亞馬遜公司進(jìn)一步在此基礎(chǔ)上開發(fā)了EC2系統(tǒng),并且開放給外部開發(fā)人員使用。
靈活的工作模式
亞馬遜的云計(jì)算模式沿襲了簡(jiǎn)單易用的傳統(tǒng),并且建立在亞馬遜公司現(xiàn)有的云計(jì)算基礎(chǔ)平臺(tái)之上。彈性計(jì)算云用戶使用客戶端通過SOAP over HTTPS協(xié)議來實(shí)現(xiàn)與亞馬遜彈性計(jì)算云內(nèi)部的實(shí)例進(jìn)行交互。使用HTTPS協(xié)議的原因是為了保證遠(yuǎn)端連接的安全性,避免用戶數(shù)據(jù)在傳輸?shù)倪^程中造成泄露。因此,從使用模式上來說,彈性計(jì)算云平臺(tái)為用戶或者開發(fā)人員提供了一個(gè)虛擬的集群環(huán)境,使得用戶的應(yīng)用具有充分的靈活性,同時(shí)也減輕了云計(jì)算平臺(tái)擁有者(亞馬遜公司)的管理負(fù)擔(dān)。
而彈性計(jì)算云中的實(shí)例是一些真正在運(yùn)行中的虛擬機(jī)服務(wù)器,每一個(gè)實(shí)例代表一個(gè)運(yùn)行中的虛擬機(jī)。對(duì)于提供給某一個(gè)用戶的虛擬機(jī),該用戶具有完整的訪問權(quán)限,包括針對(duì)此虛擬機(jī)的管理員用戶權(quán)限。虛擬服務(wù)器的收費(fèi)也是根據(jù)虛擬機(jī)的能力進(jìn)行計(jì)算的,因此,實(shí)際上用戶租用的是虛擬的計(jì)算能力,簡(jiǎn)化了計(jì)費(fèi)方式。在彈性計(jì)算云中,提供了三種不同能力的虛擬機(jī)實(shí)例,具有不同的收費(fèi)價(jià)格。例如,其中默認(rèn)的也是最小的運(yùn)行實(shí)例是1.7GB的內(nèi)存,1個(gè)EC2的計(jì)算單元(1虛擬的計(jì)算核以相關(guān)的計(jì)算單元),160GB的虛擬機(jī)內(nèi)部存儲(chǔ)容量,是一個(gè)32位的計(jì)算平臺(tái),收費(fèi)標(biāo)準(zhǔn)為每個(gè)小時(shí)10美分。在當(dāng)前的藍(lán)計(jì)算平臺(tái)中,還有兩種性能更加強(qiáng)勁的虛擬機(jī)實(shí)例可供使用,當(dāng)然價(jià)格也更加昂貴一點(diǎn)。
由于用戶在部署網(wǎng)絡(luò)程序的時(shí)候,一般會(huì)使用超過一個(gè)運(yùn)行實(shí)例,需要很多個(gè)實(shí)例共同工作。彈性計(jì)算云的內(nèi)部也架設(shè)了實(shí)例之間的內(nèi)部網(wǎng)絡(luò),使得用戶的應(yīng)用程序在不同的實(shí)例之間可以通信。在彈性計(jì)算云中的每一個(gè)計(jì)算實(shí)例都具有一個(gè)內(nèi)部的IP地址,用戶程序可以使用內(nèi)部IP地址進(jìn)行數(shù)據(jù)通信,以獲得數(shù)據(jù)通信的最好性能。每一個(gè)實(shí)例也具有外部的地址,用戶可以將分配給自己的彈性IP地址分配給自己的運(yùn)行實(shí)例,使得建立在彈性計(jì)算云上的服務(wù)系統(tǒng)能夠?yàn)橥獠刻峁┓?wù)。當(dāng)然,亞馬遜公司也對(duì)網(wǎng)絡(luò)上的服務(wù)流量計(jì)費(fèi),計(jì)費(fèi)規(guī)則也按照內(nèi)部傳輸以及外部傳輸進(jìn)行分開。
總而言之,亞馬遜通過提供彈性計(jì)算云,減少了小規(guī)模軟件開發(fā)人員對(duì)于集群系統(tǒng)的維護(hù),并且收費(fèi)方式相對(duì)簡(jiǎn)單明了,用戶使用多少資源,只需要為這一部分資源付費(fèi)即可。這種付費(fèi)方式與傳統(tǒng)的主機(jī)托管模式不同。傳統(tǒng)的主機(jī)托管模式讓用戶將主機(jī)放入到托管公司,用戶一般需要根據(jù)最大或者計(jì)劃的容量進(jìn)行付費(fèi),而不是根據(jù)使用情況進(jìn)行付費(fèi),而且,可能還需要保證服務(wù)的可靠性、可用性等,付出的費(fèi)用更多,而很多時(shí)候,服務(wù)并沒有進(jìn)行滿額資源使用。而根據(jù)亞馬遜的模式,用戶只需要為實(shí)際使用情況付費(fèi)即可。
在用戶使用模式上,亞馬遜的彈性計(jì)算云要求用戶要?jiǎng)?chuàng)建基于亞馬遜規(guī)格的服務(wù)器映像(名為亞馬遜機(jī)器映像即亞馬遜Machine Image, AMI)。彈性計(jì)算云的目標(biāo)是服務(wù)器映像能夠擁有用戶想要的任何一種操作系統(tǒng)、應(yīng)用程序、配置、登錄和安全機(jī)制,但是當(dāng)前情況下,它只支持Linux內(nèi)核。通過創(chuàng)建自己的AMI,或者使用亞馬遜預(yù)先為用戶提供的AMI,用戶在完成這一步驟后將AMI上傳到彈性計(jì)算云平臺(tái),然后調(diào)用亞馬遜的應(yīng)用編程接口(API),對(duì)AMI進(jìn)行使用與管理。AMI實(shí)際上就是虛擬機(jī)的映像,用戶可以使用它們來完成任何工作,例如運(yùn)行數(shù)據(jù)庫(kù)服務(wù)器,構(gòu)建快速網(wǎng)絡(luò)下載的平臺(tái),提供外部搜索服務(wù)甚至可以出租自己具有特色的AMI而獲得收益。用戶所擁有的多個(gè)AMI可以通過通信而彼此合作,就像當(dāng)前的集群計(jì)算服務(wù)平臺(tái)一樣。
在彈性計(jì)算云的將來發(fā)展過程中,亞馬遜也規(guī)劃了如何在云計(jì)算平臺(tái)之上幫助用戶開發(fā)Web 2.0的應(yīng)用程序。亞馬遜認(rèn)為除了它所依賴的網(wǎng)絡(luò)零售業(yè)務(wù)之外,云計(jì)算也是亞馬遜公司的核心價(jià)值所在。可以預(yù)見,在將來的發(fā)展過程中,亞馬遜必然會(huì)在彈性計(jì)算云的平臺(tái)上添加更多的網(wǎng)絡(luò)服務(wù)組件模塊,為用戶構(gòu)建云計(jì)算應(yīng)用提供方便。
CIO頻道人物視窗
CIO頻道方案案例庫(kù)
大數(shù)據(jù)建設(shè)方案案例庫(kù)
電子政務(wù)建設(shè)方案案例庫(kù)
互聯(lián)集成系統(tǒng)構(gòu)建方案案例庫(kù)
商務(wù)智能建設(shè)方案案例庫(kù)
系統(tǒng)集成類軟件信息研發(fā)企業(yè)名錄