基於CentOS 7部署Rancher 2.0

0.伺服器準備

我們準備了5台伺服器,1台安裝rancher-server,2台master和2台worker:

rancher 10.11.111.56master1 10.11.111.57master2 10.11.111.58worker1 10.11.111.59worker2 10.11.111.60

伺服器數量視自身需求而定,甚至單機也可以。

1.Docker安裝

請參考:Docker一鍵安裝腳本分享 安裝即可,每台伺服器都需要安裝。需要注意的是,Rancher對Docker的版本有所要求,目前支持以下幾個版本:

  • 1.12.6
  • 1.13.1
  • 17.03.2

為了避免少出問題,我建議使用官方推薦的版本,這裡我們使用17.03.2。

2.啟動Rancher

啟動rancher的命令超簡單,這裡分享一個腳本:

#!/bin/bashname="rancher"docker rm -f $namedocker run --restart=unless-stopped -d -p 80:80 -p 443:443 -v `pwd`/data:/var/lib/rancher --name $name rancher/server:preview

從上面腳本中可以看出,我映射了當前目錄下的data文件夾到/var/lib/rancher,原因是經我們測試發現,如果不將/var/lib/rancher目錄映射出來,那麼當rancher容器刪除重建後,配置數據就會丟失(我們之前以為它的數據是存etcd,捂臉~)。

這裡在CentOS 7下有個坑,當你啟動發現rancher容器日誌報這個錯時:

Failed to start container manager: inotify_add_watch /sys/fs/cgroup/cpuacct,cpu: no such file or directory

需要設置:

sudo mount -o remount,rw /sys/fs/cgroupsudo ln -s /sys/fs/cgroup/cpu,cpuacct /sys/fs/cgroup/cpuacct,cpu

然後再重啟容器就行了。

3.訪問Rancher

當rancher啟動完成後,我們通過10.11.111.56可以進入Rancher管理界面,首次進入需要設置下admin的密碼:

接下來是設置rancher-server的URL,需要注意的是這個URL所有節點都必須可訪問才行(該URL後續可在管理後台修改):

4.新建集群

設置成功後,我們就可以開始新建集群了,點擊下方Add Cluster按鈕:

指定集群名稱(建議使用小寫字母+數字):

按此配置即可

點擊Next後:

我們現在分配兩台master作為etcd+Control,另外兩台伺服器作為Worker。

所以先只勾選etcd和Control的選擇框,將生成的命令在兩台master上執行:

sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/agent:v2.0.0-beta3 --server https://xxx.xxx.xxx.xxx --token xxxx --ca-checksum xxxx --etcd --controlplane

再只勾選Worker的選擇框,將生成的命令在兩台worker上執行:

sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/agent:v2.0.0-beta3 --server https://xxx.xxx.xxx.xxx --token xxxx --ca-checksum xxxx --worker

待節點都註冊成功後,在集群詳情可看到如下界面:

參考文章

Quick Start Guide

centos7.4 上面 docker 啟動 cAdvisor 報錯問題解決

封面來源

rancher.com/img/dashboa


推薦閱讀:

Pivotal和谷歌共建Kubernetes(K8S)生態(上篇)
kubernetes本地集群搭建
Kubernetes dashboard更新升級和用戶許可權認證
Kubernetes中的用戶與身份認證授權

TAG:CentOS | Rancher | Kubernetes |