1. 程式人生 > >Docker官方將支援Kubernetes,容器編排大戰宣告結束

Docker官方將支援Kubernetes,容器編排大戰宣告結束

10 月 17 日,Docker 在丹麥哥本哈根舉行的 DockerCon 大會上宣佈,將擴大其 Docker 平臺並選擇積極擁抱容器編排對手 Kubernetes。這意味著 Docker 客戶及開發人員將可以選擇同時使用 Kubernetes 與 DockerSwarm 進行容器工作負載的編排。

Docker 的創始人 Solomon Hykes 在大會上介紹,對於即將推出的 Docker 平臺新版本,開發人員將能夠在其工作站中的 Kubernetes 上直接進行生產應用程式的構建與測試。而運營人員則能夠從 Docker 企業版中獲得各種幫助,具體包括多租戶安全保護,映象掃描以及基於角色的訪問控制等,同時配合 Kubernetes 或者 Swarm 在生產環境中實現應用執行。


Solomon Hykes 在大會上表示,今後在選擇容器叢集管理技術時現有的 Docker 開發人員不必學習新的 Kubernetes 工具,下一個版本的 Docker 將內建完整的 Kubernetes 發行版本,開發人員將能夠一直使用 Docker 工具。

Docker 的理念為“Build, Ship and Run Any App, Anywhere”,通過容器和映象的特性讓 DevOps 變得容易,但 Docker 的前景,更在於支援分散式、服務化設計,實現一系列可獨立開發、獨立部署和獨立擴充套件的服務組合,以保證業務的靈活性和穩定性。

Docker 容器被稱為容器執行時的事實標準,而在容器編排上,Kubernetes、Mesos 和來自 Docker 官方的 DockerSwarm 一直以來處於競爭狀態,但來自 Google 公司的 Kubernetes 以其高效、簡便、高水平的可移植性等優勢佔領了絕大部分市場,而如今 Docker 官方宣佈將擁抱這樣一位競爭對手,看起來 Kubernetes 儼然贏得了編排框架市場的勝利。

專家觀點  

TalkingData 大資料及雲端計算工程師 宋淨超(https://jimmysong.io)對此為讀者帶來了一番解讀:

我覺得 Kubernetes 的眼光不止於容器編排,Docker 作為 Cloud Native 生態中的最基礎的 Runtime,之後可能會被其他的 Container Engine 替代,到時候 Docker 也只不過是 Runtime 的一個選擇而已。

而 Kubernetes 所在的 CNCF 是為了解決企業上雲的系列問題,從 Runtime 到部署、監控、分散式追蹤、網路等等,我認為接下來它自己也會去構建一個相應的雲原生生態。那到時候是否又是另一場大戰,我們拭目以待。

針對這個事件,通俗一點來講,Docker 相當於一部功能機,可以滿足使用者的一般需求。但是隨著移動網際網路的到來,大家需要更多的功能,原來的功能機已經無法滿足需求了,這時候智慧機,比如 iPhone 開始爆發了,這就是 Kubernetes 問世的一個環境。

但是功能機也不甘示弱,他們有了 MTK,可以低成本去做功能啊!可以以低成本滿足使用者 80% 的需求。這也就是指這一次 Docker 官方說的,它將去支援 Kubernetes。但就是那 20% 的非功能性需求決定了使用者體驗。而 Kubernetes 正是完全有著佔有使用者這 20% 需求的能力,所以一直以來它作為容器編排的實際市場領跑者。

再從一個具體的點上去做個比喻就是,Docker 這個機子它本來只能支援單卡模式,但是現在它支援雙卡了,它將自己本來的主卡,也就是 DockerSwarm 放到了副卡的位置上去了,而現在的主卡很明顯就是 Kubernetes。但是你看 iPhone,這業界超一流的標準,它只支援單卡模式,那麼未來 Docker 這部功能機,它如果想要向著這種一流去做,它現在的這個雙卡戰略會走得遠嗎?將來是否會直接將 DockerSwarm 這一副卡給去掉?


這可能是一個稍顯不恰當的比喻,並不是貶低 Docker 而擡升 Kubernetes,畢竟先有了 Docker 生態,有了容器化之後才有了 Kubernetes,這裡只是為了讓讀者切身感受,幫助理解。