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等信息及监控数据,并且可以进行相应的管理操作。