若是不能訪問雲基礎設施怎麼辦?或許你但願可以像在生產環境中同樣,在本地開發中使用Rancher?node
沒問題,把Rancher 2.0安裝到電腦桌面就能夠了。nginx
在本教程中,我將帶你安裝Docker-for-Desktop Edge版,啓用內置的Kubernetes引擎,在桌面上運行本身的Rancher 2.0我的實例。git
在本教程中,要想管理和部署本地Kubernetes實例,你須要提早準備好以下工具:github
Kubectl – Kubernetes CLI工具
Helm – Kubernetes清單目錄工具docker
適用於Windows/Mac的Docker CE Edge安裝包中包含了基本的Kubernetes引擎。咱們能夠利用它來安裝本地的Rancher Server。從Docker Store上就能夠下載並安裝它。windows
Windows版:
https://store.docker.com/edit...瀏覽器
Mac版:
https://store.docker.com/edit...安全
登錄Docker,右鍵單擊System Tray中的Docker圖標,並選擇Settings服務器
Advanced Settings工具
在Advanced部分將Memory增長到至少4096MB。固然你可能也想增長分配的CPUs數量和磁盤映像的最大大小(Disk image max size)。
啓用Kubernetes
在Kubernetes部分,選中複選框啓用Kubernets API。Docker-for-Desktop會自動建立帶有憑證的~/.kube/config文件,以便kubectl可以訪問新的本地「集羣」。
若是沒有看到Kubernetes部分怎麼辦?請檢查General部分並確保你使用的是Edge版本。
測試集羣
打開終端測試集羣吧。運行kubectl get nodes。kubectl應該會返回一個名爲docker-for-desktop的節點。
Docker-for-Desktop並無安裝任何額外的工具。咱們能夠將一些靜態的YAML清單文件和kubectl一塊兒使用,不過咱們但願更多地利用Kubernetes社區中的已有工具,而不是從新造輪子。所以將helm做爲Kubernetes首選的打包管理工具。
helm charts爲Kubernetes YAML清單文檔提供了模板語法。有了helm咱們能夠建立可以進行配置的部署,而不是僅僅使用靜態文件。有關更多建立本身的部署目錄的信息,請參考https://helm.sh/上面的文檔。
Helm在你的集羣上會安裝tiller服務來管理chart部署。由於在默認狀況下docker-for-desktop啓用了RBAC,所以咱們須要用kubectl建立serviceaccount和clusterrolebinding,這樣tiller才能部署到咱們的集羣中。
在kube-system命名空間中建立ServiceAccount
建立ClusterRoleBinding讓tiller帳戶可以訪問集羣
最後使用helm初始化tiller服務
注意:tiller的安裝是具備徹底的集羣訪問權限的,可能並不適合生產環境。所以你須要多閱讀helm文檔,根據本身的安全性需求限制tiller的訪問。
Ingress Controller用於提供從外部世界到Kubernetes中運行的服務的L7 http路由。
咱們將使用helm安裝nginx-ingress chart。這將在咱們本地集羣上建立一個ingress controller。
「rancher」helm chart的默認選項是使用SSL傳遞迴Rancher服務器pod上的自簽名證書。爲了支持這一選項,咱們須要在安裝chart時添加--controller.extraArgs.enable-ssl-passthrough=""選項。
下面咱們使用helm安裝Rancher。
在默認安裝下將使用Rancher內置的自簽名SSL證書。你能夠在這裏看到該helm chart的全部選項:https://github.com/jgreat/hel...
首先將rancher-server倉庫添加到helm
如今安裝rancher chart
在默認狀況下,Rancher服務器將會監聽rancher.localhost。若是要訪問它,咱們須要設置一個主機文件條目,讓咱們的瀏覽器可以解析這個名稱。
Windows
c:windowssystem32driversetchosts
Mac
/etc/hosts
編輯系統的相應文件並添加此條目
瀏覽器訪問到 https://rancher.localhost
忽略SSL警告,接下來你應該就能看到Rancher的登錄界面了,須要你設置管理員密碼。
恭喜你!你已經有了本身的Rancher 2.0本地實例。你能夠添加應用程序charts,部署你的應用程序,一切就像在生產環境中同樣。