注:本文本人譯自https://dzone.com/refcardz/getting-started-cloud,原作者David Posin 和 Daniel Rubio蜓席。轉(zhuǎn)載請注明出處。
1. 關(guān)于云計算
云計算概念囊括了廣泛的為企業(yè)和消費者提供的服務(wù)捐下。從根本上講邢滑,云計算是指基于特定目的通過互聯(lián)網(wǎng)使用位于世界上某個地方的資源蹂午。
與云服務(wù)的交互通常是通過瀏覽器(web browser)或者命令行(CLI)工具來實現(xiàn)的,通常不需要安裝軟件和硬件翔怎,并且不用租用數(shù)據(jù)中心窃诉。
Google和Amazon是最早進(jìn)入云計算領(lǐng)域的兩家廠商,Microsoft緊隨其后赤套。隨著時間推移飘痛,云計算廠商的產(chǎn)品線逐漸成熟,同時競爭也不斷加劇容握。IBM和Rackspace宣脉,以及其他公司也都相繼加入了競爭。云計算領(lǐng)域現(xiàn)在有無數(shù)的公司在提供服務(wù)剔氏。本文主要聚焦在Google塑猖、Amazon和Microsoft這幾家廠商竹祷,主要原因是在撰寫本文的時候他們是市場上云計算的主要領(lǐng)導(dǎo)者,并且都擁有相當(dāng)成熟的產(chǎn)品線羊苟。
2. 云計算的類型
云計算主要分為三種主要的類型:IaaS, PaaS 和 SaaS. 以下會詳細(xì)討論每種類型.
IaaS (Infrastructure as a Service) - 基礎(chǔ)設(shè)施即服務(wù)
IaaS是人們討論云計算時候最先想到的塑陵。IaaS模擬了企業(yè)傳統(tǒng)上用來創(chuàng)建內(nèi)部和外部網(wǎng)絡(luò)系統(tǒng)而購買的硬件設(shè)備。安裝硬件和連接到物理網(wǎng)絡(luò)這些繁瑣的工作現(xiàn)在通過創(chuàng)建一些配置就可以實現(xiàn)了践险。幾乎傳統(tǒng)網(wǎng)絡(luò)的每一個部分都可以提供為云服務(wù)猿妈。
例如:
- 服務(wù)器(Servers)
- 防火墻(Firewalls)
- 路由器(Routers)
- 負(fù)載均衡器( Load Balancers)
- 內(nèi)容提供網(wǎng)絡(luò) CDN (Content Delivery Network)
優(yōu)點:
- 沒有硬件:不需要設(shè)備的投資
- 花費跟使用量相關(guān):初始投資會比購買設(shè)備少得多吹菱。
- 可擴(kuò)展性:網(wǎng)絡(luò)可以很容易的擴(kuò)展巍虫、收回或者轉(zhuǎn)換,而不會因租約或者收購而引起財務(wù)影響鳍刷。
- 快速管理:能夠快速地解決網(wǎng)絡(luò)問題或改進(jìn)網(wǎng)絡(luò)配置占遥。
缺點:
- 學(xué)習(xí)曲線陡峭:需要花費相當(dāng)大的時間和精力才能夠全面利用IaaS服務(wù)提供的各種可能性。
- 不受自己控制:提供網(wǎng)絡(luò)支持的各種資源受控于其他公司输瓜。
- 服務(wù)協(xié)議:與IaaS提供商簽訂的服務(wù)使用協(xié)議可能需要法律方面的審核瓦胎。
- 網(wǎng)絡(luò)可靠性:大多數(shù)的Iaas提供商提供99%以上的服務(wù)可用時間,所以不用太擔(dān)心尤揣,但總還是有一定的不可用的幾率發(fā)生搔啊。
SaaS (Software as a Service) - 軟件即服務(wù)
SaaS,軟件即服務(wù)北戏,在現(xiàn)在互聯(lián)網(wǎng)時代是如此常見负芋,以至于經(jīng)常被人忽視它也是云計算領(lǐng)域的一部分。SaaS是指提供一系列業(yè)務(wù)的基于互聯(lián)網(wǎng)的產(chǎn)品嗜愈,它包括從電子郵箱服務(wù)到人力管理的各種產(chǎn)品旧蛾。
傳統(tǒng)上與SaaS產(chǎn)品交互主要是通過web瀏覽器來實現(xiàn)。隨著移動設(shè)備的普及蠕嫁,交互方式也在慢慢的不斷改變∠翘欤現(xiàn)在大多數(shù)的SaaS產(chǎn)品都提供網(wǎng)頁和移動設(shè)備的客戶端。
例子:
- 郵箱服務(wù): Gmail, Outlook.com
- 客戶關(guān)系管理 (CRM): Salesforce
- 辦公: Office.com, Dropbox, Box.com, Google Docs
- 應(yīng)用支持: InsideOps, Logentries, Google Forms
優(yōu)點:
- 受管理的服務(wù):SaaS產(chǎn)品的客戶只用聚焦在產(chǎn)品的具體使用即可剃毒,不用關(guān)心具體軟件或者硬件是如何運行的病袄。
- 快速和定期的升級:客戶只用關(guān)心產(chǎn)品本身;SaaS提供商會持續(xù)的改進(jìn)赘阀、修復(fù)益缠、維護(hù)產(chǎn)品從而不斷改進(jìn)他們提供產(chǎn)品的可用性。
- 跨平臺: 企業(yè)級的SaaS產(chǎn)品通常都能工作在所有的現(xiàn)代瀏覽器和各種移動設(shè)備上纤壁。
- 專有的客戶支持:如果有什么東西需要改正左刽,你的內(nèi)部資源不用中斷自己的工作去做這些事情,而是交由SaaS提供商去做酌媒。
缺點:
- 產(chǎn)品更新不受自己控制:產(chǎn)品的開發(fā)和功能的增加不受你的控制欠痴。當(dāng)然迄靠,大多數(shù)的供應(yīng)商都為客戶提供了反饋需求的渠道。
- 服務(wù)協(xié)議:與SaaS提供商簽訂的服務(wù)使用協(xié)議可能需要法律方面的審核喇辽。
- 定制困難:在SaaS 產(chǎn)品中為你公司的量身定制某些特定需求可能很難做到或者成本很高掌挚。
- 可靠性:大多數(shù)的SaaS產(chǎn)品提供99%以上的服務(wù)可用時間,但總還是有一定的不可用的幾率發(fā)生菩咨。
PaaS (Platform as a Service) - 平臺即服務(wù)
PaaS吠式,平臺即服務(wù),相比SaaS和IaaS一直受到關(guān)注較少抽米,直到最近情形才有所改變走哺。PaaS提供的能力最近越來越受到重視,因此有越來越多的PaaS產(chǎn)品不斷涌現(xiàn)禁漓。PaaS處于IaaS和SaaS的中間位置妹萨。PaaS服務(wù)允許客戶在現(xiàn)有工具基礎(chǔ)之上創(chuàng)建自己定制化的產(chǎn)品。
例子:
- 定制交互式跑步比賽:RaceLink
- 應(yīng)用構(gòu)建: Google App Engine, SAP Hana, Cloud Foundry
優(yōu)點: (與SaaS類似)
- 快速和定期的升級:客戶只用關(guān)心產(chǎn)品本身标捺;PaaS提供商會持續(xù)的改進(jìn)懊纳、修復(fù)、維護(hù)產(chǎn)品從而不斷改進(jìn)他們提供產(chǎn)品的可用性亡容。
- 跨平臺: 構(gòu)建在企業(yè)級的PaaS產(chǎn)品上的應(yīng)用通常都能工作在所有的現(xiàn)代瀏覽器和各種移動設(shè)備上嗤疯。
- 定制化:使用PaaS產(chǎn)品作為起點創(chuàng)建你自己定制化的應(yīng)用意味著你的應(yīng)用可以更適應(yīng)你的業(yè)務(wù)和流程。
- RAD快速開發(fā) (Rapid Application Development): 你的員工或者客戶在PaaS上創(chuàng)建應(yīng)用會比傳統(tǒng)的應(yīng)用開發(fā)更為快捷闺兢。
缺點:(與SaaS類似)
- 產(chǎn)品更新不受自己控制:PaaS產(chǎn)品的開發(fā)和功能的增加不受你的控制茂缚。當(dāng)然,大多數(shù)的供應(yīng)商都為客戶提供了反饋需求的渠道
- 服務(wù)協(xié)議:與PaaS提供商簽訂的服務(wù)使用協(xié)議可能需要法律方面的審核列敲。
- 可靠性:大多數(shù)的PaaS產(chǎn)品提供99%以上的服務(wù)可用時間阱佛,但總還是有一定的不可用的幾率發(fā)生。
- 自己內(nèi)部的開發(fā)時間仍需要考慮:內(nèi)部員工可能還需要時間開發(fā)戴而、修正凑术、改進(jìn)自己在PaaS創(chuàng)建的應(yīng)用。
3. 云基礎(chǔ)
什么是“云”?
“云”是一個簡稱所意,用來描述巨大的連接在一起的服務(wù)器網(wǎng)絡(luò)淮逊,這些服務(wù)器能夠提供計算資源,用戶不用關(guān)心它們具體位于何處扶踊⌒古簦“云”給人的感覺就是一個龐大的具有強大計算能力的無形的計算機(jī)群,在它上面運行著各種應(yīng)用軟件秧耗,從Emai到連接到手機(jī)端的各種應(yīng)用备籽。
在商業(yè)詞匯里,是沒有“云”這個詞的。云計算其實就是不同服務(wù)商提供的一系列的授權(quán)服務(wù)车猬。云服務(wù)剝離了技術(shù)管理和技術(shù)獲取上的依賴霉猛,而將其替代為在別處管理的按需使用的產(chǎn)品。
為了更好的理解云服務(wù)珠闰,讓我們將云與其他傳統(tǒng)的技術(shù)選項做個比較:
類型 | 描述 |
---|---|
On-premise (內(nèi)部部署) | 軟件和硬件部署于公司內(nèi)部惜浅,能夠在公司內(nèi)的某個物理位置進(jìn)行直接管理。On-premise的硬件和軟件通撤龋總是運行中的且隨時可用的坛悉。 |
Off-premise (外部部署) | 物理的硬件和軟件位于某個特定的地點,常常是租用的空間承绸。Off-premise的硬件和軟件通常是運行中的而且是客戶專用的裸影。這一般指租用的數(shù)據(jù)中心或者磁帶備份地點等等。 |
Cloud (云) | 物理的或者虛擬化的硬件和軟件按需位于資源池中任何可用的資源上八酒。一個公司可能使用一個服務(wù)器運行自己的應(yīng)用程序空民,但這個服務(wù)器并不是公司自己租用的物理的設(shè)備刃唐。云服務(wù)廠商提供使用的服務(wù)器可能根據(jù)需要發(fā)生變化羞迷,而且可能位于多個不同的地點。 |
“云”在哪兒画饥?
個人和企業(yè)基于不同的目的可以輕松的使用各種不同的云服務(wù)衔瓮,因此“云”讓人有虛無縹緲之感。但是當(dāng)你開始直接使用不同廠商的云服務(wù)時抖甘,你可能會很快意識到地理位置其實還是有關(guān)系的热鞍。盡管確實可能從任何地方都能訪問到大多數(shù)的應(yīng)用,但考慮到地理位置的因素衔彻,不同的地方可能體驗并不相同薇宠。
云計算產(chǎn)品基本上來講是區(qū)域敏感的。所有的服務(wù)商都會提供選項從而讓你控制自己的環(huán)境放置于哪個區(qū)域艰额。區(qū)域的位置和范圍隨不同服務(wù)商而不同澄港。
你所需的云服務(wù)區(qū)域的數(shù)量和位置很大程度上由你的應(yīng)用、網(wǎng)絡(luò)柄沮、延遲容忍度和服務(wù)等級協(xié)議決定回梧。你對某些特定服務(wù)的需求可能也會影響你對區(qū)域的選擇。不是所有的云服務(wù)在所有的區(qū)域都可用祖搓。
經(jīng)常談?wù)摰淖畲蟮挠绊懺朴嬎銋^(qū)域選擇的因素就是延遲狱意。數(shù)據(jù)和資源從服務(wù)器到客戶端的響應(yīng)時間可能造就用戶選擇使用或者放棄使用你的應(yīng)用的不同后果。一個提供靜態(tài)web內(nèi)容的應(yīng)用可以位于數(shù)個不同的數(shù)據(jù)中心拯欧,輕量級的數(shù)據(jù)加載意味著傳輸會更快详囤。但如果一個應(yīng)用需要大量的數(shù)據(jù)集,那么它最好部署于離最終客戶最近的區(qū)域镐作。更大的數(shù)據(jù)量藏姐,更遠(yuǎn)的傳輸距離蚓再,都會導(dǎo)致更大的延遲。
同應(yīng)用軟件一樣包各,對于網(wǎng)絡(luò)而言摘仅,延遲同樣是需要考慮的重要因素。網(wǎng)絡(luò)數(shù)據(jù)包需要跳轉(zhuǎn)的次數(shù)能夠很快地影響系統(tǒng)響應(yīng)時間问畅。負(fù)載均衡器可以幫助控制網(wǎng)絡(luò)傳輸娃属,但是如果如果在到達(dá)負(fù)載均衡器之前網(wǎng)絡(luò)傳輸依然需要多次跳轉(zhuǎn),那負(fù)載均衡器的作用就微乎其微了护姆。當(dāng)選擇云服務(wù)區(qū)域時矾端,需要同時考慮網(wǎng)絡(luò)延遲和應(yīng)用延遲。
Amazon數(shù)據(jù)中心 (截至3/2017)
區(qū)域 | 城市 |
---|---|
亞太 | - 孟買 - 首爾 - 新加坡 - 悉尼 - 東京 |
加拿大 | - 中部 |
中國 | - 北京 |
歐洲 | - 法蘭克福 - 愛爾蘭 - 倫敦 |
南美 | - 圣保羅 |
美國東部 | - 北弗吉尼亞 - 俄亥俄 |
美國西部 | - 北加利福尼亞 - 俄勒岡 |
政府云 | - 政府 |
Google數(shù)據(jù)中心 (截至3/2017)
區(qū)域 | 城市 |
---|---|
美國中部 | - 愛荷華州康瑟爾布拉夫斯 |
美國東部 | - 南加州伯克利縣 |
東亞-太平洋 | - 臺灣彰化 |
東北亞-太平洋 | - 日本東京 |
西歐 | - 比利時圣吉蘭 |
美國西部 | - 俄勒岡州達(dá)爾斯 |
Microsoft數(shù)據(jù)中心 (截至3/2017)
區(qū)域 | 城市 |
---|---|
美洲 | - 弗吉尼亞 - 愛荷華 - 伊利諾伊 - 德克薩斯 - 美國中西部 - 加利福尼亞 - 美國西部2 - 魁北克 - 多倫多 - 圣保羅 |
亞太 | - 北京 - 釜山 - 金奈 - 香港 - 孟買 - 西南威爾士 - 大阪 - 浦那 - 琦玉 - 上海 - 新加坡 - 東京 - 維多利亞 |
政府 | - 愛荷華 - 弗吉尼亞 - 美國國防部-東部 - 美國國防部-中部 |
歐洲 | - 加的夫 - 法蘭克福 - 愛爾蘭 - 倫敦 - 馬格德堡 - 荷蘭 |
4. 混合云
云計算在過去數(shù)年里一直在不斷演進(jìn)卵皂。原來作為企業(yè)基礎(chǔ)設(shè)施補充部分的云計算已經(jīng)成為整體不可或缺的組成部分秩铆。混合云的概念就是這種演進(jìn)的反映灯变。
混合云就是將云計算資源與其他內(nèi)部部署(on-premise)殴玛,外部部署(off-premise)和其他第三方資源集成在一起。在大多數(shù)情況下添祸,這種集成對于最終客戶是透明的滚粟。比如,一個本地的文件服務(wù)器可能存放著明天要使用的幻燈片刃泌,但是員工正在使用Office.com上基于云的Powerpoint產(chǎn)品來編輯它凡壤。
一些云服務(wù)甚至允許一些物理上的集成,從而滿足安全耙替、延遲或者其他商業(yè)上的需要亚侠。服務(wù)商通常把這種集成叫做連接到云端。Amazon的 AWS Direct Connect, Google的 Interconnect 和Microsoft的 Express Gateway俗扇,都是這種配置的例子硝烂。
5. 云服務(wù)
云廠商的產(chǎn)品線大都傾向于大而全,涉及各個方面狐援。統(tǒng)一起來講钢坦,是有可能將整個機(jī)構(gòu)的技術(shù)棧全部都運行在云上的。但更常見的場景是使用云服務(wù)來加強現(xiàn)有的基礎(chǔ)設(shè)施部分啥酱,或者彌補缺失的部分爹凹。Google, Amazon 和 Microsoft都提供IaaS、PaaS和SaaS的產(chǎn)品線組合來供用戶選擇使用镶殷。
下表試圖給出三大云廠商提供的廣泛使用的相似服務(wù)禾酱。考慮到術(shù)語叫法可能不同,一些門類在不同的服務(wù)商那兒可能有些許區(qū)別颤陶。盡管也許會有些小的差異颗管,該表格使用的門類基本對應(yīng)了大多數(shù)的云服務(wù)。
計算(Computing)
存儲(Storage)
數(shù)據(jù)庫(Databases)
網(wǎng)絡(luò)(Networking)
大數(shù)據(jù)和大數(shù)據(jù)分析(Big Data and Big Data Analytics)
當(dāng)然滓走, 以上還不是全部...
6. 云服務(wù)的關(guān)鍵優(yōu)勢
按量付費
直到很多年以前垦江,外部服務(wù)部署的成本依然類似租約的形式。不管對于分配的資源使用與否搅方,都會導(dǎo)致一定量的成本發(fā)生比吭。今日的云計算改變了這一情形。對于云服務(wù)使用的收費基于使用了多少服務(wù)資源姨涡。例如衩藤,一個虛擬機(jī)的使用成本基于你使用的計算資源的大小和服務(wù)器運行時間的長短。同時涛漂,一個數(shù)據(jù)倉庫的計費基于你存儲數(shù)據(jù)量的多少和生成報表的頻率赏表。
這個計價模型可能看起來比較復(fù)雜,但是客戶能夠極大地受益于此匈仗。按量計費意味著各種規(guī)模的公司都可以用得起一定的計算資源瓢剿。而這些計算資源,如果他們通過購買硬件锚沸、軟件跋选、物理存儲進(jìn)而搭建網(wǎng)絡(luò)從而獲得,那成本上可能是無法實現(xiàn)的哗蜈。一個內(nèi)部的數(shù)據(jù)倉庫構(gòu)建是極其昂貴的,而對于一個基于云的坠韩,按量計費的數(shù)據(jù)倉庫顯然更能負(fù)擔(dān)得起距潘。
一次性的或者可選擇的計價
云服務(wù)經(jīng)常可能由于一次性的事件導(dǎo)致流量劇增(如:全國電視直播只搁,超級碗等等)音比。不僅這種類型的服務(wù)常常很昂貴,而且經(jīng)常很難滿足需求氢惋。
云計算平臺允許應(yīng)用可以按需立即訪問額外的資源洞翩,并且不需要額外的配置。
除了高峰期和一次性計價焰望,一些服務(wù)還允許選擇其他的計價模型骚亿。一個例子就是在高峰期后的時間段里費用會更便宜。如果一些運行可以發(fā)生在資源使用的低谷期熊赖,如某個數(shù)據(jù)中心的午夜到凌晨時間段来屠,那這些運行有時可以更便宜。
此外,如果有些應(yīng)用程序有非常靈活的使用需求俱笛,那一些云服務(wù)商還允許客戶出價在基于當(dāng)前價格計算的優(yōu)惠價格上使用某些資源捆姜,即使需要等很長時間這些資源才可用。例如迎膜,一個大的批處理進(jìn)程可以安排在計算資源為¥0.x/分鐘時候再運行泥技,通常這時候費率低是因為這個時間窗口計算資源利用率低,當(dāng)計算資源利用率恢復(fù)到正常水平或者批處理進(jìn)程完成時磕仅,批處理就會停止運行零抬。
最后,有時還會有專有資源的需求宽涌,這經(jīng)常是云計算里成本最高的部分平夜。對于有些資源,如磁盤存儲或者服務(wù)器卸亮,公司是有可能簽訂一個類似租約的價格方案從而專有地?fù)碛幸粋€云計算資源忽妒。這會適用于:
- 關(guān)鍵的應(yīng)用、網(wǎng)絡(luò)和進(jìn)程兼贸。它們不能受普通的虛擬機(jī)或者其他同主機(jī)的進(jìn)程的影響段直。
- 既想受益于云計算的優(yōu)勢,但是監(jiān)管要求不允許主機(jī)共享溶诞。
自動增長和擴(kuò)展技術(shù)
云計算資源是虛擬化的鸯檬,通過配置適應(yīng)各種特定需求,但是它并不是物理硬件的一部分螺垢。這意味著可能非常容易地按需啟動更多的資源喧务。如果一個客戶處于快速成長期,那么云平臺可以容易地為其增加可用資源枉圃,而不需要復(fù)雜的安裝或者配置功茴。反之亦然,如果一個公司需要削減成本孽亲,那么關(guān)閉掉一些資源或者使用更少的資源并不用費力就可做到坎穿。
云服務(wù)可以按需做到永久性的或者臨時性的,因此擴(kuò)展同樣很容易做到返劲。一個設(shè)計用來高使用頻率的應(yīng)用軟件可以很容易地從小規(guī)模資源使用量擴(kuò)展到大規(guī)模資源使用量玲昧,而不需要額外的配置。云服務(wù)經(jīng)常能夠當(dāng)而且僅當(dāng)需要時初始化額外的資源篮绿。
其他的云計算服務(wù)商
Amazon, Google 和 Microsoft的云計算平臺統(tǒng)治了云計算領(lǐng)域孵延,但是其他服務(wù)商也在發(fā)展。其中一些提供商包括:
- Openstack Public Cloud
- IBM Cloud & BlueMix
- Heroku
很多這些服務(wù)商依賴于工業(yè)標(biāo)準(zhǔn)的虛擬化和操作系統(tǒng)技術(shù)搔耕,從而使他們能夠與其他云計算平臺競爭隙袁。但是痰娱,由于三強的平臺的成熟度和健壯性,這些服務(wù)商很難與Amazon, Google 和 Microsoft的云計算平臺相比菩收。
無論如何梨睁,這些其他的服務(wù)商已經(jīng)在云計算細(xì)分市場上分了一杯羹。一些通過更激進(jìn)的定價策略娜饵,一些通過為特定的社區(qū)提供服務(wù)(如Ruby/Rails或Linux)坡贺,一些通過提供比大的競爭對手更好的服務(wù)。
“云”也當(dāng)機(jī) (極少)
客戶預(yù)期他們的云服務(wù)提供商保證99+%的運行時間箱舞。云服務(wù)商同樣意識到了客戶在這點上的預(yù)期遍坟,而且做了很多事情來達(dá)到這個閾值。但如果考慮到難以置信的數(shù)小時的服務(wù)中斷晴股,即使1%的當(dāng)機(jī)時間也可能對你產(chǎn)生影響愿伴。沒有技術(shù)是完美的。
云計算服務(wù)商提供了狀態(tài)頁面供客戶查詢可能發(fā)生的服務(wù)中斷時間:
Google Cloud Status Page: https://status.cloud.google.com/
AWS Status Page: https://status.aws.amazon.com/
Microsoft Azure Status Page: https://azure.microsoft.com/status/
IBM Cloud Status Page: https://www.ibm.com/cloud-computing/social/maintenance/
Rackspace Status Page: https://status.rackspace.com/
云計算團(tuán)隊博客
為了保持與云計算服務(wù)商提供的最新服務(wù)保持同步电湘,建議你查閱以下云計算團(tuán)隊的博客:
Google Cloud Platform Blog: https://cloudplatform.googleblog.com/
AWS blog: https://aws.amazon.com/blogs/aws/
Microsoft Azure team blog: https://azure.microsoft.com/blog/
IBM Cloud blog: https://www.ibm.com/blogs/cloud-computing/
Rackspace blog: https://blog.rackspace.com/