K8S高可用集群环境搭建

本教程详细介绍了如何在CentOS7环境下使用kubeadm搭建三主三从的Kubernetes高可用集群,涉及环境初始化、安装keepalived、haproxy、docker-ce和kubernetes组件,以及集群的初始化和验证。通过配置VIP和负载均衡,确保集群的稳定性和外部访问。
摘要由CSDN通过智能技术生成

1.简介

本章节使用kubeadm搭建一套三主三从的高可用kubernetes集群。相比单master而言,多master更加有利于我们生产环境的稳定性。就算master节点宕机一台,我们依然有其他master节点保证我们的集群环境。多master节点需要依赖于keepalive还生成一个vip,也就是虚拟ip,做过nginx+keepalive的小伙伴们都知道,还需要一个haproxy来实现负载策略。

2.整体架构信息

Linux版本CentOS7,内核版本推荐4.10+(3.10有个kmem的bug)
Kubernetes 默认安装最新
网段配置:pod网段10.244.0.0/16service网段10.96.0.0/12

节点名称 角色 IP地址 安装组件
负载Vip Vip 192.168.3.100
master1 master 192.168.3.18 kubeadm、kubelet、kubectl、docker、haproxy、keepalived
master2 master 192.168.3.19 kubeadm、kubelet、kubectl、docker、haproxy、keepalived
master3 master 192.168.3.20 kubeadm、kubelet、kubectl、docker、haproxy、keepalived
node1 node 192.168.3.21 kubeadm、kubelet、kubectl、docker
node2 node 192.168.3.22 kubeadm、kubelet、kubectl、docker
node3 node 192.168.3.23 kubeadm、kubelet、kubectl、docker

3.环境初始化

3.1配置hosts文件

在每个主机上配置

cat >>/etc/hosts<<EOF
192.168.3.18 master1
192.168.3.19 master2
192.168.3.20 master3
192.168.3.21 node1
192.168.3.22 node2
192.168.3.23 node3
EOF

3.2关闭selinux和防火墙

sed -ri 's#(SELINUX=).*#\1disabled#' /etc/selinux/config
setenforce 0
systemctl disable firewalld
systemctl stop firewalld

3.3关闭swap

swapoff -a
sed -i 's/.*swap.*/#&/' /etc/fstab

3.4创建秘钥

在master1节点上创建秘钥,设置免密登录其他服务器,主要是为了后面的远程拷贝证书

ssh-keygen -t rsa

一路回车即可。
在这里插入图片描述

for n in `seq -w 2 3`;do ssh-copy-id master$n;done

3.5配置内核转发参数

cat <<EOF >  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_nonlocal_bind = 1
net.ipv4.ip_forward = 1
vm.swappiness=0
EOF
sysctl --system

3.6加载ipvs模块

cat
要搭建Kubernetes高可用集群,可以按照以下步骤进行操作: 1. 准备环境:确保每个节点满足安装要求,并安装docker、kubeadm和kubelet等必要软件。 2. 部署master节点的高可用组件:首先在每个master节点上部署keepalived和haproxy。这些组件将负责提供VIP和负载均衡功能。 3. 使用kubeadm初始化第一个master节点:在其中一个master节点上使用kubeadm init命令进行集群初始化。执行该命令后,会得到一个join命令,记下来以便后续使用。 4. 加入其他master节点:在其他master节点上执行之前记下的join命令,并添加参数--control-plane,以将其加入到集群的控制平面中。 5. 加入worker节点:在每个worker节点上执行join命令,将其加入到集群中。 6. 安装集群网络:根据需要选择合适的网络插件,并在集群中部署。 7. 进行集群测试:使用kubectl命令验证集群是否正常工作。 这样,就完成了Kubernetes高可用集群的搭建过程。请注意,这只是一个简要的概述,实际操作中可能还需要进行一些额外的配置和调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [K8s高可用集群搭建](https://blog.csdn.net/weixin_44917045/article/details/127993927)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [k8s系列(二)之k8s高可用集群环境搭建](https://blog.csdn.net/qq_29653373/article/details/126147549)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值