国内外公有云对比:功能介绍、性能测试
相信很多個(gè)人和創(chuàng)業(yè)企業(yè),跟我一樣,面對(duì)幾十家國(guó)內(nèi)外云服務(wù)器,不知選擇哪一家?
問題導(dǎo)讀
1. ?國(guó)內(nèi)云商各有什么特點(diǎn)?
2. ?AWS性能測(cè)試中為何性能較低?
3. ?本測(cè)試中OS性能、IO性能哪些云平臺(tái)比較穩(wěn)定?
本原文最早整理發(fā)表于米撲博客:?
國(guó)內(nèi)外公有云對(duì)比:功能介紹、性能測(cè)試
?
一、功能介紹
近一段時(shí)間以來(lái),國(guó)內(nèi)外云計(jì)算市場(chǎng)再一次風(fēng)起云涌。這一次熱潮與以往熱潮最大的不同,就是開始玩真的了。微軟、AWS、阿里、百度、新浪、騰訊、360、IBM以及大量新興企業(yè),紛紛宣布近期在國(guó)內(nèi)公有云領(lǐng)域的大動(dòng)作,要么就是開始落地運(yùn)營(yíng),要么就是推出大量的新服務(wù),還有的開始大大免費(fèi)牌。就連電子商務(wù)網(wǎng)站如同京東、美團(tuán)都要進(jìn)來(lái)?yè)胶跻幌?#xff08;詳見米撲博客:全球云服務(wù)商對(duì)比:阿里云,太貴了),要在現(xiàn)在公有云起步階段站穩(wěn)腳跟。
另外,百度、騰訊、360面向個(gè)人用戶推出的免費(fèi)網(wǎng)盤服務(wù)競(jìng)爭(zhēng)的不亦樂乎。在這個(gè)過程中,最受益的當(dāng)然是廣大的用戶,因?yàn)橛脩舨皇莾H僅聽到各大廠商的忽悠,而是可以實(shí)實(shí)在在的使用各家的資源和服務(wù),切實(shí)的體驗(yàn)云計(jì)算的好處。
不過熱鬧歸熱鬧,當(dāng)用戶真正去選擇公有云時(shí),就不難發(fā)現(xiàn)一個(gè)現(xiàn)實(shí)困境,就是如何選擇一個(gè)適合自己的平臺(tái)。公有云不像硬件,有著成熟的體系和標(biāo)準(zhǔn),而用戶選擇時(shí)要考慮的因素也非常多,技術(shù)上主要的因素有性能、穩(wěn)定性、安全性、網(wǎng)絡(luò)、服務(wù)種類等等,而業(yè)務(wù)上則需要考慮價(jià)格、信任度、對(duì)自身業(yè)務(wù)上的幫助等。本文將簡(jiǎn)要對(duì)比下現(xiàn)在國(guó)內(nèi)幾個(gè)比較火的云平臺(tái)(面向個(gè)人用戶的除外,比如網(wǎng)盤),希望給大家一些初步的認(rèn)識(shí)
?
本文對(duì)比的平臺(tái)有以下:
新浪云(SAE、SCH)
新浪算是國(guó)內(nèi)做公有云較早的廠商了。它的模仿對(duì)象是GAE,主要提供PaaS服務(wù),名字也很類似,叫做Sina app engine, SAE。不過,近期新浪也準(zhǔn)備推出虛擬機(jī)服務(wù),進(jìn)入IaaS領(lǐng)域。目前SAE支持PHP,Python,Java語(yǔ)言。其使用模式是:用戶在本地開發(fā)代碼,然后上傳至SAE環(huán)境,SAE端為代碼提供了運(yùn)行環(huán)境和存儲(chǔ)空間,SAE還提供監(jiān)控、彈性伸縮等服務(wù)。這樣,開發(fā)者不需要任何運(yùn)維手段和工具,也不需要自己部署、管理服務(wù)器
目前,SAE提供以下4類服務(wù):
- 存儲(chǔ)類,包括MySQL、對(duì)象存儲(chǔ)、Key-Value存儲(chǔ)、Memcached緩存等
- 計(jì)算類,包括定時(shí)器、圖片處理、郵件發(fā)送、網(wǎng)頁(yè)抓取、消息隊(duì)列等
- 輔助類,包括防火墻,以及一些應(yīng)用遷移和調(diào)試工具
- 擴(kuò)展類,包括地理信息服務(wù),應(yīng)該是由第三方提供的服務(wù)
SAE的管理界面很明顯是以應(yīng)用為核心的,每個(gè)應(yīng)用的配置、代碼及其關(guān)聯(lián)的服務(wù)可以獨(dú)立管理。
從其功能來(lái)看,SAE顯然是面向互聯(lián)網(wǎng)應(yīng)用。
從技術(shù)層面來(lái)看,SAE的功能已經(jīng)比較完整。
其優(yōu)點(diǎn)是運(yùn)行時(shí)間比較久,據(jù)官方說法已有52萬(wàn)個(gè)應(yīng)用
不過,SAE的弱點(diǎn)也很明顯:
1. 缺乏IaaS能力,這樣就對(duì)開發(fā)者的自由度進(jìn)行了局限。PaaS雖好,但是限制太多,語(yǔ)言、版本、組件、服務(wù)皆不能自由選擇。
2. 缺乏與BAT(baidu, ali, tencent)抗衡的殺手锏。之前BAT都沒有大舉進(jìn)入云計(jì)算特別是PaaS領(lǐng)域,而從今年開始,各家都推出了各自的AppEngine,而且,百度有搜索導(dǎo)入,騰訊有用戶導(dǎo)入,他們會(huì)對(duì)SAE的用戶產(chǎn)生很大的吸引力
3. 不提供備案,只對(duì)已備案的應(yīng)用提供托管能力。這就是說,新的應(yīng)用沒法直接部署到SAE上,而是要找個(gè)第三方繞一下
?
百度云(BAE、BCC)
百度云推出的時(shí)間不長(zhǎng),與其聲勢(shì)浩大的網(wǎng)盤服務(wù)相比,其面向開發(fā)者的IaaS/PaaS服務(wù)相對(duì)有些默默無(wú)聞。百度網(wǎng)盤的首頁(yè)是cloud.baidu.com,而面向開發(fā)者的首頁(yè)是developer.baidu.com。如果直接搜索百度云,我們會(huì)直接進(jìn)入百度網(wǎng)盤,可見百度對(duì)于云的定位還是以消費(fèi)者為主,開發(fā)者為輔。后面為了區(qū)分百度云盤和面向開發(fā)者的云,我們把后者稱為百度開發(fā)者云。
盡管如此,百度開發(fā)者云還是提供了完整的功能。
從其首頁(yè)我們可以看出幾個(gè)特點(diǎn):
1. 面向web應(yīng)用和移動(dòng)應(yīng)用
2.?將端和云整合在一起。盡管百度沒有自己的應(yīng)用商店,但是百度最近收購(gòu)了91,其企圖是通過強(qiáng)化移動(dòng)入口吸引開發(fā)者,這樣,百度就有了兩個(gè)入口(搜索和手機(jī)助手)。因此,開發(fā)者門戶并不是單純的云服務(wù)門戶,而是云+端+一系列工具一體的服務(wù)平臺(tái)
下圖是其開發(fā)者中心的管理門戶,這里面渠道管理是指前端(web和app),開放云服務(wù)是后臺(tái)
而主要的云服務(wù)都在應(yīng)用引擎里面
在功能上,開發(fā)者云主要提供了AppEngine,稱為BAE。這個(gè)BAE看起來(lái)功能比SAE更強(qiáng)大,SAE有的BAE都有,而且在存儲(chǔ)上增加了redis和mongodb,通訊上增加了推送和觸發(fā)服務(wù)。此外還提供了虛擬機(jī)服務(wù)。目前虛擬機(jī)服務(wù)只對(duì)少數(shù)開發(fā)者開放。
從文檔上看,虛擬機(jī)服務(wù)支持windows/centos/ubuntu/redhat,規(guī)格上最小1核3G,最大4核32G,支持VNC連接虛擬機(jī)Console(這樣虛擬機(jī)無(wú)需網(wǎng)絡(luò),甚至無(wú)需完全啟動(dòng))。不過,很顯然該虛擬機(jī)服務(wù)能力十分有限,首先它只有臨時(shí)盤,無(wú)法進(jìn)行數(shù)據(jù)持久化;其次它缺乏網(wǎng)絡(luò)、安全支持。所以,目前的功能跟VPS類似,尚不是成熟的IaaS平臺(tái)
另外,百度云并沒有披露其物理機(jī)房信息和網(wǎng)絡(luò)接入情況,目前來(lái)看部署應(yīng)用時(shí)無(wú)法選擇部署位置。這樣的話,顯然無(wú)法實(shí)現(xiàn)異地負(fù)載均衡和容災(zāi),不太適合規(guī)模化應(yīng)用。最后,與SAE一樣,BAE并沒有提出SLA承諾
做一個(gè)總結(jié),百度開發(fā)者云定位在面向Web應(yīng)用和移動(dòng)App的PaaS平臺(tái),會(huì)主要和SAE和騰訊App Engine競(jìng)爭(zhēng)
?
騰訊云
最近,騰訊也加入了面向開發(fā)者提供公有云服務(wù)的行列。目前,該服務(wù)只向少數(shù)用戶開放,我有幸申請(qǐng)到一個(gè)賬號(hào),可以先睹為快
騰訊云的一個(gè)主要賣點(diǎn)是其游戲平臺(tái),眾所周知,騰訊的主要收入來(lái)自于游戲,而騰訊也將自己的平臺(tái)開放出來(lái),讓其他開發(fā)商的游戲接入進(jìn)來(lái),一同做大游戲市場(chǎng)。作為平臺(tái)提供商,騰訊對(duì)于其接入的游戲有一定要求,收入分成就不用說了,除此以外,還需要將游戲托管在騰訊云之上,這也是騰訊云的起源。如今,騰訊把這個(gè)云平臺(tái)開放給其他用戶,不僅面向游戲,也面向所有Web和移動(dòng)開發(fā)者。顯然,云的利潤(rùn)比游戲低得多,騰訊這樣做,主要也是希望聚集開發(fā)者,贏得人氣
從騰訊云的公開案例來(lái)看,現(xiàn)在的用戶都是游戲開發(fā)商
連入騰訊云的管理界面后,可以看到所有已訂閱的服務(wù)。目前騰訊云上的服務(wù)比較少,核心服務(wù)就是3個(gè):虛擬機(jī)、MySQL數(shù)據(jù)庫(kù)、NoSQL存儲(chǔ)。下面逐一了解下每個(gè)服務(wù)
虛擬機(jī)的配置可選范圍較大,最小1個(gè)共享核1G內(nèi)存,最大12核60G內(nèi)存。操作系統(tǒng)包括3種Linux,不支持Windows
部署虛擬機(jī)時(shí),沒有地方選擇部署機(jī)房,因此,騰訊云目前只有一個(gè)機(jī)房,估計(jì)在深圳
部署虛擬機(jī)后,可以對(duì)虛擬機(jī)控制,包括:重啟、重置密碼、回收、格式化。目測(cè)每個(gè)VM只支持一個(gè)系統(tǒng)盤和一個(gè)數(shù)據(jù)盤,而且數(shù)據(jù)盤部署以后無(wú)法改變大小,也無(wú)法從虛擬機(jī)解綁。騰訊宣布10月18日開始支持云硬盤,應(yīng)該是對(duì)目前功能的改進(jìn)
目前騰訊虛擬機(jī)沒有任何安全防護(hù),部署虛擬機(jī)后就直接暴露在公網(wǎng)上,安全性上有很大風(fēng)險(xiǎn)
云數(shù)據(jù)庫(kù)是基于MySQL做的服務(wù),最大支持600GB,支持7500/秒TPS。管理界面采用phpMyAdmin
NoSQL存儲(chǔ)是一個(gè)兼容Memcached的高速數(shù)據(jù)存儲(chǔ)服務(wù),估計(jì)是借鑒了Memcached的內(nèi)存存儲(chǔ)服務(wù),它支持?jǐn)?shù)據(jù)持久化,類似Redis的思路。至于性能,騰訊并未公布
其他的幾項(xiàng)服務(wù),主要起支撐作用,比如CDN、云監(jiān)控、負(fù)載均衡。值得注意的是,彈性Web服務(wù)也即將推出
綜上,騰訊云目前的功能比較有限,而且也沒有承諾服務(wù)質(zhì)量,目前還無(wú)法做出完整的評(píng)價(jià)。不過騰訊的定位顯然不是只做IaaS,而是希望成為完整的IaaS+PaaS服務(wù)提供商,從而支撐以游戲?yàn)橹鞯纳鷳B(tài)系統(tǒng)。
上個(gè)月試用了下騰訊云,結(jié)果被黑了
騰訊云上來(lái)送了1000元費(fèi)用,于是開個(gè)個(gè)虛擬機(jī)玩了下,總共開了沒幾天。結(jié)果前兩天發(fā)郵件過來(lái),說欠費(fèi)800多,就是說不到一個(gè)月消費(fèi)了1800。我趕緊查賬單,結(jié)果看到了這樣的計(jì)費(fèi)
什么?帶寬竟然收了600元。趕緊去查一下帶寬怎么收費(fèi)。原來(lái)帶寬不算在虛擬機(jī)費(fèi)用里面,是單獨(dú)計(jì)費(fèi)的。具體計(jì)費(fèi)方法,簡(jiǎn)單來(lái)說就是:看你一天當(dāng)中最大帶寬占用,然后按此計(jì)費(fèi)。也就是說,不管你總共傳了多少數(shù)據(jù),只看峰值,而且一個(gè)月里面只看峰值最高的幾天。具體價(jià)格是這樣:
IDC帶寬當(dāng)月總使用量小于等于300Mbps的部分,單價(jià):1.80元/Mbps
IDC帶寬當(dāng)月總使用量大于300Mbps的部分,單價(jià):3.60元/Mbps
我那幾天的流量是這樣的
因此,就算我一個(gè)月只有3天有流量,而其他時(shí)間流量為0,那么也按這三天算錢,而每天也是按峰值來(lái)算
其實(shí)我不記得為什么會(huì)有這么大峰值,也許是我下了個(gè)軟件,也許是被黑了。但無(wú)論怎樣,我收到一個(gè)天價(jià)賬單(10倍于虛擬機(jī)的價(jià)格)
但另一方面,騰訊云并沒有限制流量的方法,只要開公網(wǎng)ip,用戶就要自己限制流量,否則就等著被黑吧
那么另1000塊錢是怎么回事?騰訊云每個(gè)月會(huì)先凍結(jié)一部分金額,不管用不用,這樣可能月初時(shí)賬戶就成負(fù)數(shù)了,到月末再把未消費(fèi)的返還。賬號(hào)變?yōu)樨?fù)以后,會(huì)收到這樣一封郵件:
為了保障您的業(yè)務(wù)能正常運(yùn)營(yíng),請(qǐng)您務(wù)必充值繳納全部欠費(fèi),如未能如期繳齊欠費(fèi),平臺(tái)將采取包括且不限于以下措施,以維護(hù)平臺(tái)的合法權(quán)益。由此造成的一切損失,由您自行承擔(dān):
?????1、系統(tǒng)自動(dòng)回收您在騰訊云中所有的云資源(云服務(wù)器、云數(shù)據(jù)庫(kù)、NoSQL高速存儲(chǔ)、CDN所有數(shù)據(jù));
?????2、要求您合法承擔(dān)所欠金額(如從騰訊應(yīng)支付給您的其他費(fèi)用中直接抵扣);
?????3、法律范圍內(nèi)可以采取的其他措施。
太坑了吧,本來(lái)就是預(yù)付費(fèi)還要預(yù)付中再預(yù)付,還沒消費(fèi)就把錢扣光然后要求充值抵賬,電信運(yùn)營(yíng)商也沒這么狠啊。按第三條,難不成還要起訴我?嚇的我趕緊關(guān)掉所有服務(wù)
?
阿里云
如果說新浪SAE要做中國(guó)的GAE,那么阿里云就是想做中國(guó)的AWS。
阿里云早在幾年前就布局云計(jì)算,時(shí)至今日已經(jīng)小有規(guī)模。通過前幾篇的分析,不難發(fā)現(xiàn)其他幾家大型互聯(lián)網(wǎng)企業(yè)的IaaS服務(wù)都是剛剛起步,而微軟的Windows?Azure也還沒在國(guó)內(nèi)正式運(yùn)營(yíng)。所以,目前想用IaaS的大中型企業(yè)之前基本上只有一個(gè)選擇,那就是阿里云。不過,目前Windows?Azure已經(jīng)開始提供小范圍使用,再加上其他幾個(gè)廠商的加入,阿里云未來(lái)面臨的競(jìng)爭(zhēng)也會(huì)更加激烈。
阿里云的口號(hào)是,打造數(shù)據(jù)分享的第一平臺(tái),顯然,做IaaS只是一個(gè)起步。阿里云在幾年前收購(gòu)了萬(wàn)網(wǎng),獲得了相應(yīng)的IDC運(yùn)營(yíng)資質(zhì)和用戶,也解決了IaaS領(lǐng)域了大部分問題,比如備案、域名注冊(cè)、安全防護(hù)等等。這跟微軟與世紀(jì)互聯(lián)合作,IBM與首都在線合作都是一個(gè)思路。這幾家都是要踏踏實(shí)實(shí)做服務(wù)的,眼光不僅僅只是Web應(yīng)用和移動(dòng)應(yīng)用,還包括了企業(yè)應(yīng)用的范圍。
從阿里云的服務(wù)類型來(lái)看,跟騰訊云十分類似。由于阿里云先,騰訊云后推出,可見騰訊云很大程度上參考了阿里云
在云服務(wù)器部分,阿里云提供windows/centos/ubuntu/redhat/debian多種OS,規(guī)格上,最小共享核512M內(nèi)存,最大8核32G內(nèi)存。全國(guó)有兩個(gè)機(jī)房,分別在青島和杭州
在部署模式上,阿里支持包月包年和按量?jī)煞N,選擇配置時(shí),阿里云會(huì)實(shí)時(shí)計(jì)算出價(jià)格,這一點(diǎn)十分方便。同時(shí),在部署和取消虛擬機(jī)時(shí),阿里云都會(huì)短信確認(rèn),同時(shí)發(fā)送管理員密碼到用戶手機(jī)上。這一點(diǎn)上,更符合互聯(lián)網(wǎng)用戶習(xí)慣,或者說,跟支付寶是一個(gè)風(fēng)格
從實(shí)際使用來(lái)看,按量付費(fèi)十分不好用:部署后無(wú)法變更配置,無(wú)法增加磁盤,無(wú)法修改磁盤空間,無(wú)法停機(jī)。而且,啟動(dòng)按量付費(fèi)的虛擬機(jī)時(shí),賬戶余額必須大于100元。對(duì)于開發(fā)者來(lái)說,如果想臨時(shí)啟動(dòng)一個(gè)虛擬機(jī)進(jìn)行調(diào)試,就會(huì)比較麻煩。包月方式支持配置變更,但是最少也要花每月69元。按量付費(fèi)唯一一個(gè)方便的功能,是支持定時(shí)刪除虛擬機(jī)
包月形式的
虛擬機(jī)的管理界面比較簡(jiǎn)單,具有基本的虛擬機(jī)、磁盤、快照、鏡像管理功能。虛擬機(jī)支持啟動(dòng)停止、修改密碼。網(wǎng)絡(luò)部分的功能十分欠缺
阿里云的磁盤支持快照,可以從快照回滾。不過不能從快照創(chuàng)建新的磁盤。另外,一個(gè)磁盤也無(wú)法從一個(gè)主機(jī)解掛,再加載給另一個(gè)虛擬機(jī)。也就是說,兩個(gè)虛擬機(jī)之間無(wú)法通過磁盤、快照等方式進(jìn)行數(shù)據(jù)移動(dòng),只能在應(yīng)用層面進(jìn)行網(wǎng)絡(luò)拷貝。同時(shí),按量付費(fèi)的虛擬機(jī)只能加載一個(gè)數(shù)據(jù)磁盤,無(wú)法實(shí)現(xiàn)多塊磁盤做條帶化。而包月的虛擬機(jī)最多有4個(gè)數(shù)據(jù)盤
阿里云的資源管理和資源申請(qǐng)是在兩個(gè)不同的門戶里面。資源申請(qǐng)類似一個(gè)購(gòu)物車,結(jié)賬后資源出現(xiàn)在管理控制臺(tái)里面。用戶使用的時(shí)候,需要頻繁在多個(gè)界面間切換
云引擎部分,支持PHP和NODE.JS,支持memcache,消息隊(duì)列,計(jì)劃任務(wù)
云數(shù)據(jù)庫(kù)部分,支持MySQL和SQL Server
阿里云最具特色的要算它的存儲(chǔ)服務(wù),也正好印證了它的口號(hào),要在數(shù)據(jù)上大作文章。阿里云在存儲(chǔ)上的服務(wù)有6項(xiàng),而存儲(chǔ)之外的服務(wù)只有5項(xiàng)。在6個(gè)服務(wù)中,包含關(guān)系數(shù)據(jù)庫(kù)、對(duì)象存儲(chǔ)、結(jié)構(gòu)化存儲(chǔ)、大數(shù)據(jù)服務(wù)
另外,阿里也仿照AWS,建立了一個(gè)SaaS市場(chǎng),為阿里云上的用戶提供了一個(gè)用戶入口。
阿里云前期積累的用戶很多,有贊揚(yáng)的,也有不斷吐槽的,比如博客園。
總的來(lái)說,阿里云的優(yōu)勢(shì)是進(jìn)入IaaS領(lǐng)域早,繼承了萬(wàn)網(wǎng)的服務(wù)能力,提供免費(fèi)的備案服務(wù),提供免費(fèi)的網(wǎng)站搬遷服務(wù),這對(duì)中小網(wǎng)站十分有吸引力。同時(shí),阿里云的市場(chǎng)推廣力度大,廣告打的到處都是,今天打折,明天贈(zèng)送,很是熱鬧。阿里云的缺點(diǎn),在IaaS部分缺乏虛擬網(wǎng)絡(luò)和VPN,無(wú)法進(jìn)行虛擬機(jī)組網(wǎng),無(wú)法滿足傳統(tǒng)應(yīng)用在在組網(wǎng)上的需求,而在PaaS上,阿里云的能力十分欠缺,這會(huì)導(dǎo)致客戶粘性差,造成客戶十分容易流失
?
青云
說起青云,很多人可能沒聽說過,不過,一年之內(nèi)這個(gè)名字必然成為國(guó)內(nèi)云計(jì)算熱點(diǎn)。青云是一家創(chuàng)業(yè)公司,專注做IaaS,目標(biāo)是超越亞馬遜。這家公司成立只有半年,兩個(gè)月前開始接受試用。它的試用是完全免費(fèi)的,也不需要邀請(qǐng),給個(gè)郵箱就行。
青云官網(wǎng): www.qingcloud.com
青云為什么有超越亞馬遜的志向?
下面我就簡(jiǎn)要分析下。青云的CEO richard來(lái)自IBM,IBM有藍(lán)云,所以青云的意思很明顯,是青出于藍(lán)。Richard是個(gè)極客程序員,他另外兩個(gè)合伙人,分別來(lái)自騰訊和百度,而這家公司目前的團(tuán)隊(duì)規(guī)模,我猜測(cè)不超過10人。是不是很有硅谷范兒?Richard在IBM的時(shí)候,開發(fā)了一個(gè)項(xiàng)目,叫HSLT(High?Scale?Low?Touch),這個(gè)產(chǎn)品就是一個(gè)IaaS平臺(tái),跟青云十分類似。HSLT完全基于互聯(lián)網(wǎng)技術(shù)開發(fā),跟傳統(tǒng)的IBM軟件開發(fā)方式完全不同,其核心思想是基于大規(guī)模分布式的低成本硬件,構(gòu)建高可靠的IaaS平臺(tái)。HSLT有幾個(gè)特點(diǎn),第一是虛擬機(jī)部署快,第二是系統(tǒng)支持自愈,第三是全軟件實(shí)現(xiàn)虛擬存儲(chǔ)、虛擬網(wǎng)絡(luò)。盡管功能上跟Openstack類似,但架構(gòu)上HSLT跟Openstack完全不同。HSLT從架構(gòu)上就是為了滿足上萬(wàn)臺(tái)虛擬機(jī)部署和管理而設(shè)計(jì)的,或者說,是為了滿足大規(guī)模公有云的需求設(shè)計(jì)的。這個(gè)產(chǎn)品是有跟AWS競(jìng)爭(zhēng)的潛力。而青云不僅具備HSLT的完整功能,還具備了額外的功能,那就是用SDN實(shí)現(xiàn)的虛擬網(wǎng)絡(luò)
青云絕對(duì)不是簡(jiǎn)簡(jiǎn)單單實(shí)現(xiàn)各家都有的功能,而是在幾個(gè)功能點(diǎn)上做到極致,從而體現(xiàn)它的“酷”,否則,這種創(chuàng)業(yè)企業(yè)是無(wú)法跟其他巨頭競(jìng)爭(zhēng)的。在這幾個(gè)功能點(diǎn)上,青云可以秒殺國(guó)內(nèi)所有的IaaS提供商,這絕對(duì)不是夸大。
下面就眼見為實(shí)吧。門戶左側(cè)是其提供的服務(wù),似乎看不出什么特別。這幾項(xiàng)都是IaaS常見的服務(wù)。不過它的門戶很清爽,而且將服務(wù)實(shí)例、日志、賬戶余額乃至工單都集成在了一起。這就是小而精的好處
青云的奧妙,就在這每個(gè)服務(wù)里面。只能說,用過才知道
神奇1:虛擬機(jī)從申請(qǐng)到部署完成只需要8秒,啟動(dòng)只需要1秒!同時(shí)部署10個(gè)100個(gè)虛擬機(jī)也是一樣快。基本上,用戶只要點(diǎn)擊創(chuàng)建虛擬機(jī),一眨眼虛擬機(jī)就可以登錄了。
要知道,AWS上啟動(dòng)虛擬機(jī),最快也得一兩分鐘,而國(guó)內(nèi)的IaaS服務(wù),基本都得5-10分鐘。那青云是怎么做到的呢?虛擬機(jī)的部署,一般過程是:從源存儲(chǔ)位置拷貝一個(gè)OS鏡像作為虛擬機(jī)系統(tǒng)盤-〉宿主物理機(jī)掛載該系統(tǒng)盤進(jìn)行配置->啟動(dòng)虛擬機(jī)。青云對(duì)這個(gè)過程進(jìn)行了優(yōu)化,在拷貝時(shí)采用了Copy on write技術(shù),就是不進(jìn)行真正的拷貝,而是獲得一個(gè)快照,并將后續(xù)的寫操作寫入新的空間,這樣,虛擬機(jī)就可以即時(shí)啟動(dòng)。此外,青云對(duì)Linux進(jìn)行了精簡(jiǎn),只保留最基本的包,特別精簡(jiǎn)了自啟動(dòng)服務(wù),這樣實(shí)現(xiàn)了虛擬機(jī)從啟動(dòng)到現(xiàn)實(shí)登錄界面只需1秒
從操作日志可以看出,不僅是虛擬機(jī)創(chuàng)建,基本上所有的操作,都是在秒級(jí)完成,可見青云將管理效率追求到極致
因?yàn)槟茏龅矫爰?jí)部署,所以青云提出按秒計(jì)費(fèi),世界上估計(jì)就此一家
神奇2:支持完善的虛擬網(wǎng)絡(luò)和VPN,而且支持圖形化設(shè)計(jì)
這個(gè)功能阿里云現(xiàn)在都還沒有,更別說騰訊百度新浪了,而這個(gè)功能實(shí)際上是企業(yè)用戶十分看重的,有了這兩項(xiàng)功能才能更安全的連接虛擬機(jī),并將云端的虛擬機(jī)與企業(yè)已有的云之外的服務(wù)器對(duì)接。虛擬網(wǎng)絡(luò)的意思,是允許用戶自己規(guī)劃網(wǎng)絡(luò)拓?fù)?#xff0c;將虛擬機(jī)進(jìn)行二層互聯(lián)或者三層互聯(lián),同網(wǎng)絡(luò)內(nèi)虛擬機(jī)可以互訪,而不同網(wǎng)絡(luò)的虛擬機(jī)相互隔離。VPN是將遠(yuǎn)程網(wǎng)絡(luò)安全接入云網(wǎng)絡(luò)
下圖就是青云管理界面上的交互式網(wǎng)絡(luò)設(shè)計(jì)圖。相信每個(gè)網(wǎng)管都會(huì)使用。用戶可以自己定義路由器,交換機(jī),然后將虛擬機(jī)與交換機(jī)進(jìn)行互聯(lián),將交換機(jī)連入路由器。用戶可以自己規(guī)劃每個(gè)子網(wǎng)的IP地址,可以綁定公網(wǎng)地址。為什么說它神奇呢?是因?yàn)樘摂M網(wǎng)絡(luò)功能之前只有AWS、Windows?Azure等少數(shù)廠商可以做到,而青云不僅做到了,還做了一個(gè)交互式界面,不得不贊嘆下
具體到實(shí)現(xiàn)機(jī)制,AWS和Windows?Azure估計(jì)都是利用分布式路由表來(lái)實(shí)現(xiàn)的,而青云是采用SDN理念下的Openflow實(shí)現(xiàn)的。這兩種實(shí)現(xiàn)機(jī)制的區(qū)別,是前者是靜態(tài)路由,后者是動(dòng)態(tài)路由。二者各有優(yōu)劣,不過SDN最近特別火,又因?yàn)槠溟_放性獲得了相當(dāng)多的關(guān)注
其他方面的各種小創(chuàng)新還有很多,雖然算不上神奇,但也可以說是讓人眼前一亮。
- 在基本功能上,青云支持windows/ubuntu/centos/federa/debian OS,?最大支持8核32G內(nèi)存
- 存儲(chǔ)部分只提供塊存儲(chǔ),不過一個(gè)虛擬機(jī)可以掛多個(gè)盤,每個(gè)盤最大500G
- 網(wǎng)絡(luò)部分除了虛擬網(wǎng)絡(luò)和VPN,還支持虛擬機(jī)同時(shí)加入多個(gè)自定義網(wǎng)絡(luò),可以自己手動(dòng)分配IP。VIP支持流量控制
- 支持備案
- 監(jiān)控支持從一分鐘到一年的數(shù)據(jù)
- 提供API接口與命令行接口
回過頭來(lái),我們可以分析下青云的優(yōu)劣勢(shì)。
青云的優(yōu)勢(shì)是,使用簡(jiǎn)單,管理效率高,易用性強(qiáng),這對(duì)于個(gè)人開發(fā)者十分具有吸引力。其弱點(diǎn)是,運(yùn)營(yíng)時(shí)間短,難以快速獲得大中型客戶的信任。個(gè)人認(rèn)為青云可以定位為國(guó)內(nèi)的Linode,靠低價(jià)和易用吸引低端用戶。從長(zhǎng)遠(yuǎn)看,如果青云能夠一直保持這種技術(shù)上的領(lǐng)先優(yōu)勢(shì),是很有可能做大做強(qiáng)的。
?
?
功能篇總結(jié)
經(jīng)過比較,不難發(fā)現(xiàn)目前國(guó)內(nèi)的公有云廠商分成兩個(gè)路線,分別是IaaS和PaaS。IaaS以AWS為標(biāo)桿,PaaS以GAE為標(biāo)桿。新浪、百度目前以PaaS為主,騰訊、阿里、青云目前以IaaS為主。從長(zhǎng)線來(lái)看,除了青云之外,其他所有廠商都會(huì)走向IaaS+PaaS的混合模式
下面,就對(duì)IaaS和PaaS領(lǐng)域內(nèi)的公有云進(jìn)行橫向?qū)Ρ取M瑫r(shí),也將AWS、GAE和Windows?Azure加入對(duì)比。
AWS、GAE和Windows?Azure中在短期內(nèi)只有Windows Azure會(huì)進(jìn)入國(guó)內(nèi)。因?yàn)镮BM也宣布了落地國(guó)內(nèi)的計(jì)劃,有人可能會(huì)問IBM的公有云是什么樣,其實(shí)IBM的公有云有好幾套方案,一個(gè)是現(xiàn)有IBM Smarter Cloud的公有云方案,由TSAM和Websphere Pure application這種厚重的企業(yè)軟件構(gòu)成,一個(gè)是上一篇介紹過的HSLT,還有一個(gè)是IBM近期收購(gòu)的SoftLayer的方案,最終在國(guó)內(nèi)落地哪個(gè)還不得而知,這里暫不做比較
?
在PaaS部分,可以比較的廠商包括新浪SAE,百度BAE以及國(guó)外三巨頭
很明顯,國(guó)外三巨頭領(lǐng)先優(yōu)勢(shì)明顯,而且彼此之間難分伯仲。從國(guó)內(nèi)來(lái)看,新浪和百度領(lǐng)先阿里較多,盡管新浪推出SAE較久,但BAE迅速趕上,功能上反而比新浪更多
?
在IaaS部分,可以比較的廠商包括騰訊,阿里,青云以及國(guó)外三巨頭
同樣的,國(guó)內(nèi)廠商均落后于國(guó)際廠商。
Google目前在IaaS剛起步,明顯落后于Azure和AWS。
Azure和AWS基本上同步,AWS比Azure強(qiáng)在提供更多的虛擬機(jī)規(guī)格和OS種類。
在國(guó)內(nèi),阿里顯然比騰訊要強(qiáng)很多
通過總結(jié)可以看出,在虛擬機(jī)部分,國(guó)內(nèi)的服務(wù)提供商目前提供的服務(wù)普遍缺乏配套的虛擬網(wǎng)絡(luò)或者VPC功能,這使得虛擬機(jī)服務(wù)跟VPS服務(wù)區(qū)別不大
?
綜上所述
Windows Azure和AWS是云計(jì)算領(lǐng)域最強(qiáng)的兩個(gè)廠商,功能完善,覆蓋廣泛。
在國(guó)內(nèi),IaaS領(lǐng)域是阿里云目前領(lǐng)先,PaaS領(lǐng)域目前百度和新浪領(lǐng)先。
隨著Windows Azure商用日期的臨近,這種局面很快會(huì)被改寫
另外,各個(gè)云服務(wù)各有各自的優(yōu)勢(shì),短期之內(nèi)估計(jì)很難出現(xiàn)AWS那種一家獨(dú)霸市場(chǎng)的局面。
?
?
各家的優(yōu)勢(shì)領(lǐng)域總結(jié)
阿里云與新浪云:積累了許多早期用戶,也積累了相應(yīng)的運(yùn)營(yíng)經(jīng)驗(yàn)
百度云:吸引“流量”型網(wǎng)站開發(fā)者
騰訊云:吸引騰訊系周邊產(chǎn)品的開發(fā)者
青云:吸引獨(dú)立開發(fā)者和部分小型開發(fā)商
Windows Azure:是企業(yè)用戶和.NET陣營(yíng)用戶的首選。由于其強(qiáng)大的功能,相信也會(huì)吸引很多互聯(lián)網(wǎng)開發(fā)者
最后,從機(jī)房分布來(lái)看,大部分大型的云服務(wù)提供商都把機(jī)房放在經(jīng)濟(jì)發(fā)達(dá)的城市,比如新浪在北京,阿里在杭州青島,Windows?Azure在北京上海。這和國(guó)外的云服務(wù)提供商的分布有很大差異,同時(shí),這也給了國(guó)內(nèi)其他云服務(wù)提供商很多生存空間
?
?
國(guó)外云平臺(tái)
先說明一點(diǎn),由于國(guó)內(nèi)公有云起步較晚,基本上所有的公有云都是模仿或者克隆國(guó)外現(xiàn)有的云平臺(tái),因此,這里不得不首先說明下國(guó)外幾個(gè)主流的有代表性的云平臺(tái):
AWS?? ?
這個(gè)不用多講,AWS是公有云第一品牌,也是業(yè)界標(biāo)桿,從2006年起AWS就開始運(yùn)營(yíng),可以說正是AWS造就了云計(jì)算當(dāng)今的成果。AWS以IaaS起步,不過現(xiàn)今已經(jīng)兼具IaaS和PaaS能力
?
Windows Azure?? ??
這個(gè)是微軟的公有云,本人的博客有非常多的描述。
Windows Azure?從2009年開始運(yùn)營(yíng),最初以PaaS為主,如今也兼具IaaS和PaaS能力
?
Google Cloud
起初Google主打PaaS服務(wù)App Engine,知道今年才推出IaaS服務(wù)
?
Linode???
其特色是價(jià)格便宜,使用簡(jiǎn)便。
Linode是Linux node的縮寫,不支持Windows。
Linode的定位是VPS,其網(wǎng)絡(luò)能力比較弱,沒法支持虛擬網(wǎng)絡(luò)。
其價(jià)格差不多只有AWS和Windows Azure的一半。出于這些因素,Linode成為大量獨(dú)立開發(fā)者的首選
?
?
二、測(cè)試
在簡(jiǎn)單了解各家云計(jì)算的能力之后,緊接著大家關(guān)注的問題就是性能、價(jià)格、穩(wěn)定性等問題。本篇先從性能入手
本篇準(zhǔn)備測(cè)試阿里云,Windows Azure中國(guó)站,并以AWS作為比較。測(cè)試對(duì)象以虛擬機(jī)為主,測(cè)試工具為兩個(gè):
Unixbench
開源的Linux性能測(cè)試工具,可以綜合測(cè)試虛擬機(jī)的CPU、內(nèi)存、文件、進(jìn)程、腳本、系統(tǒng)調(diào)用、管道等多個(gè)維度,并且會(huì)給出一個(gè)總分。
該工具介紹:
https://github.com/kdlucas/byte-unixbench? (推薦)
http://code.google.com/p/byte-unixbench/? ? (舍棄)
?
Orion
Oracle發(fā)布的一個(gè)免費(fèi)IO測(cè)試工具,該工具可以測(cè)定磁盤的IOPS、吞吐量、延遲。
盡管也有一些其他IO測(cè)試工具,比如dd、bonnie++、iozone,但是只有orion可以同時(shí)測(cè)定IOPS和吞吐量,這也是我選擇該工具的原因。
該工具介紹在http://www.oracle.com/technetwork/cn/topics/index-088165-zhs.html
?
OS性能測(cè)試
首先來(lái)看Unixbench,由于各家的虛擬機(jī)規(guī)格不同,選擇如下的虛擬機(jī)規(guī)格進(jìn)行對(duì)比
| ?云服務(wù)器 | 測(cè)試使用的站點(diǎn) | OS類型 | 小規(guī)格?S | 中規(guī)格?M | 大規(guī)格?L |
| Windows Azure中國(guó)站 | 北京 | CentOS 6.3 64位 | 1核1.7G內(nèi)存 | 2核3.5G內(nèi)存 | 4核7G內(nèi)存 |
| AWS北美 | US East | CentOS 6.3 64位 | m1.small (1 ECU) 1核1.7G內(nèi)存 | m1.medium (2 ECU) 1核3.5G內(nèi)存 | m1.large (4 ECU) 2核7.5G內(nèi)存 |
| 阿里云 | 青島 | CentOS 6.3 64位 | 1核1.5G內(nèi)存 | 2核4G內(nèi)存 | 4核8G內(nèi)存 |
盡管AWS的中規(guī)格只有1個(gè)核,但是根據(jù)AWS的配置,其等效的計(jì)算能力(ECU)是小規(guī)格的2倍,所以它跟Azure的M型是對(duì)等的。大規(guī)格同理
百度云和新浪云的虛擬機(jī)還未開放,暫不考慮(注:本文寫于2013年,百度云和新浪云等的虛擬主機(jī)在2016年前后已發(fā)布)
首先說明下測(cè)試過程。公平起見,本測(cè)試未做任何性能調(diào)優(yōu)和配置變更,完全采用各家提供的缺省OS鏡像。虛擬機(jī)也都沒有配置SWAP分區(qū)
?
Unixbench 安裝與配置
首先用root登錄目標(biāo)虛擬機(jī)
1. 下載安裝包(建議下載最新版)
wget https://github.com/kdlucas/byte-unixbench/archive/master.zip? ? ? ?(推薦)
wget http://byte-unixbench.googlecode.com/files/UnixBench5.1.3.tgz ? (舍棄)
2. 解壓縮
tar zxvf UnixBench5.1.3.tgz
3. 進(jìn)入U(xiǎn)nixBench目錄
4. 進(jìn)行編譯
make clean
make
yum -y install gcc
./Run
?
5. 運(yùn)行?./Run?即可開始測(cè)試,等待十幾分鐘即可
1) 運(yùn)行輸出的結(jié)果:
| 12345678910111213141516171819202122232425262728293031 | Benchmark Run: Mon Sep 04 2017 20:22:53 - 20:51:131 CPU in system; running 1 parallel copy of testsDhrystone 2 using register variables?????? 23736936.0 lps?? (10.0 s, 7 samples)Double-Precision Whetstone???????????????????? 3556.3 MWIPS (10.1 s, 7 samples)Execl Throughput?????????????????????????????? 3570.1 lps?? (29.9 s, 2 samples)File Copy 1024 bufsize 2000 maxblocks??????? 565755.4 KBps? (30.0 s, 2 samples)File Copy 256 bufsize 500 maxblocks????????? 177397.0 KBps? (30.0 s, 2 samples)File Copy 4096 bufsize 8000 maxblocks?????? 1337004.0 KBps? (30.0 s, 2 samples)Pipe Throughput???????????????????????????? 1145152.0 lps?? (10.0 s, 7 samples)Pipe-based Context Switching???????????????? 254288.8 lps?? (10.0 s, 7 samples)Process Creation????????????????????????????? 11098.7 lps?? (30.0 s, 2 samples)Shell Scripts (1 concurrent)?????????????????? 4001.7 lpm?? (60.0 s, 2 samples)Shell Scripts (8 concurrent)??????????????????? 547.7 lpm?? (60.1 s, 2 samples)System Call Overhead??????????????????????? 1846761.4 lps?? (10.0 s, 7 samples)System Benchmarks Index Values?????????????? BASELINE?????? RESULT??? INDEXDhrystone 2 using register variables???????? 116700.0?? 23736936.0?? 2034.0Double-Precision Whetstone?????????????????????? 55.0?????? 3556.3??? 646.6Execl Throughput???????????????????????????????? 43.0?????? 3570.1??? 830.2File Copy 1024 bufsize 2000 maxblocks????????? 3960.0???? 565755.4?? 1428.7File Copy 256 bufsize 500 maxblocks??????????? 1655.0???? 177397.0?? 1071.9File Copy 4096 bufsize 8000 maxblocks????????? 5800.0??? 1337004.0?? 2305.2Pipe Throughput?????????????????????????????? 12440.0??? 1145152.0??? 920.5Pipe-based Context Switching?????????????????? 4000.0???? 254288.8??? 635.7Process Creation??????????????????????????????? 126.0????? 11098.7??? 880.9Shell Scripts (1 concurrent)???????????????????? 42.4?????? 4001.7??? 943.8Shell Scripts (8 concurrent)????????????????????? 6.0??????? 547.7??? 912.9System Call Overhead????????????????????????? 15000.0??? 1846761.4?? 1231.2???????????????????????????????????????????????????????????????????========System Benchmarks Index Score??????????????????????????????????????? 1064.1 |
?
2)運(yùn)行后的目錄結(jié)構(gòu)
| 123456789101112 | [root@mimvp-bj UnixBench]# lltotal 144-rw-r--r-- 1 root root 10133 Jun 30 08:19 Makefiledrwxr-xr-x 2 root root? 4096 Sep? 4 20:22 pgms-rw-r--r-- 1 root root 17753 Jun 30 08:19 READMEdrwxr-xr-x 2 root root? 4096 Sep? 4 20:22 results-rwxr-xr-x 1 root root 60436 Jun 30 08:19 Rundrwxr-xr-x 2 root root? 4096 Jun 30 08:19 srcdrwxr-xr-x 2 root root? 4096 Sep? 4 20:51 testdirdrwxr-xr-x 2 root root? 4096 Sep? 4 20:36 tmp-rw-r--r-- 1 root root 17890 Jun 30 08:19 USAGE-rw-r--r-- 1 root root? 4622 Jun 30 08:19 WRITING_TESTS |
?
3) 查看 results/ 目錄下的html結(jié)果
http://demo.mimvp.com/unixbench/
?
如果運(yùn)行時(shí)報(bào)如下錯(cuò)誤
Can't locate Time/HiRes.pm
可以執(zhí)行下
yum install perl-Time-HiRes
安裝缺少的包
在Windows Azure下,CentOS缺省沒有安裝gcc,可以在make之前運(yùn)行如下命令安裝gcc
yum --disableexcludes=main install gcc
在阿里云和AWS下,Unixbench需要安裝一個(gè)perl擴(kuò)展包,可在運(yùn)行./Run前運(yùn)行
yum install perl-Time-HiRes
?
Unixbench測(cè)試結(jié)果
虛擬機(jī)的性能,主要取決于兩個(gè)因素:物理機(jī)性能,物理機(jī)上運(yùn)行的虛擬機(jī)個(gè)數(shù)
了解虛擬化的人都會(huì)知道物理核和虛擬機(jī)的邏輯CPU(vCPU)并不是一一對(duì)應(yīng)的。一個(gè)物理核可以支持多個(gè)vCPU,甚至一個(gè)超線程支持多個(gè)vCPU。這樣一個(gè)2個(gè)4核支持超線程的處理器,首先在虛擬化層會(huì)變成16個(gè)核,進(jìn)而可以支持最少16個(gè)vCPU。顯然,vCPU對(duì)應(yīng)的物理核配額越多,其性能就越好,Unixbench分?jǐn)?shù)就越高
先看一下總分
??
1. AWS,這個(gè)分?jǐn)?shù)不出意料的低。
Azure是AWS的3-4倍,而阿里云也有AWS的2-3倍。這個(gè)結(jié)果跟一個(gè)國(guó)外的第三方做的測(cè)試結(jié)果是類似的,
詳細(xì)情況可參考:http://blog.csdn.net/shaunfang/article/details/9770527? ? (英文評(píng)測(cè)網(wǎng)址)
為啥大名鼎鼎的AWS性能如此之差?這跟AWS的歷史有關(guān)。
AWS早在2006年就開始做云計(jì)算,當(dāng)時(shí)就定下了小、中、大等虛擬機(jī)規(guī)格。大家都知道硬件能力每年都在增長(zhǎng),這樣當(dāng)AWS增加新的服務(wù)器時(shí),其處理能力就比原有的強(qiáng)。如果新的服務(wù)器也支持同樣的用戶數(shù),那么用戶拿到的虛擬機(jī)就會(huì)比原有的強(qiáng)。這會(huì)造成用戶在不同時(shí)間段申請(qǐng)的同規(guī)格虛擬機(jī)性能不同的情況。于是AWS提出一個(gè)ECU概念,即邏輯運(yùn)算能力,用戶申請(qǐng)的同規(guī)格虛擬機(jī)永遠(yuǎn)擁有類似的處理能力,并且用ECU來(lái)代表,比如1ECU就代表一個(gè)Sandy Bridge級(jí)Xeon的處理能力。這樣的話,2010年的一臺(tái)服務(wù)器可能會(huì)虛擬出10臺(tái)小規(guī)格的虛擬機(jī),而2013年的一臺(tái)服務(wù)器就可以虛擬出20臺(tái)虛擬機(jī)。阿里云和Windows Azure都比AWS晚,它們使用的處理器較新,起步的虛擬機(jī)規(guī)格就比AWS高好幾倍了。目前,Azure所提供的一個(gè)邏輯核基本上對(duì)應(yīng)一個(gè)服務(wù)器的物理核,而AWS顯然是4、5個(gè)虛擬機(jī)共享一個(gè)物理核。另一方面,Azure的定價(jià)跟AWS一模一樣,花一樣的錢就可以獲得比AWS強(qiáng)4倍的計(jì)算能力
AWS采用的是Intel Xeon E5430 CPU,主頻2.66G,啟用了超線程
| 12345 | OS: GNU/Linux -- 2.6.32-279.2.1.el6.centos.plus.x86_64 -- #1 SMP Thu Jul 19 16:20:44 CDT 2012Machine: x86_64 (x86_64)Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")CPU 0: <span style="color:#0000FF;">Intel(R) Xeon(R) CPU E5430 @ 2.66GHz</span> (5320.0 bogomips)???????<span style="color:#0000FF;">Hyper-Threading</span>, x86-64, MMX, Physical Address Ext, SYSCALL/SYSRET |
?
2. 阿里云
盡管測(cè)試采用的阿里云主機(jī)配置不如Azure(主要是內(nèi)存小一些),但是其最終性能卻接近Azure,這說明阿里云采用的硬件比較新,另外,沒有用一臺(tái)物理機(jī)去支持大量虛擬機(jī)
從結(jié)果看,阿里云采用的是Intel Xeon E5-2420 CPU,主頻1.9G,啟用了超線程
| 12345 | ?OS: GNU/Linux -- 2.6.32-358.6.2.el6.x86_64 -- #1 SMP Thu May 16 20:59:36 UTC 2013???Machine: x86_64 (x86_64)???Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")???CPU 0: <span style="color:#0000FF;">Intel(R) Xeon(R) CPU E5-2420 0 @ 1.90GHz</span> (3800.2 bogomips)???<span style="color:#0000FF;">Hyper-Threading</span>, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET |
?
3. Windows Azure分?jǐn)?shù)最高
從結(jié)果看,使用的是AMD 4171HE CPU,沒有超線程
| 12345 | OS: GNU/Linux -- 2.6.32-279.14.1.el6.openlogic.x86_64 -- #1 SMP Wed Dec 12 18:33:43 UTC 2012Machine: x86_64 (x86_64)Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")CPU 0: <span style="color:#0000FF;">AMD Opteron(tm) Processor 4171 HE</span> (4189.4 bogomips)???????x86-64, MMX, AMD MMX, Physical Address Ext, SYSCALL/SYSRET |
結(jié)論:Windows Azure性能最好,是AWS的3-4倍,比阿里云高10-20%
?
IO測(cè)試
IO測(cè)試主要測(cè)試磁盤性能。目前,各家提供的虛擬機(jī)基本上有三種磁盤:
1. OS盤
2. 本地臨時(shí)盤
3. 數(shù)據(jù)盤
其中,OS盤和數(shù)據(jù)盤都應(yīng)該是持久化的,如果物理機(jī)故障或者虛擬機(jī)重啟,上面的數(shù)據(jù)應(yīng)該繼續(xù)保留。OS盤和數(shù)據(jù)盤的區(qū)別,是數(shù)據(jù)盤建議用來(lái)存儲(chǔ)應(yīng)用和用戶數(shù)據(jù),而OS盤是缺省提供的,不建議放用戶數(shù)據(jù)。數(shù)據(jù)盤一般可以虛擬機(jī)解綁,然后加載給其他虛擬機(jī)。本地臨時(shí)盤是存儲(chǔ)在物理機(jī)本地磁盤上,沒有做持久化,很容易損壞或丟失,但其成本低,性能高,一般用來(lái)做緩存。
AWS和Azure都同時(shí)支持3種盤,阿里云支持OS盤和數(shù)據(jù)盤。AWS還有一種叫IOPS盤,本次沒有比較
由于Orion測(cè)試需要清空數(shù)據(jù),本測(cè)試只測(cè)數(shù)據(jù)盤和本地臨時(shí)盤
虛擬機(jī)準(zhǔn)備
每個(gè)測(cè)試都在一臺(tái)小規(guī)格的虛擬機(jī)上完成,OS為CentOS 6.3 x64. 數(shù)據(jù)盤大小為10G
Orion安裝與配置
Orion的下載需要去Oracle網(wǎng)站。
1. 進(jìn)入?Oracle ORION 下載?(ORION 11.1 版)
2. 選擇x86_64版本下載,可能接受協(xié)議并輸入Oracle ID賬戶密碼
wget ?http://download.oracle.com/otn/utilities_drivers/orion/orion_linux_x86-64.gz
3. 解壓縮安裝包
gzip -d orion_linux_x86-64.gz
4. 解壓后得到一個(gè)文件,賦予執(zhí)行權(quán)限
chmod +x orion_linux_x86-64
5. 創(chuàng)建 orion.lun文件,在里面寫入測(cè)試的目標(biāo)盤,比如/dev/vda1
#?echo /dev/vda1 > orion.lun
需要注意:orion會(huì)直接在磁盤級(jí)進(jìn)行讀寫,會(huì)損壞上面的文件系統(tǒng),所以一定要用空磁盤進(jìn)行測(cè)試
6.?執(zhí)行讀測(cè)試,該測(cè)試會(huì)進(jìn)行4K大小的隨機(jī)讀和1M大小連續(xù)讀
./orion_linux_x86-64 -run advanced -size_small 4 -verbose
運(yùn)行輸出界面如下:
| 1234567891011121314151617181920212223 | # ./orion_linux_x86-64 -run advanced -size_small 4 -verboseORION: ORacle IO Numbers -- Version 11.1.0.7.0orion_20170904_2040Test will take approximately 9 minutesLarger caches may take longerName: /dev/vda1 Size: 214737879041 FILEs found.TEST START----------------------------------------------Running point: Small=0, Large=0Point 1 out of 8ValidRunning point: Small=1, Large=0Point 2 out of 8 |
7.?執(zhí)行寫測(cè)試,該測(cè)試會(huì)進(jìn)行4K大小的隨機(jī)寫和1M大小連續(xù)寫
./orion_linux_x86-64 -run advanced -size_small 4 -write 100 -verbose
運(yùn)行輸出界面如下:
| 1234567891011121314151617181920212223 | # ./orion_linux_x86-64 -run advanced -size_small 4 -write 100 -verboseORION: ORacle IO Numbers -- Version 11.1.0.7.0orion_20170904_2047Test will take approximately 9 minutesLarger caches may take longerName: /dev/vda1 Size: 214737879041 FILEs found.TEST START----------------------------------------------Running point: Small=0, Large=0Point 1 out of 8ValidRunning point: Small=1, Large=0Point 2 out of 8 |
這個(gè)測(cè)試會(huì)進(jìn)行幾組8K大小的隨機(jī)讀寫和1M大小的連續(xù)讀寫測(cè)試。
前者用來(lái)測(cè)定IOPS能力,后者測(cè)定吞吐量
?
測(cè)試完成后,會(huì)發(fā)現(xiàn)生成并不是圖形化的網(wǎng)頁(yè),而是許多xxx.csv文件,需要用 Excel 或 Number 轉(zhuǎn)化打開
1)xxx.csv 文件列表
| 123456789101112 | -rw-r--r-- 1 root root????? 128 Sep? 4 20:47 orion_20170904_2040_iops.csv-rw-r--r-- 1 root root????? 128 Sep? 4 20:47 orion_20170904_2040_lat.csv-rw-r--r-- 1 root root????? 100 Sep? 4 20:47 orion_20170904_2040_mbps.csv-rw-r--r-- 1 root root????? 582 Sep? 4 20:47 orion_20170904_2040_summary.txt-rw-r--r-- 1 root root???? 2931 Sep? 4 20:47 orion_20170904_2040_trace.txt-rw-r--r-- 1 root root????? 104 Sep? 4 20:53 orion_20170904_2047_iops.csv-rw-r--r-- 1 root root????? 104 Sep? 4 20:53 orion_20170904_2047_lat.csv-rw-r--r-- 1 root root?????? 60 Sep? 4 20:53 orion_20170904_2047_mbps.csv-rw-r--r-- 1 root root????? 319 Sep? 4 20:47 orion_20170904_2047_summary.txt-rw-r--r-- 1 root root???? 2227 Sep? 4 20:53 orion_20170904_2047_trace.txt-rwxr-xr-x 1 root root 46350238 Sep? 4 20:34 orion_linux_x86-64-rw-r--r-- 1 root root?????? 10 Sep? 4 20:39 orion.lun |
?
2)xxx.csv 文件內(nèi)容示例
| 1234567891011121314151617181920 | # cat orion_20170904_2047_iops.csvLarge/Small,????? 1,????? 2,????? 3,????? 4,????? 5??????????0,???? 39,???? 48,???? 53,???? 54,???? 56### cat orion_20170904_2047_summary.txtORION VERSION 11.1.0.7.0Commandline:-run advanced -size_small 4 -write 100 -verbose This maps to this test:Test: orionSmall IO size: 4 KBLarge IO size: 1024 KBIO Types: Small Random IOs, Large Random IOsSimulated Array Type: CONCATWrite: 100%Cache Size: Not EnteredDuration for each Data Point: 60 seconds |
?
3)xxx.csv 文件轉(zhuǎn)換成 Numbers 圖形化
?
Orion測(cè)試結(jié)果IOPS,單位:操作/s,數(shù)字越大越好
IOPS指標(biāo)對(duì)于數(shù)據(jù)庫(kù)類型的應(yīng)用來(lái)說十分關(guān)鍵。
??
圖中橫軸代表的是采用Orion測(cè)試時(shí)并發(fā)線程數(shù),或者叫IO隊(duì)列深度。Orion測(cè)試IO性能的時(shí)候,會(huì)開啟多個(gè)線程,每個(gè)線程循環(huán)進(jìn)行IO操作。這樣,當(dāng)并發(fā)線程數(shù)多的時(shí)候,系統(tǒng)的IO請(qǐng)求會(huì)排隊(duì),能夠進(jìn)一步提升IO性能。當(dāng)并發(fā)線程數(shù)大到一定程度時(shí),比如20,系統(tǒng)的IO性能會(huì)飽和。在本次測(cè)試中,我們使用Orion缺省的測(cè)試方法,即并發(fā)線程數(shù)在1-5之間變化
- 從數(shù)據(jù)盤的結(jié)果來(lái)看,Azure最好,并發(fā)線程數(shù)為5時(shí),讀寫IO都可以達(dá)到800
- 阿里云其次,讀接近800,寫有400多
- AWS最不穩(wěn)定。AWS官方的說法是提供100左右的IOPS,如果其他用戶較閑,其IOPS也可以達(dá)到幾百上千。從結(jié)果來(lái)看,AWS的IO性能在讀寫方面很不均勻,寫很快而讀很慢。結(jié)合網(wǎng)絡(luò)上的資料來(lái)看,AWS的IO性能隨時(shí)間、機(jī)型變化很大。顯然,由于IO性能不穩(wěn)定,AWS的自帶磁盤是無(wú)法滿足IO密集型應(yīng)用需求的,所以AWS專門推出了一個(gè)IOPS存儲(chǔ)來(lái)保證IOPS,而這種存儲(chǔ)價(jià)格較高
作為對(duì)比,普通一塊7200轉(zhuǎn)的服務(wù)器硬盤(SATA盤)的IOPS一般為100左右,而存儲(chǔ)專用的15000轉(zhuǎn)的光纖盤IOPS可以達(dá)到200。因此,Azure的數(shù)據(jù)盤要比單塊服務(wù)器硬盤快的多,基本上達(dá)到了一個(gè)小規(guī)模盤陣的處理能力
另外,本地臨時(shí)盤的性能,要比持久化磁盤的性能強(qiáng)很多。臨時(shí)盤使用了SSD來(lái)提升IO性能 ?
| ?云平臺(tái) | 本地臨時(shí)盤 |
| Windows Azure | 1690 |
| AWS | 6302 |
?
吞吐量,單位MB/s,數(shù)字越大越好
??
可以看出Windows Azure性能最好,AWS和阿里云類似。由于需要做持久化,所有的數(shù)據(jù)盤流量都會(huì)經(jīng)過網(wǎng)絡(luò),而公有云一般不會(huì)用光纖網(wǎng)絡(luò)這種存儲(chǔ)專用通道,這制約了數(shù)據(jù)盤的吞吐量,幾十兆/s的性能基本和普通服務(wù)器硬盤的性能類似。作為對(duì)比,本地臨時(shí)盤無(wú)需網(wǎng)絡(luò)數(shù)據(jù)拷貝,性能超高
| ?云平臺(tái) | 本地臨時(shí)盤 |
| Windows Azure | 565 |
| AWS | 366 |
?
延遲,單位ms,數(shù)字越小越好
??
在數(shù)據(jù)盤部分,Azure的讀寫延遲都在10ms以內(nèi)。阿里云的讀延遲偏高。而AWS的讀延遲更是高的夸張,而寫延遲又非常低
臨時(shí)盤性能大大超越數(shù)據(jù)盤,小于1ms的延遲一定是使用了緩存或者SSD技術(shù)
| ?云平臺(tái) | 本地臨時(shí)盤 |
| Windows Azure | 0.64ms |
| AWS | 0.30ms |
上面的測(cè)試都是在某一時(shí)間點(diǎn)的測(cè)試。我們知道虛擬機(jī)是運(yùn)行在共享的硬件上,單一時(shí)刻的性能并不能體現(xiàn)虛擬機(jī)的綜合性能和性能的穩(wěn)定性。因此,我們還需要考察IO性能隨時(shí)間變化的情況。
?
下面的測(cè)試,是連續(xù)24小時(shí)測(cè)試所有的虛擬機(jī)得出的性能結(jié)果
IOPS,數(shù)值越大越好,橫軸是時(shí)間
??
結(jié)果顯示:??
1. AWS的性能確實(shí)十分不穩(wěn)定,寫性能最大和最小差5倍
2. 阿里云的性能相對(duì)穩(wěn)定些,不過每天有一個(gè)時(shí)間性能會(huì)突然變差,這就是每天的晚上12點(diǎn)左右,阿里對(duì)虛擬機(jī)進(jìn)行統(tǒng)一備份
3. Azure的性能最穩(wěn)定,而且讀寫性能均衡
?
吞吐量,單位MB/s,數(shù)值越大越好,橫軸是時(shí)間
??
結(jié)果顯示:
1. Azure的性能最好,且穩(wěn)定,24小時(shí)內(nèi)都在60MB-110MB之間
2. AWS較不穩(wěn)定
3. 阿里云每天會(huì)有一個(gè)性能低谷(備份時(shí)間)
?
延遲,單位ms,數(shù)值越小越好,橫軸是時(shí)間
??
結(jié)果顯示: ?
1. Azure最穩(wěn)定,讀寫均衡,24小時(shí)內(nèi)延遲都在5ms左右
2. AWS最不穩(wěn)定
3. 阿里云每天會(huì)有一個(gè)突發(fā)性能下降(備份時(shí)間)
?
?
測(cè)試總結(jié)
本文比較了AWS,阿里云和Azure三個(gè)公有云平臺(tái)的OS性能和磁盤IO性能,數(shù)據(jù)結(jié)果顯示:
1)?OS性能,同樣規(guī)格的虛擬機(jī)Azure性能最好,阿里云次之,AWS性能僅有Azure和阿里云的幾分之一
2)?IO性能,對(duì)于普通數(shù)據(jù)磁盤,Azure的性能最好,最穩(wěn)定,阿里云次之。
?
AWS的普通磁盤性能非常不穩(wěn)定,僅適合于順序訪問(追求吞吐量),
而對(duì)于隨機(jī)訪問,必須使用價(jià)格更高的IOPS型磁盤。
另外,要使用IOPS磁盤,必須使用專用型號(hào)的虛擬機(jī)(價(jià)格也高)
? ?
選購(gòu)結(jié)論
本文都是米撲科技調(diào)研對(duì)比的成果,目的是選購(gòu)性價(jià)比高的云服務(wù)器:
1)?國(guó)內(nèi)云服務(wù)器,選購(gòu)騰訊云、阿里云、金山云(大米云折扣非常大)
2)?國(guó)外云服務(wù)器,選購(gòu)AWS,其國(guó)外的價(jià)格比國(guó)內(nèi)阿里云、騰訊云在國(guó)外提供的云服務(wù)器價(jià)格都低很多
3) 全球云服務(wù)器價(jià)格對(duì)比,請(qǐng)見米撲博客:全球云服務(wù)商對(duì)比:阿里云,太貴了
?
?
參考推薦:
國(guó)內(nèi)公有云對(duì)比 - 功能篇?(CSDN)
AWS與阿里云在國(guó)內(nèi)使用的對(duì)比評(píng)測(cè)
全球云服務(wù)商對(duì)比:阿里云,太貴了
阿里云網(wǎng)絡(luò)系列之經(jīng)典網(wǎng)絡(luò)和專有網(wǎng)絡(luò)
AWS、Google、Apple云端宕機(jī)背后的故事
?
總結(jié)
以上是生活随笔為你收集整理的国内外公有云对比:功能介绍、性能测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [html] HTML5的触屏事件有哪
- 下一篇: AWG标准线径规格对照表 (2