1 介紹
Rancher是一個開源的企業級多集群Kubernetes管理平臺,實現了Kubernetes集群在混合云+本地數據中心的集中部署與管理,以確保集群的安全性,加速企業數字化轉型。Rancher 1.0版本在2016年就已發布,時至今日,Rancher已經成長為企業在生產環境中運行容器和Kubernetes的首要選擇。
2 安裝Rancher
本文主要介紹如何通過docker安裝單機版rancher,方便快捷,適合在測試環境使用。可以選擇在一臺新的服務器上安裝docker,再在docker中安裝rancher,也可以在已有的docker環境中直接安裝rancher。rancher和k8s集群之間的網絡要能正常通信。此外KubeSphere也是目前極為流行的k8s集群管理平臺。Rancher安裝介紹可參考以下連接。
https://ranchermanager.docs.rancher.com/zh/pages-for-subheaders/installation-requirements
2.1 安裝Docker
[root@dev-vm ~]# yum install docker
[root@dev-vm ~]# systemctl enable docker
[root@dev-vm ~]# systemctl start docker
2.2 安裝Rancher
[root@dev-vm ~]# docker run -d --restart=unless-stopped -p 80:80 -p 443:443 --privileged rancher/rancher:latest
[root@dev-vm ~]# docker ps ##rancher容器已運行,http暴露的是80端口,https暴露的是443端口
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
936db8c4e4c0 rancher/rancher:latest "entrypoint.sh" 9 minutes ago Up 9 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp adoring_mclean
2.3 訪問Rancher
通過https://ip:443訪問rancher,默認用戶名為admin,第一次訪問時rancher會提示如何獲取登錄密碼
[root@dev-vm ~]# docker logs 936db8c4e4c0 2>&1 |grep "Password"
2023/07/18 06:13:39 [INFO] Bootstrap Password: 4scfvcxwfthxxwhdnthkpm4hjbhhxl7lhdcfnmx65dgwhdfltrrfxz
登錄后按照提示修改密碼
登錄到首頁
3 Rancher管理已有的K8S集群
3.1 Rancher平臺側的操作
選擇集群管理
導入已有集群
集群類型選擇通用
輸入集群名,點擊創建
在已有的k8s集群上執行下列命令,將其導入到rancher。通常我們使用的都是自簽證書,只執行第二條命令就可以
3.2 K8S側操作
在k8s集群的任一master節點上操作
[root@k8s-master01 ~]# curl --insecure -sfL https://172.20.14.51/v3/import/hb8dn7sggz8r86ghxn4n2f89gdj2cbwpkq69lch64pjpfjz7vvgjzj_c-m-fk8bz9cj.yaml | kubectl apply -f - ##該操作會創建集群角色、命名空間、sa、deployment等資源
[root@k8s-master01 ~]# kubectl get pod -n cattle-system ##檢查相應命名空間下的pod是否已經創建好,外網鏡像拉取可能會比較慢,會消耗一定的時間
NAME READY STATUS RESTARTS AGE
cattle-cluster-agent-6d8f56889-8j8ls 1/1 Running 0 164m
cattle-cluster-agent-6d8f56889-8rjrd 1/1 Running 0 160m
rancher-webhook-bb8dd8bd8-jlgk9 1/1 Running 0 156m
再次檢查可以發現k8s集群已被racher管理,且狀態為active
點擊集群詳情,我們能看到pod、node、namespace等信息及監控數據,并且可以進行相應的管理操作。