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