關於容器叢集編排工具Rancher 2.0的使用經驗分享
前言
最近這段時間想為公司的CI系統增加自動部署和擴容能力,看了看Jimmy Song的kubernetes-handbook就著手試了試,就尋摸著把kubernetes架起來玩玩。但一番折騰後發現手動部署kubernetes確實不是一件輕鬆的事,稍不小心就是難以定位的錯誤。難怪簡化kubernetes的工具出了一批又一批,先後嘗試了kuberadmin,vargant和rancher等工具。Rancher作為一款自帶UI的叢集編排工具,在易用性上確實比原生的kubernetes要簡單很多,但是又有不少問題,所以在這裡分享一下相關經驗。
什麼是Rancher
Rancher為容器提供一攬子基礎架構服務:CNI相容的網路服務、儲存服務、主機管理、負載均衡、防護牆……
Rancher讓上述服務跨越公有云、私有云、虛擬機器、物理機環境執行,真正實現一鍵式應用部署和管理
Rancher部署過程
好了,上面我們已經簡單介紹過rancher了,下面我們就再說一下如何部署Rancher2.0。
1.部署主節點
rancher2.0的部署是基於Docekr的所以大家要把相關環境準備好,這裡是
1)準備一臺主機(ububtu 16.04),其他版本的系統可能出現詭異的問題。
2)安裝docker,sudo apt insall docker.io
3)安裝rancher,sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher
,國內網路這個過程將非常漫長,而且可能失敗,失敗了就重試,實在不行就得學會科學上網了
4)上面這步成功後,就開啟瀏覽器,登入https://ip檢查是否真的成功。
點選高階繼續進去就可以看到登入介面了
接下來就是設定登入密碼等工作了,看提示基本都沒問題。
2;擴充套件工作節點
這個也相當簡單,在叢集頁面中點選右上角的編輯按鈕,彈出下圖。
在要擴充套件的計算機上執行那一長串的docker命令即可。
3.部署映象庫私服
使用rancher意味著服務必然已經docker化為映象了,這也意味這rancher必須有一個對應的映象庫。
目前映象庫有DockerHub,網易,阿里雲等服務提供商,但DockerHub網速感人,網易則只提供10個的試用額度,超過10個要提申請還要公司驗證,其他的則是要交錢了。
為了解決這個問題,建議部署私有的映象管理工具,預設的是registry了,但這個比較簡單,沒有許可權和專案的概念。建議部署harbor,vmware出品還是很好用的。
部署也比較簡單,詳細過程我就不在這介紹了,有點跑題。參見github。
有幾點需要注意:
1)除非部署https否則的話rancher的各個節點都要更改docker的配置檔案,daemon.json來容許從harbor以http連線
2)私有映象庫在rancher上是分專案的,在每一個專案中都要配置對應的物件庫,具體如下圖。
根據進一步的提示填入賬號密碼即可呼叫了私有庫了。
總結
1.rancher整體就是基於docker的因此安裝非常簡單
2.在部署時儘量將rancher和k8s的節點分開,否則服務多了會特別卡,別問我怎麼知道的
3.rancher2.0還是有不少坑的,請小心嘗試。