Docker

docker,編排,調度這些都是PaaS裡面的經典概念。前面寫了一篇文章《Docker和hadoop》,直言docker並不是Hadoop體系的關鍵技術,當前階段只是作為大數據體系的一個很小的補充,更適合在應用領域的開發、應用和部署。

1、歷史:

說到docker,兩家公司不得不提,這也是docker領域的核心玩家:

1)Docker Inc.

輕量級虛擬化技術其實存在已經很多年,07年cgroup就進入了Linux內核,Docker是PaaS提供商dotCloud(最近已經正式改名為Docker Inc.)開源的一個基於LXC的高級容器引擎,源代碼託管在GitHub上,基於Go語言並遵從Apache 2.0協議開源。Docker的出現極大簡化了容器的創建和管理,分層式的AUFS實現了Docker鏡像。組合式創新,推出build,ship,run一體化概念,一下子點燃了容器技術圈的熱情,概念持續火爆至今。

2)Google

眼看docker.inc這麼火,google一看不幹了,容器這種技術,google已經玩了十幾年了,Google才是在生產系統中大規模玩容器的鼻祖呀,於是把自己玩了很久的borg精簡精簡開源出來,這就是k8s。說實話看到最初的k8s,你會對k8s的簡陋感到擔心,當時CF,mesos明顯更成熟。不過Google確實是玩生態的行家,Android,TensorFlow,成功的案例很多。k8s經過幾年的生態運作,也基本奠定了在容器編排領域的江湖霸主地方,CF和mesos基本上被邊緣化了。Google玩生態就是牛,15年Google聯合其他20家公司宣佈成立了開源組織Cloud Native Computing Foundation(CNCF),也成為paas行業領域的權威組織,最近AWS都已經加入這個組織。國內的幾家廠商,阿里,華為,騰訊都是會員。

2、這些廠商怎麼賺錢?

作為一種時髦的技術組合,受到了業界的追捧,加入的公司非常多,到CNCF簡單數了下,會員組織超過了80+(會員是要交錢的哦)。搞這些的公司估值也創新高,以docker公司為例,2017年8月Docker宣佈獲得7500萬美元融資,交易後估值達13億美元。(總融資超過2.5億美金)

雖然Docker的技術受到了大量開發人員的好評——其社區擁有3000多名個人貢獻者和270多個技術開發小組,但超高的人氣並沒有給他們帶來實際收入。

這個其實也不難理解,企業軟件開源雖然可以帶來人氣,但是轉化成商業模式時缺非常困難,在這個領域通過開源軟件賺錢的,最成功的應該是redhat(大量的收入來自服務),一年的收入也才20億美金。Google搞的最成功的Android,更多的是給自己帶來了流量,促進了搜索服務的應用,真正賺錢的是被三星這家設備廠商賺去了。正是因為不賺錢,所以你會看到Apple在開源領域其實沒什麼建樹,其實也容易理解,大部分人忙著賺錢呢。

關於賺錢模式,可以拿一個例子來類比,就是cloudeara。當年搞大數據的cloudera,火爆程度不亞於現在的docker。幾條道路:

1)提供企業版本,收服務費用。

2)在AWS/Azure上提供雲服務(或者自己單幹),賺雲服務的錢。

根據Cloudera IPO提供的財報顯示,Cloudera在2017年1月底結束的財年裡面賺了2.61億美元,去年同期是1.66億美元。今年的利潤是-1.87億美元,比起去年-2.03億美元好看一點。08年就成立的公司,十年快過去了,還在燒錢。錢不好賺呀,雖然他在bigdata開發者眼裡就是神一樣。

而真正在hadoop領域賺到錢的估計應該是AWS,據內部消息,AWS EMR服務每年一個億美金的收入,而投入才60人的團隊,賺大了。

3、K8S競爭對象

Docker/K8S再學習

K8S剛推出來的時候,功能相當弱,當時mesos,Cloud Foundry都要比k8s成熟,不過Google還是牛,財大氣粗,玩生態的好手,才幾年工夫,對手基本上都幹掉。拉了一票廠商成立CNCF,K8S稱為容器調度編排的霸主地位已定。CNCF已經增加到85家的會員的數量,生態發展速度非常快。

3月25日,Docker把容器運營時捐贈給了容器的基金會,進入基金會以後,CNCF託管的項目目前一共有9個,包括K8S、等等,目前一共9個託管的項目。同時,可以看到上面的圖,相當於整個企業在雲裡面做運用改造,可能涉及到非常多的項目,包括整個技術架構,項目的安裝部署,容器的編排,應用的開發和部署的流程,整個其實涉及到非常非常多的開源的項目,來支撐雲應用層的生態,將來會有更多項目進入CNCF下託管。

4、k8s和OpenStack

簡單的說,kubernetes是管理container的工具,openstack是管理VM的工具。

container可以運行在物理機上,也可以運行在VM上。所以kubernetes不是需要openstack的支持。但對於雲計算來說,很多IasS都通過openstack來管理虛擬機。然後用戶可以在這些虛擬機上運行docker,可以通過kubernetes進行管理。

Kubernetes可能被視為替代Openstack提供基於docker的容器調度和部署。輕量級的linux容器與虛擬客戶環境分別是其產品的基本差異。

另外,K8S仍然缺少所有其他關鍵雲(IaaS)組件,如身份鑑權服務,網絡服務等等,它沒有項目/租戶的概念,而在典型的私有云設置中,這些概念直接關係到組織和項目的公司組織結構。另外現在OpenStack也開始支持docker。更多的用法是k8s定位於paas層,架在OpenStack提供的IaaS上,以解決應用的快速開發部署,運維為切入點。

猜你喜歡

《大數據架構詳解》第2次修訂說明

雲觀察系列:金山雲梳理

雲觀察系列:群雄逐鹿cloud 2.0

京東雲初體驗

雲觀察系列:政務雲之淺見

雲觀察系列:漫談運營商公有云發展史

雲觀察系列:阿里雲戰略觀察

超融合方案分析系列(8)SmartX超融合方案分析

超融合方案分析系列(7)思科超融合方案分析

為了方便大家相互交流學習,創建了一個公眾號同名微信群:《大數據和雲計算技術交流群》,人數已經800+,歡迎大家加我微信。


分享到:


相關文章: