標籤:

Kubernetes 是未來嗎?

火熱的關注度

經過10幾個小時的飛機,飛越萬里來到美國波士頓參加OpenStack submmit,按道理這應該是OpenStack的主場,但是關於Kubernetes的主題有近50場,而且從我參加的幾個session來看,幾乎場場爆滿,最後的Q&A環節討論都很熱烈,可見現在Kubernetes的熱度。通過現場對於Kubernetes相關的主題的了解,對於Kubernetes及Kubernetes與OpenStack的關係有了新的認識

Kubernetes和OpenStack的關係,是相生相伴還是相生相剋

大家對於這二者的關係有很大的爭論,有的觀點甚至認為Kubernetes是OpenStack強有力的競爭者,甚至將來會取代OpenStack,目前來看這種觀點是有點偏激了,這兩種技術是一個功能強大的組合。它們都解決類似的問題,但處於技術棧的不同層次上,因此,兩者結合可以為用戶提供比以前更高的可擴展性和自動化程度,從我關注的幾個議題也可以看出,融合OpenStack於

Kubernetes正在成為更多人的選擇。

三明治式的融合方案

  • OpenStack構建在Kubernetes之上,我們都知道OpenStack的部署和運維問題一直是社區的一塊心病,也是用戶使用的痛點,正如我們所知OpenStack框架是典型的分散式服務框架,幾乎每個組件都是可以獨立部署的微服務,在生產環境中這些微服務肯定會有高可用,負載均衡,以及升級的需求。而Kubernetes的主要目標之一就是解決應用或者是服務的部署以及運維問題,他對於應用的抽象以及實現方案可以很好解決以上問題。目前社區的Kolla,CoreOS的Stackanetes都在致力於提供Kubernetes管理OpenStack的解決方案。

  • Kubernetes構建在OpenStack提供的資源池之上,OpenStack現在幾乎已經是開源的IaaS標準方案,對於IT資源的管理已經很成熟,Kubernetes主要面對的是應用的管理,這些應用肯定是需要計算,存儲,網路資源的,而OpenStack的neutron,cinder提供了很好的解決方案,cinder的關於硬體存儲的driver有100+之多,neutron提供的SDN功能也屏蔽了不同的網路硬體設備,對於底層硬體不應該是Kubernetes關注的點,Kubernetes也不應該造重複的輪子,這些OpenStack已經很好的解決了,目前社區的heat,magnum和murano都提供了在OpenStack之上構建Kubernetes的方案,kuryr項目提供了基於容器的網路解決方案。Kubernetes社區也在開發基於cinder,neutron,keystone的插件,使Kubernetes能更好的與OpenStack融合。

正如軟體設計的一項藝術「抽象」所指,一個框架的抽象的層次,決定了這個框架的高度也決定了這個框架的生命力,Kubernetes對於應用(服務)的抽象可謂經典至極,Kubernetes必定在應用管理這個領域大放異彩,佔據統治地位,又如軟體工程界的一條黃金定律「沒有銀彈」所說,沒有一項技術或者框架能解決所有問題,任何一個出色的框架肯定都是各種平衡和取捨後的結果。OpenStack和Kubernetes可以在各自的領域捨我其誰,但是他們兩個是可以相生相伴的,他們的融合也是大勢所驅,通過兩者的堆疊可以有1+1> 2的驚喜。

推薦閱讀:

oVirt安裝配置——第一章(oVirt引擎篇)
關於openstack的部署架構的一點兒疑問?
OpenStack使用Ceph存儲,Ceph到底做了什麼?
開源大時代,EasyStack格局與勝局

TAG:OpenStack |