雲計算的前世今生
目前企事業單位系統都紛紛要上雲,但是很多沒有雲計算研發或運維經歷的同學,對雲計算總是一頭霧水。為了不讓大家再一頭霧水,前幾天我給公司的研發和運維同事做了一次雲計算相關知識的科普,題目為《雲計算的前世今生》。因為只是科普,我只對相關概念進行了解釋,不涉及技術細節,但卻有些八卦內容。
從名字上來看,可以認為雲計算是一種計算服務,但不止於計算,是對傳統IT交付形式的革命。舉個例子:以前客戶可能需要自己買硬體伺服器,放到機房,然後請專業的人士將這些伺服器虛擬化,再在虛擬機上部署應用。雲計算誕生後,客戶可能不需要這麼做了,不用自己買伺服器,不需要自建機房,只需要通過瀏覽器介面的幾步操作,就能使用虛擬機了。
上面只是一個使用雲計算的例子,從大的方面來說,雲計算主要具有三種服務形態,分別是:
IaaS:基礎設施即服務,可以理解為把硬體當作服務來提供,比如提供虛擬機;
PaaS:平台即服務,面向開發者,提供開發、運行所需要的中間件、工具和環境;
SaaS:軟體即服務,典型如各種Web應用,不需要本地安裝軟體即可使用;
口頭上這麼說,大家可能還是覺得不清不楚,那麼下面這張圖應該可以幫助你清晰區分這三種服務形態了。圖我是從網上扒下來的,侵刪。
圖中紅色部分內容是雲服務提供商需要考慮的,而綠色部分是客戶自己需要考慮的。從左往右,第2、3、4幅圖分別對應IaaS、PaaS、SaaS服務。可以看到,對於IaaS層,雲服務商需要考慮的是網路、存儲、伺服器、虛擬化,而客戶需要考慮的是作業系統層面以上的東西。對於PaaS層,雲服務商需要考慮到作業系統、中間件、運行時環境,客戶只需要考慮數據和應用。對於SaaS,雲服務商考慮全部的內容,客戶要做的,可能只是安裝個瀏覽器來使用軟體服務就好。最左邊,就是用戶完全自建的情況下,這時候就需要考慮所有層面的事情,這時候往往也就沒有雲服務什麼事情了,除非客戶本身就是雲服務商。
接下來我們看看雲計算的發展簡史,讓我們先回到上個世紀。
史前 1950s
上個世紀50年代,IBM公司就有使用大型機,因為數量有限,而且需要多個人同時使用,因此就產生了一台機器多個終端的需求。
混沌期 1970s
70年代,硬體虛擬化技術出現,可以從一台物理機虛擬出多台虛擬機,供不同人員使用,這也是VPS的形式,大家共用一台物理機,但不同虛擬機的作業系統是隔離的。
萌芽期 1990s
這個時期虛擬化技術已經有了很大的發展。全球最大的SaaS服務商Salesforce於1999年成立,其創始人是前Oracle高層。看著Oracle高昂的購買和維護費用,這位高層意識到互聯網時代的軟體服務模式需要改變了,因此提出了軟體將變成一種服務的口號,認為傳統的軟體模式即將終結。這個時候估計外界還並不知道什麼是雲計算,我們也不知道Salesforce公司是如何解決伺服器擴容等問題的。
襁褓期 2006-2011
這個時期,虛擬化技術快速發展,主流的技術有KVM、Xen、OpenVZ等,還有VMware自家的技術,我曾經對這些技術都有所涉略。2006年,亞馬遜發布了對象存儲S3和彈性計算EC2,正式對外提供IaaS服務。亞馬遜本來是電商起家的,他們看到淡季時候很多伺服器閑置著,因此琢磨著怎麼充分利用起來,於是就搞出這麼兩個產品,這就是一個場景催生產品的活生生的例子。也是在這期間,Google公開了GFS、Map Reduce、Big Table相關的論文,奠定了大數據發展的基石,業界紛紛效仿,Google同時推出了PaaS服務GAE。微軟在2008年也進行戰略轉移,將Windows Azure的Windows去掉,開始擁抱開源,給了外界耳目一新的形象。2009年,阿里雲成立,其CTO是心理學博士王堅,據說也因為這個安排,導致阿里集團的很多技術牛人離職,估計都不看好一個心理學博士能帶領研發團隊馳騁於雲計算的競技場。2010年在深圳IT領袖峰會上,百度李彥宏對雲計算表示不屑,說是新瓶裝舊酒,而騰訊的馬化騰認為雲計算可能需要一百年或更多的時間才能實現,唯獨不懂技術的馬雲,堅信雲計算是阿里必須要做的,否則阿里巴巴就會死掉。今天阿里雲、騰訊雲、百度雲的市場份額的差距,可以說跟這些大佬的眼光和信念不無關係。2011年,新浪基於開源雲平台方案OpenStack推出了PaaS服務SAE,這個項目的負責人程輝不久離職創辦了UnitedStack,期望基於OpenStack提供公有雲服務。程輝當時還發表了一篇文章,描述他對要加入自己研發團隊人員的要求,從這篇文章中可以看出他個人的一些領袖氣質,當然對人員的要求也是極高的。後來這個公司應該沒能完成程輝在公有雲市場分羹的願景,這裡就不展開了。
探索期 2011-2013
VMware率先提出軟體定義數據中心的口號,並認為這是雲計算的終極形態。這個時期,各種雲計算相關技術發展迅速,雲計算人才供不應求,一幫技術極客們創辦了:
七牛雲存儲:專註於提供雲存儲服務,面向開發者;
青雲:全棧雲服務,據說他們創始人對當時市面上的雲服務不滿意;
UCloud:偏向遊戲領域,創始人黑客出身;
這幾個雲計算公司,在巨頭們的狹縫下生存,走到了今天,他們都在中國雲計算髮展史上,留下了濃墨重彩的一筆。
火熱期 2013-2016
這是個群雄逐鹿的時期,巨頭們持續發力,其中包括阿里雲、騰訊雲 華為雲等。OpenStack、VSphere 、CloudStack等方案及其互相集成技術受寵,Docker橫空出世,人們言必稱大數據。
成熟期 2016-2020
這時期,雲計算行業格局漸定,大概是巨頭全覆蓋 + 垂直企業;雲原生:容器化 + 微服務 + DevOps + CI/CD,如火如荼在發展;k8s:被稱為下一個Linux作業系統,採用率一直在上升;AI/ML:On Cloud,人工智慧、機器學習框架上雲;
未來
站在2020年中期這個節點,我們能看到的未來大概是:
雲原生技術快速發展,其中Service Mesh、Serverless架構繁榮,OAM去基礎設施迅速佔領舞台,雲和邊緣計算融合態勢愈演愈烈。巨頭們都在營造生態,拉攏開發者,畢竟贏開發者得天下,而作為開發者,要麼成為浪潮中的泳者,要麼回家。