目录

 初始化实验环境

安装Rancher

登录Rancher平台

通过Rancher2.7管理已存在的k8s最新版集群


文档中的YAML文件配置直接复制粘贴可能存在格式错误,故实验中所需要的YAML文件以及本地包均打包至网盘.

链接:https://pan.baidu.com/s/1oYX4eGoBtW_R-7i45rk8pw 
提取码:prk9 
 

Rancher是一个开源的企业级多集群Kubernetes管理平台,实现了Kubernetes集群在混合云+本地数据中心的集中部署与管理,以确保集群的安全性,加速企业数字化转型。

超过40,000家企业每天使用Rancher快速创新

Rancher官方文档:

https://docs.rancher.cn/

以下是 Rancher 的一些基本介绍:

  1. 容器管理:Rancher 支持 Kubernetes,允许用户通过 Web 界面集中管理多个k8s集群。它允许用户通过简单的几步就能够部署k8s资源
  2. 多云支持:Rancher 提供了对多个云提供商的支持,如 AWS、Azure、Google Cloud 等,使用户能够在不同云平台之间轻松迁移容器工作负载。
  3. 高可用性:Rancher 可以配置为高可用模式,确保平台本身的稳定性和容错性。这意味着即使在某些节点失败的情况下,Rancher 仍然可以继续运行并提供服务。
  4. 安全性:Rancher 提供了多层级的安全特性,包括用户认证、访问控制、镜像安全扫描等,帮助用户保护容器化应用程序的安全。
  5. 资源管理:Rancher 允许用户对容器集群中的资源进行管理和调整,以确保应用程序的性能和稳定性。
  6. 应用商店:Rancher 提供了应用商店(Catalog)功能,允许用户浏览和安装预定义的应用程序模板,简化了应用程序部署的过程。

 初始化实验环境

安装rancher需要的实验环境如下:

环境说明(centos7.9):

IP                 主机名                 内存    cpu

192.168.40.138   xianchaorancher          4G      4vCPU

已经存在的K8s实验环境:

角色            ip                     主机名

控制节点       192.168.40.180         xianchaomaster1

工作节点       192.168.40.181         xianchaonode1

配置主机名:

在192.168.40.138上执行如下:

hostnamectl set-hostname xianchaorancher

配置hosts文件:

#在xianchaomaster1、xianchaonode1、xianchaorancher上操作:

192.168.40.180   xianchaomaster1

192.168.40.181   xianchaonode1

192.168.40.138   xianchaorancher

关闭防火墙

[root@xianchaorancher ~]# systemctl stop firewalld ; systemctl disable firewalld

关闭selinux

[root@xianchaorancher ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

注意:修改selinux配置文件之后,重启机器,selinux才能永久生效

内核参数修改:br_netfilter模块用于将桥接流量转发至iptables链,br_netfilter内核参数需要开启转发。

[root@xianchaorancher ~]# modprobe br_netfilter

[root@xianchaorancher ~]# cat > /etc/sysctl.d/k8s.conf <<EOF

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

net.ipv4.ip_forward = 1

EOF

[root@xianchaorancher ~]# sysctl -p /etc/sysctl.d/k8s.conf

#配置国内阿里云docker的repo源

安装基础软件包

[root@xianchaorancher ~]# yum install -y yum-utils device-mapper-persistent-data lvm2 wget net-tools nfs-utils lrzsz gcc gcc-c++ make cmake libxml2-devel openssl-devel curl curl-devel unzip sudo ntp libaio-devel wget vim ncurses-devel autoconf automake zlib-devel  python-devel epel-release openssh-server socat  ipvsadm conntrack ntpdate 

配置时间同步:

#跟网络时间做同步

[root@ xianchaorancher ~]# ntpdate cn.pool.ntp.org

#把时间同步做成计划任务

[root@ xianchaorancher ~]# crontab -e

* * * * * /usr/sbin/ntpdate   cn.pool.ntp.org

#重启crond服务

[root@ xianchaorancher ~]#service crond restart

添加阿里云docker在线源

[root@xianchaorancher ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

在xianchaorancher上安装docker-ce。我们已经配置了docker本地源,直接安装docker-ce服务。

安装docker-ce

[root@xianchaorancher ~]# yum install docker-ce -y

[root@xianchaomaster1 ~]# systemctl start docker && systemctl enable docker.service

修改docker配置文件,配置镜像加速器

[root@xianchaorancher ~]# tee /etc/docker/daemon.json << 'EOF'

{

"registry-mirrors":["https://rsbud4vc.mirror.aliyuncs.com","https://registry.docker-cn.com","https://docker.mirrors.ustc.edu.cn","https://dockerhub.azk8s.cn","http://hub-mirror.c.163.com","http://qtid6917.mirror.aliyuncs.com", "https://rncxm540.mirror.aliyuncs.com"],

"exec-opts": ["native.cgroupdriver=systemd"]

}

EOF

[root@xianchaorancher ~]# systemctl restart docker

[root@xianchaorancher ~]# systemctl status docker

显示如下,说明docker安装成功了

● docker.service - Docker Application Container Engine

   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)

   Active: active (running) since Wed 2021-03-17 12:39:06 CST

安装Rancher

Rancher2.7+版本支持导入已经存在的k8s1.24+版本的k8s集群:

在xianchaorancher上操作如下命令:

[root@xianchaorancher ~]# docker load -i rancher_2.7.3.tar.gz

[root@xianchaorancher ~]# docker run -d --restart=unless-stopped -p 80:80 -p 443:443 --privileged rancher/rancher:v2.7.3

注:unless-stopped,在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器

验证rancher是否启动:

[root@xianchaorancher ~]# docker ps | grep rancher

显示如下,说明启动成功:

70b5916dd1bc   rancher/rancher:v2.7.3   "entrypoint.sh"   45 seconds ago   Up 36 seconds   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   recursing_hofstadter

登录Rancher平台

在浏览器访问xianchaorancher的ip地址:

选择高级

接受风险并继续

(1)获取密码:

在xianchaorancher上,docker ps查看正在运行的容器,显示如下:

CONTAINER ID   IMAGE                    COMMAND           CREATED         STATUS         PORTS                                                                      NAMES

70b5916dd1bc   rancher/rancher:v2.7.3   "entrypoint.sh"   3 minutes ago   Up 3 minutes   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   recursing_hofstadter

通过上面可以看到容器的id是70b5916dd1bc   

[root@xianchaorancher~]# docker logs 70b5916dd1bc   2>&1 | grep "Bootstrap Password:"

2022/04/16 02:29:29 [INFO] Bootstrap Password: sq5hsgp7n8585m4l85s6khdnz2q4f79fwtgh5w2l7k669hvknn26jw

通过上面可以看到获取到的密码是

sq5hsgp7n8585m4l85s6khdnz2q4f79fwtgh5w2l7k669hvknn26jw

把获取到的密码sq5hsgp7n8585m4l85s6khdnz2q4f79fwtgh5w2l7k669hvknn26jw复制到password位置:

使用本地用户登录,显示如下:

设置新的密码:

点击继续之后,显示如下:

通过Rancher2.7管理已存在的k8s最新版集群

#把已经存在的k8s集群导入到rancher了

选择导入已有的集群,出现下面界面

选择通用,出现如下界面:

集群名称:xianchao,点击创建

出现如下界面:

在k8s控制节点复制上图红色箭头标注的一串命令:

[root@xianchaonode1 ~]# ctr -n=k8s.io images import rancher-agent_2.7.3.tar.gz

[root@xianchaomaster1 ~]# ctr -n=k8s.io images import rancher-agent_2.7.3.tar.gz

 [root@xianchaomaster1 ~]# curl --insecure -sfL https://192.168.40.138/v3/import/stqwgdprrz7brdvzr7wgrqt6m6wgmq8w6kcj6sg8rwxl6rqr4bqdqb_c-m-5cnf2c8v.yaml | kubectl apply -f –

验证rancher-agent是否部署成功:

[root@xianchaomaster1 ~]# kubectl get pods -n cattle-system -o wide

NAME                                    READY   STATUS    RESTARTS   AGE   IP              NODE              NOMINATED NODE   READINESS GATES

cattle-cluster-agent-57c864c7f5-f7n28   1/1     Running   0          44s   10.244.121.7    xianchaonode1     <none>           <none>

cattle-cluster-agent-57c864c7f5-rw9w2   1/1     Running   0          52s   10.244.123.66   xianchaomaster1   <none>           <none>

看到cattle-cluster-agent这个pod时running,说明rancher-agent部署成功了,在rancher ui界面可以看到如下内容:https://192.168.40.138/dashboard/home

上面结果说明rancher里面已经导入了k8s,k8s的版本是1.23.1

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部