K8S高可用集群安装指南
1、设置主机名
通过hostnamectl命令修改每台主机名,以下是参考示例:
hostnamectl set-hostname k8s-master-0主机名修改完毕后,在每台机器的hosts文件中都加入所有主机名与IP的映射关系,示例如下:
# 高可用浮动IP
10.16.10.60 vip-k8s-master
10.16.10.61 k8s-master-0
10.16.10.62 k8s-master-1
10.16.10.63 k8s-master-2
10.16.10.64 k8s-node-0
10.16.10.65 k8s-node-1
10.16.10.66 k8s-node-2
10.16.10.67 k8s-node-32、在所有控制节点上安装keepalived和haproxy
在每个控制节点上都执行以下命令进行安装:
yum install haproxy keepalived -y在k8s-master-0上创建/etc/keepalived/check_apiserver.sh脚本:
添加执行权限:
修改keepalived配置文件:
将以下内容粘贴到/etc/keepalived/keepalived.conf文件中:
注意: 将keepalived.conf复制到另外两台控制节点时将state修改成SLAVE,priority改成254和253。
修改haproxy配置文件:
删除default块之后的全部内容,并添加以下内容:
将keepalived和haproxy配置文件复制到其他两台服务器:
修改系统配置:
3、关闭swap
如果不关闭swap,kubernetes运行会出现错误, 即使安装成功了,node重启后也会出现kubernetes server运行错误。
4、安装kubeadm、kubelet、kubectl
添加软件源:
安装软件:
在所有节点启用服务:
5、containerd配置
注释 disabled_plugins = ["cri"] ,增加私有镜像仓库配置:
sandbox image配置没有生效,集群在部署时总是去获取,此处暂时使用一个折中方案,在本地给镜像新增tag:
6、初始化集群
部署网络组件:
在k8s-master-1和k8s-master-2节点上执行命令示例如下:
在工作节点上执行命令示例如下:
最后更新于