物聯網架構成長之路(45)-容器管理平台Rancher


0.前言

  按照上一篇博客,我已經把需要下載的rancher docker 依賴鏡像下載上傳到Harbor了。

1. 安裝

  執行如下,實現一鍵安裝

1 docker run -d --restart=unless-stopped -p 80:80 -p 443:443 -v /opt/rancher:/var/lib/rancher/ rancher/rancher:stable

  具體看這個文檔 https://rancher.com/docs/rancher/v2.x/en/
  后續所有練習都是基於本地倉庫執行,方便后面測試

1 docker pull 172.16.23.203:20000/rancher/rancher:v2.3.2
2 docker tag 172.16.23.203:20000/rancher/rancher:v2.3.2 rancher/rancher:v2.3.2
3 docker rmi 172.16.23.203:20000/rancher/rancher:v2.3.2
4 docker run -d --restart=unless-stopped -p 80:80 -p 443:443 -v /opt/rancher:/var/lib/rancher/ rancher/rancher:v2.3.2

 

  執行以下命令,然后等一段時間,運行rancher還需要初始化1-2分鍾。然后就可以訪問了

 1 apt-get install -y docker.io
 2 wget http://172.16.23.203/res/docker-compose
 3 chmod +x docker-compose
 4 cp docker-compose /usr/local/bin
 5 
 6 cat >/etc/docker/daemon.json <<-EOF
 7 {
 8     "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"],
 9     "insecure-registries": ["http://172.16.23.203:20000"]
10 }
11 EOF
12 systemctl daemon-reload
13 systemctl restart docker
14 
15 docker login 172.16.23.203:20000 -u admin -p 123456
16 
17 #install rancher
18 docker pull 172.16.23.203:20000/rancher/rancher-agent:v2.3.2
19 docker tag 172.16.23.203:20000/rancher/rancher-agent:v2.3.2 rancher/rancher-agent:v2.3.2
20 docker rmi 172.16.23.203:20000/rancher/rancher-agent:v2.3.2
21 
22 docker pull 172.16.23.203:20000/rancher/rancher:v2.3.2
23 docker tag 172.16.23.203:20000/rancher/rancher:v2.3.2 rancher/rancher:v2.3.2
24 docker rmi 172.16.23.203:20000/rancher/rancher:v2.3.2
25 docker run -d --restart=unless-stopped -p 80:80 -p 443:443 -v /opt/rancher:/var/lib/rancher/ rancher/rancher:v2.3.2

  創建一個集群 Add Cluster , 選擇Custom 本地節點方式

  填寫Cluster Name后,就下一步。在 Node Options 角色部分,就全選。其中Worker角色,表示可以在該節點安裝Pod。其他兩個就是一些集群的配置信息。

  用VMs創建一台新的虛擬機,執行以下腳本(注,每個人的腳本都有所不一樣)

 

 1 apt-get install -y docker.io
 2 wget http://172.16.23.203/res/docker-compose
 3 chmod +x docker-compose
 4 cp docker-compose /usr/local/bin
 5 
 6 cat >/etc/docker/daemon.json <<-EOF
 7 {
 8   "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"],
 9   "insecure-registries": ["http://172.16.23.203:20000"]
10 }
11 EOF
12 systemctl daemon-reload
13 systemctl restart docker
14 
15 docker login 172.16.23.203:20000 -u admin -p 123456
16 
17 #install rancher
18 #docker pull 172.16.23.203:20000/rancher/rancher-agent:v2.3.2
19 #docker tag 172.16.23.203:20000/rancher/rancher-agent:v2.3.2 rancher/rancher-agent:v2.3.2
20 #docker rmi 172.16.23.203:20000/rancher/rancher-agent:v2.3.2
21 #docker pull 172.16.23.203:20000/rancher/rancher:v2.3.2
22 #docker tag 172.16.23.203:20000/rancher/rancher:v2.3.2 rancher/rancher:v2.3.2
23 #docker rmi 172.16.23.203:20000/rancher/rancher:v2.3.2
24 #docker run -d --restart=unless-stopped -p 80:80 -p 443:443 -v /opt/rancher:/var/lib/rancher/ rancher/rancher:v2.3.2
25 
26 #install worker node
27 docker pull 172.16.23.203:20000/rancher/rancher-agent:v2.3.2
28 docker pull 172.16.23.203:20000/rancher/hyperkube:v1.15.5-rancher1
29 docker pull 172.16.23.203:20000/rancher/rke-tools:v0.1.50
30 docker pull 172.16.23.203:20000/rancher/calico-node:v3.7.4
31 docker pull 172.16.23.203:20000/rancher/calico-cni:v3.7.4
32 docker pull 172.16.23.203:20000/rancher/coreos-flannel:v0.11.0
33 docker pull 172.16.23.203:20000/rancher/coreos-etcd:v3.3.10-rancher1
34 docker pull 172.16.23.203:20000/rancher/pause:3.1
35 docker pull 172.16.23.203:20000/rancher/metrics-server:v0.3.3
36 docker pull 172.16.23.203:20000/rancher/coredns-coredns:1.3.1
37 docker pull 172.16.23.203:20000/rancher/cluster-proportional-autoscaler:1.3.0
38 docker pull 172.16.23.203:20000/rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1
39 docker tag 172.16.23.203:20000/rancher/rancher-agent:v2.3.2 rancher/rancher-agent:v2.3.2
40 docker tag 172.16.23.203:20000/rancher/hyperkube:v1.15.5-rancher1 rancher/hyperkube:v1.15.5-rancher1
41 docker tag 172.16.23.203:20000/rancher/rke-tools:v0.1.50 rancher/rke-tools:v0.1.50
42 docker tag 172.16.23.203:20000/rancher/calico-node:v3.7.4 rancher/calico-node:v3.7.4
43 docker tag 172.16.23.203:20000/rancher/calico-cni:v3.7.4 rancher/calico-cni:v3.7.4
44 docker tag 172.16.23.203:20000/rancher/coreos-flannel:v0.11.0 rancher/coreos-flannel:v0.11.0
45 docker tag 172.16.23.203:20000/rancher/coreos-etcd:v3.3.10-rancher1 rancher/coreos-etcd:v3.3.10-rancher1
46 docker tag 172.16.23.203:20000/rancher/pause:3.1 rancher/pause:3.1
47 docker tag 172.16.23.203:20000/rancher/metrics-server:v0.3.3 rancher/metrics-server:v0.3.3
48 docker tag 172.16.23.203:20000/rancher/coredns-coredns:1.3.1 rancher/coredns-coredns:1.3.1
49 docker tag 172.16.23.203:20000/rancher/cluster-proportional-autoscaler:1.3.0 rancher/cluster-proportional-autoscaler:1.3.0
50 docker tag 172.16.23.203:20000/rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1 rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1
51 docker rmi 172.16.23.203:20000/rancher/rancher-agent:v2.3.2
52 docker rmi 172.16.23.203:20000/rancher/hyperkube:v1.15.5-rancher1
53 docker rmi 172.16.23.203:20000/rancher/rke-tools:v0.1.50
54 docker rmi 172.16.23.203:20000/rancher/calico-node:v3.7.4
55 docker rmi 172.16.23.203:20000/rancher/calico-cni:v3.7.4
56 docker rmi 172.16.23.203:20000/rancher/coreos-flannel:v0.11.0
57 docker rmi 172.16.23.203:20000/rancher/coreos-etcd:v3.3.10-rancher1
58 docker rmi 172.16.23.203:20000/rancher/pause:3.1
59 docker rmi 172.16.23.203:20000/rancher/metrics-server:v0.3.3
60 docker rmi 172.16.23.203:20000/rancher/coredns-coredns:1.3.1
61 docker rmi 172.16.23.203:20000/rancher/cluster-proportional-autoscaler:1.3.0
62 docker rmi 172.16.23.203:20000/rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1
63 
64 sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.3.2 --server https://172.16.23.103 --token xvrvrg8s6shxg6bq2qc6v42fdmjm9dsbdzbff7hnfpp5mwtlfblmsg --ca-checksum 2cb3135fa308dcbd6bf6a73632072a05c03a1a8b42afc53acc594d8b440a159b --etcd --controlplane --worker

 

  在Worker節點執行以上命令,將在Node節點部署rancher-agent,這個過程需要等待一段時間,如果是從hub.docker.com上下載的,或者aliyuncs.com鏡像下載的,也是需要花一段時間,因為下載的東西很大。
  理論執行上面一句命令就可以完成節點Node的部署。但是實時沒有那么簡單,有時候會因為網絡問題,卡住不動。我一直以為是自己的原因。還有,下載的依賴,可能有1-2G,下載也是慢,所以要查查資料,看怎么使用私有repo。哎,都是淚。
  還有就是之前宿主主機系統安裝過etcd,這個需要卸載掉。


  同理這樣的機器安裝多幾台,這個過程完全自動化,還是比較花時間安裝和服務發現的。吃個飯回來,就基本好了。

 

2.說明

  前面博客有說到安裝Kubernetes 花了將近3天,真從入門安裝到放棄。現在試一下用RKE(Rancher Kubernetes Engine) 安裝k8s
  Rancher 所需的文件可以到這里下載 https://www.rancher.cn/docs/rancher/v2.x/cn/install-prepare/download/
  簡單入門: https://www.rancher.cn/docs/rancher/v2.x/cn/overview/quick-start-guide/

 

3. 附錄,JS生成Bash腳本

 

 1 var list = ["rancher/rancher-agent:v2.3.2",
 2     "rancher/hyperkube:v1.15.5-rancher1",
 3     "rancher/rke-tools:v0.1.50",
 4     "rancher/calico-node:v3.7.4",
 5     "rancher/calico-cni:v3.7.4",
 6     "rancher/coreos-flannel:v0.11.0",
 7     "rancher/coreos-etcd:v3.3.10-rancher1",
 8     "rancher/pause:3.1",
 9     "rancher/metrics-server:v0.3.3",
10     "rancher/coredns-coredns:1.3.1",
11     "rancher/cluster-proportional-autoscaler:1.3.0",
12     "rancher/nginx-ingress-controller:nginx-0.25.1-rancher1",
13     "rancher/kube-api-auth:v0.1.3",
14     "rancher/coredns-coredns:1.3.1",
15     "rancher/cluster-proportional-autoscaler:1.3.0",
16     "rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1"
17 ];
18 
19 var url = "172.16.23.203:20000/";
20 var log = "";
21 for(var i=0; i<list.length; i++){
22   log += "docker tag " + list[i] + " " + url + list[i] +"\n"
23 }
24 console.log(log)
25 log = "";
26 for(var i=0; i<list.length; i++){
27   log += "docker push " + url + list[i] +"\n"
28 }
29 console.log(log)
30 log = "";
31 for(var i=0; i<list.length; i++){
32   log += "docker rmi " + url + list[i] + "\n"
33 }
34 console.log(log)
35 log = "";
36 for(var i=0; i<list.length; i++){
37   log += "docker pull " + url + list[i] + "\n"
38 }
39 console.log(log);
40 log = "";
41 for(var i=0; i<list.length; i++){
42   log += "docker tag " + url + list[i] + " " + list[i] + "\n"
43 }
44 console.log(log);

 

本文地址: https://www.cnblogs.com/wunaozai/p/11822386.html

本系列目錄:https://www.cnblogs.com/wunaozai/p/8067577.html

個人主頁:https://www.wunaozai.com/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM