深圳网站定制价格低,网站建设哪家公司比较好,即商通网站建设推广,长沙企业网站排名优化前言
kubernetes集群的图形化管理工具主要有以下几种#xff1a; 1、 Kubernetes Dashborad: Kubernetes 官方提供的图形化工具 2、 Rancher: 目前比较主流的企业级kubernetes可视化管理工具 3、各个云厂商Kubernetes集成的管理器 4、 Kuboard: 国产开源Kubernetes可视化管理…前言
kubernetes集群的图形化管理工具主要有以下几种 1、 Kubernetes Dashborad: Kubernetes 官方提供的图形化工具 2、 Rancher: 目前比较主流的企业级kubernetes可视化管理工具 3、各个云厂商Kubernetes集成的管理器 4、 Kuboard: 国产开源Kubernetes可视化管理工具 本篇我们来学习 主流的企业级kubernetes可视化管理工具-rancher工具。
rancher官网
官网https://www.rancher.cn/ githubhttps://github.com/rancher/rancher 镜像托管在hub.docker.com 上。 rancher的版本与k8s的版本有着一定的关系在https://www.suse.com/suse-rancher/support-matrix/all-supported-versions/rancher-v2-7-5/ 中可以查看。
主机准备
准备4台服务器一台用于rancher软件其他3台用于搭建k8s高可用集群
rancher : 安装rancher
master01 : k8s master节点也分配node、etcd角色
node01 : k8s node节点也分配node、etcd角色
node2 : k8s node节点也分配node、etcd角色环境初始化
4台主机都根据实际情况做如下6大步骤配置
# 1、关闭防火墙
systemctl stop firewalld systemctl disable firewalld# 2、禁用selinux
setenforce 0 #临时关闭selinux
vim /etc/selinux/config #永久关闭selinux
SELINUXdisabled# 3、关闭swap分区必须因为k8s官网要求
swapoff -a #禁用所有swap交换分区
vim /etc/fstab #永久禁用swap,删除或注释掉/etc/fstab里的swap设备的挂载命令即可
#/dev/mapper/centos-swap swap swap defaults 0 0# 4、设置主机名并写入配置文件
hostnamectl set-hostname rancher
hostnamectl set-hostname master01
hostnamectl set-hostname node1
hostnamectl set-hostname node2
cat /etc/hosts EOF
192.168.244.150 rancher
192.168.244.151 master01
192.168.244.152 node1
192.168.244.153 node2
EOF# 5、时间同步
yum -y install ntp
systemctl start ntpd systemctl enable ntpd# 6、将桥接的IPv4流量传递到iptables的链有一些ipv4的流量不能走iptables链因为linux内核的一个过滤器每个流量都会经过他然后再匹配
# 是否可进入当前应用进程去处理所以会导致流量丢失配置k8s.conf文件k8s.conf文件原来不存在需要自己创建的
cat /etc/sysctl.d/k8s.conf EOF
net.bridge.bridge-nf-call-ip6tables1
net.bridge.bridge-nf-call-iptables1
net.ipv4.ip_forward1
vm.swappiness0
EOF
sysctl -p rancher的安装
rancher本身也是使用docker进行安装所以要先安装好dockerdocker的安装请参考Linux下如何安装docker详细介绍联网、离线安装https://blog.csdn.net/MssGuo/article/details/122694156 rancher本质上是封装了RKE和K3S来安装k8s的。
rancher是一个开源的项目开源的代码在https://github.com/rancher/rancher上 可以看到目前最新的rancher版本是2.7.5
rancher镜像位于https://hub.docker.com/上如下所示进入hub.docker官网搜索rancher
[rootrancher ~]# docker pull rancher/rancher:v2.7.5 #拉取rancher镜像
v2.6.7-linux-amd64: Pulling from rancher/rancher
9047ed9df36f: Pull complete
Digest: sha256:2c63e264eacc633d9d98ad30ac30bade271b66454a63446f0156191cee77aa9e
Status: Downloaded newer image for rancher/rancher:v2.6.7-linux-amd64
docker.io/rancher/rancher:v2.6.7-linux-amd64
[rootrancher ~]# docker images #查看rancher镜像
REPOSITORY TAG IMAGE ID CREATED SIZE
rancher/rancher v2.6.7-linux-amd64 23fa8b4529d2 Less than a second ago 1.55GB
[rootrancher ~]# 启动rancher容器
#创建一个目录用于存放rancher的持久化数据
[rootrancher ~]# mkdir /rancher_data
#--privileged运行特权模式-p表示映射本机的80端口到容器的80端口443端口到容器的443端口-v挂载持久卷
[rootrancher ~]# docker run -d --privileged -p 80:80 -p 443:443 -v /rancher_data:/var/lib/rancher/ --restartunless-stopped --name rancher-v2.7.5 rancher/rancher:v2.7.5[rootelk-client ~]# docker ps #确认容器的CREATED时间STATUS时间基本相同就表示容器没有重启rancher正常
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
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地址http://192.168.244.150默认会跳转到https的443端口登录页面左下角有设置中文可以设置中文如下所示
按照页面的提示去容器里面查找rancher的登陆密码
[rootrancher ~]# docker logs 7cf867e736fd01 21 | grep Bootstrap Password:
2023/08/19 16:37:41 [INFO] Bootstrap Password: q5hgkh5lgtncbm2q2tts8w6cdz45xfvpx7v5s8dk9f4c8dpbzrcr6s
[rootrancher ~]# 复制密码进行登陆跳转到如下页面显示要我们要给默认账号admin设置一个登陆密码那我们就设置一个登陆密码密码需要有一定的复杂度这里我就设置为admin12345678
使用rancher创建一个k8s集群
既可以将已有的k8s集群加入rancher让rancher管理也可以使用rancher创建一个新的k8s集群这里我们使用rancher创建一个新的k8s集群。 点击打开RKE2/K3S开关我们选择使用RKE2创建k8s集群点击自定义按钮如下 如下填写集群名称集群描述信息可以看到rancher2.7.5支持的k8s版本有4个我们选择RKE方式安装的v1.25.12rke2r2其他选项保持默认即可 网络配置 其他配置保持默认即可最后点击右下角的创建按钮页面自动跳转到了集群页面点击我们创建的k8s集群 页面跳转到了这里如下节点角色勾选对应的角色后会生成对应的注册命令把这串注册命令复制粘贴到k8s服务器上执行即可这里由于我只有3台主机所以角色规划是3台服务器都作为master、etcd、node角色
master01 k8s master节点也分配node、etcd角色
node01k8s node节点也分配master、etcd角色
node02k8s node节点也分配master、etcd角色把注册命令复制粘贴到k8s服务器上执行然后等待安装完成在左侧主机栏可以查看 等全部的节点安装完毕后返回首页点击集群名称即可进入集群。
创建deployment和svc
进入集群 创建一个deployment 在页面填写信息即可 创建完成之后等待deployment就绪即可 创建svc选择对应的标签选择器 等待svc创建完成即可 浏览器页面访问成功
kubectl 命令行工具设置
使用rancher安装的k8s集群服务器里面的kubectl 工具不能正常使用如果需要在服务器执行kubectl命令的话需要配置一下上下文
#kubectl 配置命令自动补全
yum install -y bash-completion
echo source /usr/share/bash-completion/bash_completion ~/.bashrc
echo source (kubectl completion bash) ~/.bashrc
source ~/.bashrcfind / -name kubectl
ln -s /var/lib/rancher/rke2/data/v1.25.12-rke2r1-15557ace5a8f/bin/kubectl /usr/bin/kubectl返回首页点击管理 下载kubeConfig文件
mkdir ${HOME}/.kube/
#把下载的kubeConfig上传到服务器重命名
mv datacenter.yaml /root/.kube/config
#验证正常使用
[rootmaster01 ~]# kubectl get pod
NAME READY STATUS RESTARTS AGE
nginx-dc9ff6bdf-xc22t 1/1 Running 0 66m 以上就完成了rancher的安装和使用。