使用kubeadm搭建高可用的K8S集群(2022年1月亲测有效)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用kubeadm搭建高可用的K8S集群(2022年1月亲测有效)相关的知识,希望对你有一定的参考价值。

参考技术A

kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具。

这个工具能通过两条指令完成一个kubernetes集群的部署:

在开始之前,部署Kubernetes集群机器需要满足以下几个条件:

3.1 安装相关包和keepalived

3.2配置master节点

master1节点配置

master2节点配置

3.3 启动和检查

在两台master节点都执行

启动后查看master1的网卡信息

4.1 安装

4.2 配置

两台master节点的配置均相同,配置中声明了后端代理的两个master节点服务器,指定了haproxy运行的端口为16443等,因此16443端口为集群的入口

4.3 启动和检查

两台master都启动

检查端口

Kubernetes默认CRI(容器运行时)为Docker,因此先安装Docker。

5.1 安装Docker

5.2 添加阿里云YUM软件源

5.3 安装kubeadm,kubelet和kubectl

由于版本更新频繁,这里指定版本号部署:

6.1 创建kubeadm配置文件

在具有vip的master上操作,这里为master1

6.2 在master1节点执行

按照提示保存以下内容,一会要使用(kubeadm init中的回显内容):

按照提示配置环境变量,使用kubectl工具:

查看集群状态

创建kube-flannel.yml,在master1上执行

安装flannel网络

检查

8.1 复制密钥及相关文件

从master1复制密钥及相关文件到master2

8.2 master2加入集群

执行在master1上init后输出的join命令,需要带上参数--control-plane表示把master控制节点加入集群(之前kubeadm init回显内容)

检查状态(master1上执行)

在node1上执行

向集群添加新节点,执行在kubeadm init输出的kubeadm join命令(之前kubeadm init回显内容,注意不加--control-plane):

集群网络重新安装,因为添加了新的node节点(在master1上执行)

检查状态(在master1上执行)

在Kubernetes集群中创建一个pod,验证是否正常运行:

访问地址:http://192.168.3.158:31030

以上是关于使用kubeadm搭建高可用的K8S集群(2022年1月亲测有效)的主要内容,如果未能解决你的问题,请参考以下文章

使用kubeadm搭建高可用的K8s集群

Kubeadm搭建高可用(k8s)Kubernetes v1.24.0集群

Kubeadm搭建高可用(k8s)Kubernetes v1.24.0集群

(四)从零开始搭建k8s集群—— 使用KubeKey一键式搭建高可用k8s集群

k8s 开船记:升级为豪华邮轮(高可用集群)与遇到奇怪故障(dns解析异常)

Kubernetes通过kind在本机搭建高可用集群