rancher安装K8S简单集群
# 快速部署 Rancher2 和 K8S 集群
# 准备工作
非必须
停止所有容器
docker stop $(docker ps -a -q)
1删除所有容器
docker rm $(docker ps -a -q)
1
必须
关闭防火墙,如果有
iptables
也全部干掉systemctl stop firewalld && systemctl disable firewalld
1关闭
selinux
setenforce 0
set -i's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
关闭
swap
swapoff -a
1
重启
docker
sudo systemctl daemon-reload sudo systemctl restart docker
1
2
# rancher 安装 K8S 集群
由于一些原因,使用官方镜像源安装慢,可以使用如下命令进行安装,不过
-v /home/wxvirus/rancher:/var/lib/rancher
前面部分换成自己的路径,这里使用的是国内的,比较快。
注意
一定要在你的用户目录下新建一个rancher
目录
docker run -itd --privileged -p 8080:80 -p 8443:443 \
-v /home/wxvirus/rancher:/var/lib/rancher \
--restart=unless-stopped -e CATTLE_AGENT_IMAGE="registry.cn-hangzhou.aliyuncs.com/rancher/rancher-agent:v2.4.8" registry.cn-hangzhou.aliyuncs.com/rancher/rancher:v2.4.8
2
3
我们在浏览器中输入192.168.0.110:8080
,它会自动跳转到8443
端口,如果出现什么安全警告,点击继续前往即可。
第一次进入会让你修改密码,输入你自己的密码,然后点击统一继续即可。
这里一般需要配置你的内网的ip
地址,我这是虚拟机,我还是直接填入得了。
可以通过下面的语言进行调整为中文。
我们点击新建集群
只输入一个集群名称,即可,什么都不用改别的,然后直接下一步;
提示
需要将上面三个都勾选上,然后复制下面的命令在主节点进行运行,当前的还是rancher
节点,只是安装rancher
的
master-node
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run registry.cn-hangzhou.aliyuncs.com/rancher/rancher-agent:v2.4.8 --server https://192.168.0.110:8443 --token t4qmt4j6hcfqt2j8pmw4pmfwtrp8wgp575rl5zdhlq5hwqvf9vg8gg --ca-checksum 89e4df5af647ae28d467cc54e426a5ea771ff48a29f953a42712a373305e1e88 --etcd --controlplane --worker
下面是worker
节点,把上面的,除了Worker
以外的都勾选掉,来worker
节点进行运行
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run registry.cn-hangzhou.aliyuncs.com/rancher/rancher-agent:v2.4.8 --server https://192.168.0.110:8443 --token t4qmt4j6hcfqt2j8pmw4pmfwtrp8wgp575rl5zdhlq5hwqvf9vg8gg --ca-checksum 89e4df5af647ae28d467cc54e426a5ea771ff48a29f953a42712a373305e1e88 --worker
然后静静等待安装,会有很多镜像需要下载,等到出现以下内容
看到一个明显的active
就代表可以了。
我这还是有点警告内容的,磁盘压力大,看来还是虚拟机不得劲。
如果正常情况来整,你会看到主机有 3 个绿色的active
状态即可。
注意
不要使用端口6443
,这应该是K8S API
会调用的端口,否则会提示6443
端口占用。
这边提示k8s-node1
还没激活,再继续等一会,它还没注册完。
就算出现
Runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized
这个也不要惊慌,继续等,最终会变成Active
# 主节点启动 rancher[第二大节的文字描述]
sudo docker run -d --restart=unless-stopped -p 8080:80 -p 8443:443 -v /home/username/rancher:/var/lib/rancher/ rancher/rancher:stable
容器端口 80 和 443 是固定的,同时需要在阿里云或者 XX 云或者别的什么开启访问端口。
/home/username/rancher
,自己用户目录下一定要创建一个空的文件夹。
启动完毕之后,第一次安装可能需要久一点,然后使用对应的机器的公网 IP 加上 8080 端口进行访问,有点耐心等一会,如果出现什么私密链接,点击高级,然后点击继续前往即可。
第一次启动的时候,会让你设置新密码,然后同意继续即可。
到了设置Rancher Server URL
的页面的时候,需要填写你对应的内网 IP 加 8443 端口
进入主界面之后,我们点击集群,点击自定义,输入集群名称,其他什么都不用干,全部使用默认配置,点击下一步,针对主机,master
节点,etcd、Control、Worker
三个角色都要勾选上。然后复制它给的命令在主机上执行即可。
然后在自己的worker
节点机器上,我们把Etcd和Control
勾选去掉,就留下Worker
之后,复制对应的命令到worker
节点机器上运行。
最后点击完成即可,需要稍微等一会,需要下载很多镜像。
注意
如果出现什么 etcd 的错误,我们到列表页,把上面新加的删除,等到它页面内容完全消失,然后再重复一遍上面的操作,等到下面有一个提示:“2 台新主机注册成功”的时候再点击完成,再继续等待
如果集群列表的状态栏出现active
,说明成功了,如果有感叹号提示节点 XX 没激活,继续等待即可,它还在注册当中,第一次整,可以去玩一会了。