使用 kubeadm 创建kubernetes高可用集群

k8s 集群主要有以下几个组件:

  • etcd: 一款分布式的一致性KV存储存储和服务发现系统,存储了整个集群的状态

  • kube-apiserver: 提供kubernetes集群的API调用

  • kube-controller-manager:负责维护集群的状态,比如故障检测、自动扩展、滚动更新等

  • kube-scheduler:负责资源的调度

  • kubelet:负责维护容器的生命周期,同时也负责Volume(CSI)和网络(CNI)的管理

  • kube-proxy:负责为Service提供cluster内部的服务发现和负载均衡

  • Container runtime:负责镜像管理以及Pod和容器的真正运行(CRI)

  • flannel: 一款网络插件,集群中的pod通讯主要依赖于它

  • coredns: 负责为整个集群提供DNS服务

一. 环境和版本信息

  • OS: CentOS 7.4.1708
  • HAProxy Vervion: 1.5.18
  • Docker Version: Docker-CE 19.03.9-3
  • Kubetnetes Version: v1.18.3
  • HAProxy: 10.202.42.72
  • Control-plane Node(master node):
    node-01:  10.202.82.192
    node-02:  10.202.83.77
    node-03:  10.202.82.80
  • Worker Node:
    node-04:  10.202.82.97
    node-05:  10.202.83.188
    node-06:  10.202.82.186
    node-07:  10.202.42.177

二.系统配置(全部节点)

1.关闭防火墙

sudo systemctl stop firewalld
sudo systemctl disable firewalld

2.关闭selinux

setenforce 0
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config

3.关闭swap

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

4.启动bridge-nf方式

cat <<EOF >  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-arptables = 1
EOF
sysctl -p /etc/sysctl.d/k8s.conf

三. 安装docker、kubeadm、kubelet、kubectl (全部节点)

  • 下载地址 https://download.csdn.net/download/sinat_39562444/12882173

1. 安装docker(master)

yum install docker-ce-19.03.9-3.el7.x86_64.rpm docker-ce-cli-19.03.9-3.el7.x86_64.rpm containerd.io-1.2.6-3.3.el7.x86_64.rpm

修改Docker的Cgroup Driver(可选操作)

systemctl start docker 
cat <<EOF > /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF
systemctl restart docker
systemctl enable docker

注:Docker在默认情况下使用的Cgroup Driver为cgroupfs而kubernetes1.14之后推荐使用systemd来代替 cgroupfs,详见: https://kubernetes.io/docs/setup/cri

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值