Rancher 2.0 Beta版已正式發佈。Rancher 2.0是一個企業級Kubernetes平臺,可以實現多Kubernetes集羣的統一納管,解決生產環境中企業用戶可能面臨的基礎設施不一樣的困境。此外,Rancher 2.0簡潔直觀的界面風格及操做體驗,將解決業界遺留已久的Kubernetes原生UI易用性不佳以及學習曲線陡峭的問題。加之Rancher 2.0帶來的監控、日誌、CI/CD等一系列拓展功能,能夠說,Rancher 2.0爲企業在生產環境中落地Kubernetes提供了更加便捷的途徑。node
如今,Rancher 2.0的開發已進入尾聲,Rancher Labs研發團隊將集中精力進行測試及文檔完善的工做。咱們認爲在此時爲Rancher用戶提供一個術語詞彙表是很是有用的,這有助於Rancher用戶理解Kubernetes和Rancher的基本概念。微信
從Rancher 1.6發展到Rancher 2.0,現在Rancher產品會更多地遵循於Kubernetes的命名標準。這一轉變可能會讓曾經在Rancher 1.6中只使用Cattle環境的用戶感到些許困擾。網絡
不過沒有關係,本文將幫助你理解Rancher 2.0中的新概念。它也能夠做爲容器編排框架Cattle和Kubernetes之間術語和概念的一個簡要參照。負載均衡
Rancher 1.6提供的編排工具Cattle獲得了許多用戶的青睞。在Cattle中,你有一個環境,它是管理和計算的邊界,即你能夠指定權限的最低層級;重要的是,該環境中全部的主機都是專用於此環境。而後,爲了組織你的容器,你須要有一個堆棧(Stack),它是一個服務集合的邏輯分組,以及一個做爲特定運行鏡像的服務。框架
那麼這個結構在2.0中是什麼樣呢?工具
若是你一直關注容器領域,那麼你不可能沒聽過Kubernetes的一些術語,好比pods、命名空間(namespaces)和節點(nodes)。本文就將爲你們對比、統一Cattle和Kubernetes這兩個不一樣的容器編排工具的常見術語,從而簡化Rancher用戶從Cattle到Kubernetes的過渡。隨着一些名稱的變化,一些功能也發生了改變。學習
下表給出了一些核心Kubernetes概念的定義測試
更多Kubernete概念的細節,請參考:spa
https://kubernetes.io/docs/concepts/日誌
Rancher 1.6中的環境表明了兩樣東西:
計算邊界
管理邊界
而在2.0中環境的概念不復存在,取而代之的是:
集羣(Cluster)--- 計算邊界
項目(Project)--- 管理邊界
其中項目是由Rancher引入的管理層,以便減輕Kubernetes的管理負擔。
在Cattle中,一個主機只屬於一個環境。如今在Rancher 2.0中也是相似的,一個節點(主機的新名稱),只屬於一個集羣。以前由主機組成的環境,如今變成了由節點組成的集羣。
Rancher 1.6中的堆棧是一種對多個服務進行分組的方法。在Rancher 2.0中,這是由命名空間完成的。
在Rancher 1.6中,服務被定義爲運行同一容器的一個或多個實例。在Rancher 2.0中,運行相同容器的一個或多個實例被定義爲工做負載,其中工做負載能夠由帶有控制器的pod組成。
容器鏡像是一個輕量級的、獨立的、可執行的軟件包,它包含了運行它所須要的所有東西:代碼、運行時間、系統工具、系統庫、設置等等。在Kubernetes下,pod是最小的單位。Pod能夠是單個鏡像,也能夠是多個共享相同存儲/網絡的鏡像,以及有關這些鏡像如何交互的描述。Pod的內容老是共同定位以及共同調度,並在共享的context中運行。
在Rancher 1.6中,負載均衡器用於將你的應用程序從Rancher環境中公開,容許外部的訪問。在Rancehr 2.0中這個概念是同樣的。有一個負載均衡器的選項幫助公開你的服務。在Kubernetes的語言中,這個功能一般被稱爲Ingress。簡而言之負載均衡器和Ingress扮演着相同的角色。
從概念上講,Cattle是全部編排工具中最接近Kubernetes的一個。但願這篇文章能給從Rancher 1.6過渡到Rancher 2.0的用戶一個簡單的參考。另外,Cattle和Kubernetes之間的類似性也能幫助用戶更好地進行轉換。
下表給出了新舊術語的快捷對比參考:
同時您能夠關注咱們的微信公衆號(RancherLabs),獲取Rancher 2.0的在線培訓的視頻回放連接,瞭解更多Rancher 2.0 Beta的操做演示,及如何使用Rancher 2.0管理Kubernetes集羣。