若是你最近對容器領域有所關注的話,想必你已經發現了,最近這段時間裏,與Kubernetes相關的技術在快速、大量地涌現。所以,再增長一個,可能也不會讓人有多新奇。不過,Rancher近期發佈的新版產品仍是值得你來了解一番的。Rancher Labs的研發團隊一直在研究一些新的想法,我認爲這將會對咱們全部人對Kubernetes(K8s)的想法產生深入影響。我會在這篇博客中說說我最感興趣的三個方面。docker
首先,Rancher 2.0可使用docker-compose來部署K8s的pods、services和ingress。Docker經過組件化的方式極大地優化了用戶體驗。我喜歡它的直觀和簡潔,這對於沒有時間在容器上過多鑽研、只須要完成工做的人來講,易於上手的它是一個絕佳的選擇。另外,K8s的資源清單功能十分強大,且具備不錯的擴展性。然而,這項功能實際使用起來並不方便,多數狀況下(特別是對企業而言)投入產出比並不大。而Rancher 2.0很好地解決了這一困境,對於K8s新手而言,他們能夠經過Rancher使用docker-compose來部署他們的應用程序,而對喜歡原生的k8s資源清單功能的用戶來講,他們也能繼續用他們原先的方式使用k8s。框架
K8s在世界各地勢頭正猛,我想咱們尚未時間停下來,去評估一個組織內的工程師(並不是容器的愛好者)其實是否真的嚮往K8s的用戶體驗。由於在個人經驗中,這種大範圍的推廣,既能夠產生技術,也可能會破壞技術。一段時間事後,當熱潮退去,若是用戶並無對此產生興趣,那麼這項技術就極可能會成爲一個只能被束之高閣、沒法落地的技術——特別是在一開始它是以提升開發人員生產力爲賣點。組件化
第二,Rancher 2.0利用了K8s的成熟特性。你確定據說過「不要重造輪子」的格言,可「重造輪子」的事情卻又總在科技公司重演。所幸咱們的研發團隊意識到咱們能夠依靠K8s的API實現新功能,而無需本身從頭構建。我堅信這樣會使得軟件開發得更好,由於你沒必要冒着重蹈覆轍的風險,而只需專一於解決新問題。這樣的想法來源於我我的和其餘人的經驗,好比Joel Spolsky的有關重寫軟件的理解。優化
那麼Rancher 2.0中有哪些有關使用K8s特性的例子呢?其一,咱們經過擴展示有的K8s結構(如命名空間和RBAC)來實現多租戶模型。Federation也是咱們在決定利用K8s實現以前本身作的事情。指標和監控也是受益於和K8s有許多集成關聯的Heapster和InfluxDB。而上述這些僅僅是咱們在Rancher中使用K8s技術的幾個亮點而已。flux
最後,我對K8s將在Rancher Labs將來的影響非常期待。自從咱們首次在容器生態系統中提供解決方案以後,咱們嘗試過支持全部的編排調度框架(k8s、Mesos、Swarm),給咱們的用戶提供儘量多的選擇。這在當時編排框架「三足鼎立」的階段是一個創舉,整個實現的過程對Rancher Labs的研發而言也實屬不易。而我一直想知道若是咱們把精力放在這些技術中的其中某一項上,Rancher會是什麼樣子。令我高興的是,業界已經逐漸將K8s視爲編排調度框架的主流選擇,這樣咱們就可以集中咱們的精力,沒必要擔憂因多樣性而出現用戶羣體有限的問題。資源
我但願上述的理由可以讓你有興趣去了解Rancher 2.0。做爲開源產品,Rancher產品一路走來的的進步與完善離不開用戶的支持與反饋,咱們重視每個人的每一條意見,請隨時分享你的經驗,讓咱們作得更好。開發