当前位置:首页 > 系统 > CentOS7使用kubeadm搭建K8s容器集群平台(一主两从)

CentOS7使用kubeadm搭建K8s容器集群平台(一主两从)

系统1年前 (2020-08-12)

CentOS7使用kubeadm搭建K8s容器集群平台(一主两从)

k8s集群的安装方式分为基于二进制包或源码编译安装所需组件的安装方式,但该方式较为繁琐。另外一种是基于开源工具的简化安装方式,目前流行的有若干种,应用度最高的是kubeadm,这里实验3节点的Kubernetes集群


系统配置

#修改计算机名
#节点1
hostnamectl --static set-hostname k8s-master && su
#节点2
hostnamectl --static set-hostname k8s-work1 && su
#节点3
hostnamectl --static set-hostname k8s-work2 && su

#关闭防火墙和selinux
setenforce 0 && sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
systemctl stop firewalld && systemctl disable firewalld && systemctl status firewalld

#禁用swap
swapoff -a && sed -i '/ swap / s/^/#/' /etc/fstab

#更换k8s国内源
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

#更换系统源
yum install wget ntpdate -y \
&& wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo \
&& sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo

#更换docker国内源
wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo \
&& yum makecache

#将桥接的流量传递到iptables链
cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
vm.swappiness=0
EOF

#校准时间
ntpdate ntp.aliyun.com
hwclock --systohc

#配置host文件
cat <<EOF > /etc/hosts
192.168.3.210 k8s-master
192.168.3.220 k8s-work1
192.168.3.230 k8s-work2
EOF

#验证swap是否关闭
sysctl --system
sysctl -p /etc/sysctl.d/k8s.conf
sysctl -p 
free -g

CentOS7使用kubeadm搭建K8s容器集群平台(一主两从)


安装docker

yum install yum-utils device-mapper-persistent-data lvm2 -y
rpm -Uvh https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install kernel-lt -y
grub2-set-default 'CentOS Linux (4.4.236-1.el7.elrepo.x86_64) 7 (Core)' && reboot
#安装kubernetes推荐的容器运行库版本
#https://kubernetes.io/docs/setup/production-environment/container-runtimes/
yum install docker-ce-19.03.11 docker-ce-cli-19.03.11 containerd.io-1.2.13 -y

#添加网络模块
cat > /etc/modules-load.d/docker.conf <<EOF
overlay
br_netfilter
EOF
modprobe overlay
modprobe br_netfilter

lsmod | grep overlay
lsmod | grep br_netfilter  

#修改docker Cgroup Driver为systemd
sed -i "s#^ExecStart=/usr/bin/dockerd.*#ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --exec-opt native.cgroupdriver=systemd#g" /usr/lib/systemd/system/docker.service

#使用国内镜像加速docker拉取
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io
systemctl restart docker && systemctl enable docker && systemctl status docker

#测试
docker run --rm hello-world
docker rmi hello-world


安装kubeadm

yum install kubelet kubeadm kubectl -y --disableexcludes=kubernetes
systemctl enable kubelet

#配置自动补全
yum install bash-completion -y
kubectl completion bash >/etc/bash_completion.d/kubectl
kubeadm completion bash > /etc/bash_completion.d/kubeadm


配置k8s环境

#master节点初始化
#如果初始化失败执行kubeadm reset && yum remove kubeadm && yum install kubeadm --disableexcludes=kubernetes
kubeadm init --image-repository=registry.aliyuncs.com/google_containers
mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config

CentOS7使用kubeadm搭建K8s容器集群平台(一主两从)


#安装Pod网络组件
curl https://docs.projectcalico.org/manifests/calico.yaml -O
kubectl apply -f calico.yaml
kubectl get nodes

CentOS7使用kubeadm搭建K8s容器集群平台(一主两从)


工作节点加入集群

#工作节点1、2执行
kubeadm join 192.168.3.210:6443 --token ijt9jz.225ukunvsugcv7js \
    --discovery-token-ca-cert-hash sha256:40248f94f5cb003865b674b270e45f723bad1830731aff5f70528a6a9812a27d

CentOS7使用kubeadm搭建K8s容器集群平台(一主两从)


验证集群

kubectl get nodes

CentOS7使用kubeadm搭建K8s容器集群平台(一主两从)


kubectl get pods --all-namespaces

CentOS7使用kubeadm搭建K8s容器集群平台(一主两从)

本站所有文章均可随意转载,转载时请保留原文链接及作者。

本文链接:https://www.vos.cn/os/449.html

相关文章

chrome浏览器mactype无效果

chrome浏览器mactype无效果

一直是firefox用户,最近从1x版本慢慢升级到45后,不知道扩展问题还是配置文件问题,很容易崩溃。于是最近安装的chrome,把习惯的扩展和书签全部迁移到过来后,发现字体渲染一直有问题,感觉毫无效...

hMailServer汉化文件和汉化方法

hMailServer汉化文件和汉化方法

汉化文件在此,转自hMailServer中文论坛 swedish.rar首先停止服务,找到hMailServer停止服务打开hMailServer的语言路径 X:\hMailServer\L...

安装新版SpamAssassin for Windows v3.4.1

安装新版SpamAssassin for Windows v3.4.1

前几篇博客发过hMailServer安装设置SpamAssassin反垃圾邮件 ,但是那个SpamAssassin的版本太老,过滤效果并不好。参考了http://wiki.apache.or...

HTTP 错误 403.14 - Forbidden

HTTP 错误 403.14 - Forbidden

HTTP 错误 403.14 - ForbiddenWeb 服务器被配置为不列出此目录的内容。打开iis界面找到默认文档,增加index.aspx默认文档改为<add key="Dom...

Excel服务器2016破解安装与配置

Excel服务器2016破解安装与配置

原理:  底层Server:利用高版本服务端对低版本服务端进行功能扩容,低版本服务器数据库进行底层运算高层Server:高版本服务端只对微信APP和填报网站提供服务终端PC:客户端——>...

请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理

请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理

WIN7的IIS本机测试,提示HTTP错误 404.17 - Not Found请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理第一反映是.net运行库和IIS并没有关联起来,使用命令修复.n...