1.虚拟机操作系统环境准备
参考链接:
https://kubernetes.io/zh/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
2.关闭swap分区
# 临时关闭
swapoff -a && sysctl -w vm.swappiness=0
# 基于配置文件关闭
sed -ri '/^[^#]*swap/s@^@#@' /etc/fstab
3.确保各个节点MAC地址或product_uuid唯一
ifconfig ens33 | grep ether | awk '{print $2}'
cat /sys/class/dmi/id/product_uuid
温馨提示:
一般来讲,硬件设备会拥有唯一的地址,但是有些虚拟机的地址可能会重复。
Kubernetes使用这些值来唯一确定集群中的节点。 如果这些值在每个节点上不唯一,可能会导致安装失败。
4.检查网络节点是否互通
简而言之,就是检查你的k8s集群各节点是否互通,可以使用ping命令来测试。
5.允许iptable检查桥接流量
cat <<EOF | tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF
cat <<EOF | tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system
6.检查端口是否被占用
查看配置需要哪些端口
参考链接: https://kubernetes.io/zh-cn/docs/reference/networking/ports-and-protocols/
7.检查docker的环境
yum -y install wget
wget http://192.168.11.253/Kubernetes/day01-/softwares/oldboyedu-docker-20.10.tar.gz
tar xf oldboyedu-docker-20.10.tar.gz
./install-docker.sh install #这是我自己编写的脚本在docker专栏二进制部署,也可手动安装
source /usr/share/bash-completion/completions/docker
8.禁用防火墙
systemctl disable --now firewalld
9.禁用selinux
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
grep ^SELINUX= /etc/selinux/config
10.配置host解析
#下面是我自己测试搭建的节点
cat >> /etc/hosts <<'EOF'
10.0.0.231 master231
10.0.0.232 worker232
10.0.0.233 worker233
10.0.0.250 lianshan.zhouyi.com
EOF
cat /etc/hosts
11.所有节点创建自定义证书目录
mkdir -pv /etc/docker/certs.d/lianshan.zhouyi.com