Rancher安装(新) - CentOS7(Docker)环境
Rancher安装(新) - CentOS7(Docker)环境
1. 宿主机配置
配置ip_forward及过滤机制,编辑配置文件
vim /etc/sysctl.conf
内容为
net.ipv4.ip_forward = 1 net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1
执行:
modprobe br_netfilter
sysctl -p /etc/sysctl.conf
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld
关闭selinux
永久关闭,一定要重启操作系统后生效。 sed -ri 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config 临时关闭,不重启操作系统,即刻生效。 setenforce 0
修改主机名
如果有多台主机时,K8S会连通不上,主机名冲突。
如果只有一台主机那就不用改了。
也可参考:https://www.cnblogs.com/1285026182YUAN/p/17072178.html
hostnamectl set-hostname redhat130
通过命令查看
uname -a
设置静态IP:https://www.cnblogs.com/1285026182YUAN/p/17074562.html
时间同步:https://www.cnblogs.com/1285026182YUAN/p/17074966.html
注意:如果设置时区创建集群时会有问题。
2. 拉取 镜像
docker pull rancher/rancher
3. 在宿主机上创建Rancher的挂载目录
mkdir -p /docker_volume/rancher_home/{rancher,auditlog}
4. 启动 Rancher 容器
docker run -d -p 8055:80 -p 8443:443 \ --restart=unless-stopped \ -v /docker_volume/rancher_home/rancher:/var/lib/rancher \ -v /docker_volume/rancher_home/auditlog:/var/log/auditlog \ --name rancher \ --privileged=true \ rancher/rancher:v2.6.9
5. 访问 Rancher : https://192.168.91.128:8443/ (如未找到网页,多等一两分钟。)
如果访问不了,报K3错误的话,更新这两张表,下面有写
modprobe ip_tables
modprobe iptable_filter
docker restart rancher
重启后需多等一会。
执行以下命令,重置密码。
docker exec -ti container-id reset-password
此时,帐号密码为:(admin / uEJAR0apf7fjjU7SAy3o )
进入首页
中英文切换
创建自定义集群
参数:
点击Next ,进入添加主机命令页面
可在页面上看到 Rancher 版本为 2.6.3
拉取 rancher/rancher-agent:v2.6.3版本
docker pull rancher/rancher-agent:v2.6.3
复制命令,在CentOS 的SSH终端运行,启动容器。
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.6.3 --server https://192.168.91.128:8443 --token zzpksk4zpxgjm4w589zbr692m2r9knvdh5t5r5p2hs4g2tncsdg9xz --ca-checksum ec009fef5107cd9dfbf93565e6a0f66e65c2aa54251620428f261432e9b91af6 --etcd --controlplane --worker
页面会显示注册信息:
集群查看
![](https://img2023.cnblogs.com/blog/880909/202301/880909-20230119130613636-2061168878.png)
部署项目
一. 部署 mysql8
当前 环境:RedHat v8.6 , Docker v20.10.22, Rancher v2.6.9 ,mysql 8.0.13
1. 拉取镜像
docker pull mysql:8.0.13
2. Rancher 中配置
进入之前创建的集群(wwwcustt)中,在工作负载中创建 Deployments
3. 创建持久卷,预先在主机上创建好目录。涉及权限问题,自动创建可能失败。
4. 创建持久卷声明
5. 部署项目配置持久卷
自动生成名称,选择之前定义好的持久卷声明
配置挂载存储:
挂载说明 :
/usr/rancher-mysql/conf.d(主机路径) /etc/mysql/conf.d(容器内路径) /usr/rancher-mysql/var/lib/mysql(主机路径) /var/lib/mysql(容器内路径)
部署完成。
重新建容器需要删除映射的目录:
rm -rf /etc/ceph \ /etc/cni \ /etc/kubernetes \ /opt/cni \ /opt/rke \ /run/secrets/kubernetes.io \ /run/calico \ /run/flannel \ /var/lib/calico \ /var/lib/etcd \ /var/lib/cni \ /var/lib/kubelet \ /var/lib/rancher/rke/log \ /var/log/containers \ /var/log/kube-audit \ /var/log/pods \ /var/run/calico
如报 K3S 错误:[FATAL] k3s exited with: exit status 1
环境:RedHat v8.6 , Docker v20.10.22, Rancher v2.6.9 会有此问题
查看日志:进入容器,查看 k3s.log
docker exec -it rancher /bin/bash
cat k3s.log
可查看到是 iptables 问题
解决方案:
在宿主机上执行:
如系统没有安装iptables执行命令安装
yum install iptables-services
更新这两张表
modprobe ip_tables
modprobe iptable_filter
docker restart rancher
重启后需多等一会。
如还是不行可参考:https://blog.csdn.net/imliuqun123/article/details/84402148
引用:https://blog.51cto.com/yangxingzhen/5980279
引用:https://www.cnblogs.com/shenyuanhaojie/p/16615124.html
引用:https://blog.csdn.net/zhougubei/article/details/127433237