0


如何使用装rancher安装k8s集群(k8s集群图形化管理工具)

前言

kubernetes集群的图形化管理工具主要有以下几种:
1、 Kubernetes Dashborad: Kubernetes 官方提供的图形化工具
2、 Rancher: 目前比较主流的企业级kubernetes可视化管理工具
3、各个云厂商Kubernetes集成的管理器
4、 Kuboard: 国产开源Kubernetes可视化管理工具
本篇我们来学习 主流的企业级kubernetes可视化管理工具-rancher工具。

rancher官网

官网:

  1. https://www.rancher.cn/

github:

  1. https://github.com/rancher/rancher

镜像托管在

  1. hub.docker.com

上。
rancher的版本与k8s的版本有着一定的关系,在

  1. https://www.suse.com/suse-rancher/support-matrix/all-supported-versions/rancher-v2-7-5/

中可以查看。

主机准备

准备4台服务器,一台用于rancher软件,其他3台用于搭建k8s高可用集群:

  1. rancher : 安装rancher
  2. master01 : k8s master节点,也分配nodeetcd角色;
  3. node01 : k8s node节点,也分配nodeetcd角色;
  4. node2 : k8s node节点,也分配nodeetcd角色;

环境初始化

4台主机都根据实际情况做如下6大步骤配置:

  1. # 1、关闭防火墙
  2. systemctl stop firewalld && systemctl disable firewalld
  1. # 2、禁用selinux
  2. setenforce 0#临时关闭selinuxvim /etc/selinux/config #永久关闭selinuxSELINUX=disabled
  1. # 3、关闭swap分区(必须,因为k8s官网要求)
  2. swapoff -a#禁用所有swap交换分区vim /etc/fstab #永久禁用swap,删除或注释掉/etc/fstab里的swap设备的挂载命令即可#/dev/mapper/centos-swap swap swap defaults 0 0
  1. # 4、设置主机名并写入配置文件
  2. hostnamectl set-hostname rancher
  3. hostnamectl set-hostname master01
  4. hostnamectl set-hostname node1
  5. hostnamectl set-hostname node2
  6. cat>> /etc/hosts <<EOF
  7. 192.168.544.150 rancher
  8. 192.168.544.151 master01
  9. 192.168.544.152 node1
  10. 192.168.544.153 node2
  11. EOF
  1. # 5、时间同步
  2. yum install chrony -y&& systemctl enable--now chronyd
  1. # 6、将桥接的IPv4流量传递到iptables的链(有一些ipv4的流量不能走iptables链,因为linux内核的一个过滤器,每个流量都会经过他,然后再匹配# 是否可进入当前应用进程去处理,所以会导致流量丢失),配置k8s.conf文件(k8s.conf文件原来不存在,需要自己创建的)cat>> /etc/sysctl.d/k8s.conf <<EOF
  2. net.bridge.bridge-nf-call-ip6tables=1
  3. net.bridge.bridge-nf-call-iptables=1
  4. net.ipv4.ip_forward=1
  5. vm.swappiness=0
  6. EOFsysctl-p

rancher的安装

rancher本身也是使用docker进行安装,所以要先安装好docker,docker的安装请参考

  1. Linux下如何安装docker详细介绍(联网、离线安装)``https://blog.csdn.net/MssGuo/article/details/122694156

rancher本质上是封装了RKE和K3S来安装k8s的。

rancher是一个开源的项目,开源的代码在

  1. https://github.com/rancher/rancher

上:
在这里插入图片描述
可以看到目前最新的rancher版本是2.7.5

rancher镜像位于

  1. https://hub.docker.com/

上,如下所示进入hub.docker官网搜索rancher:
在这里插入图片描述

  1. [root@rancher ~]# docker pull rancher/rancher:v2.7.5 #拉取rancher镜像
  2. v2.6.7-linux-amd64: Pulling from rancher/rancher
  3. 9047ed9df36f: Pull complete
  4. Digest: sha256:2c63e264eacc633d9d98ad30ac30bade271b66454a63446f0156191cee77aa9e
  5. Status: Downloaded newer image for rancher/rancher:v2.6.7-linux-amd64
  6. docker.io/rancher/rancher:v2.6.7-linux-amd64
  7. [root@rancher ~]# docker images #查看rancher镜像
  8. REPOSITORY TAG IMAGE ID CREATED SIZE
  9. rancher/rancher v2.6.7-linux-amd64 23fa8b4529d2 Less than a second ago 1.55GB
  10. [root@rancher ~]#

启动rancher容器

  1. #创建一个目录用于存放rancher的持久化数据[root@rancher ~]# mkdir /rancher_data #--privileged运行特权模式,-p表示映射本机的80端口到容器的80端口,443端口到容器的443端口,-v挂载持久卷,[root@rancher ~]# docker run -d --privileged -p 80:80 -p 443:443 -v /rancher_data:/var/lib/rancher/ --restart=unless-stopped --name rancher-v2.7.5 rancher/rancher:v2.7.5[root@elk-client ~]# docker ps #确认容器的CREATED时间STATUS时间基本相同就表示容器没有重启,rancher正常
  2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  3. 768949c78d09 rancher/rancher:v2.7.5 "entrypoint.sh"8 minutes ago Up 8 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp rancher-v2.7.5

网页登陆rancher

输入服务器ip地址

  1. http://192.168.544.150

,默认会跳转到https的443端口,登录页面左下角有设置中文,可以设置中文,如下所示:
在这里插入图片描述

按照页面的提示,去容器里面查找rancher的登陆密码:

  1. [root@rancher ~]# docker logs 7cf867e736fd01 2>&1 | grep "Bootstrap Password:"2023/08/19 16:37:41 [INFO] Bootstrap Password: q5hgkh5lgtncbm2q2tts8w6cdz45xfvpx7v5s8dk9f4c8dpbzrcr6s
  2. [root@rancher ~]#

复制密码进行登陆,跳转到如下页面,显示要我们要给默认账号admin设置一个登陆密码,那我们就设置一个登陆密码,密码需要有一定的复杂度,这里我就设置为admin12345678:
在这里插入图片描述

使用rancher创建一个k8s集群

既可以将已有的k8s集群加入rancher,让rancher管理,也可以使用rancher创建一个新的k8s集群,这里我们使用rancher创建一个新的k8s集群。
在这里插入图片描述
点击打开RKE2/K3S开关,我们选择使用RKE2创建k8s集群,点击自定义按钮,如下:
在这里插入图片描述
如下,填写集群名称,集群描述信息,可以看到rancher2.7.5支持的k8s版本有4个,我们选择RKE方式安装的

  1. v1.25.12+rke2r2

,其他选项保持默认即可:
在这里插入图片描述
网络配置:
在这里插入图片描述
其他配置保持默认即可,最后,点击右下角的创建按钮,页面自动跳转到了集群页面,点击我们创建的k8s集群:
在这里插入图片描述
页面跳转到了这里,如下,节点角色勾选对应的角色后会生成对应的注册命令,把这串注册命令复制粘贴到k8s服务器上执行即可,这里由于我只有3台主机,所以角色规划是3台服务器都作为master、etcd、node角色:

  1. master01 k8s master节点,也分配nodeetcd角色;
  2. node01k8s node节点,也分配masteretcd角色;
  3. node02k8s node节点,也分配masteretcd角色;

在这里插入图片描述

把注册命令复制粘贴到k8s服务器上执行,然后等待安装完成,在左侧"主机"栏可以查看:
在这里插入图片描述
等全部的节点安装完毕后,返回首页,点击集群名称即可进入集群。

创建deployment和svc

进入集群:
在这里插入图片描述
创建一个deployment:
在这里插入图片描述
在页面填写信息即可:
在这里插入图片描述

在这里插入图片描述

创建完成之后,等待deployment就绪即可:
在这里插入图片描述
创建svc,选择对应的标签选择器:
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

等待svc创建完成即可:
在这里插入图片描述
浏览器页面访问成功:
在这里插入图片描述

kubectl 命令行工具设置

使用rancher安装的k8s集群,服务器里面的kubectl 工具不能正常使用,如果需要在服务器执行kubectl命令的话,需要配置一下上下文:

  1. #kubectl 配置命令自动补全
  2. yum install-y bash-completion
  3. echo'source /usr/share/bash-completion/bash_completion'>> ~/.bashrc
  4. echo'source <(kubectl completion bash)'>> ~/.bashrc
  5. source ~/.bashrc
  6. find / -name kubectl
  7. ln-s /var/lib/rancher/rke2/data/v1.25.12-rke2r1-15557ace5a8f/bin/kubectl /usr/bin/kubectl

返回首页,点击管理:
在这里插入图片描述
下载kubeConfig文件:
在这里插入图片描述

  1. mkdir${HOME}/.kube/
  2. #把下载的kubeConfig上传到服务器,重命名mv datacenter.yaml /root/.kube/config
  3. #验证正常使用 [root@master01 ~]# kubectl get pod
  4. NAME READY STATUS RESTARTS AGE
  5. nginx-dc9ff6bdf-xc22t 1/1 Running 0 66m

以上就完成了rancher的安装和使用。


本文转载自: https://blog.csdn.net/MssGuo/article/details/126595134
版权归原作者 MssGuo 所有, 如有侵权,请联系我们删除。

“如何使用装rancher安装k8s集群(k8s集群图形化管理工具)”的评论:

还没有评论