原文地址: https://blog.youkuaiyun.com/qadlr/article/details/139680236
主机配置
系统名称设置及hosts相互访问文件
hostnamectl set-hostname master01
echo -e "\n172.21.43.81 master01\n172.21.43.12 master02\n172.21.43.98 master03\n172.21.43.180 node01\n172.21.43.15 node02\n172.21.43.127 node03\n172.21.43.195 node04\n172.21.43.205 node05\n172.21.43.28 node06" >> /etc/hosts
数据盘挂载到contained数据目录(临港虚拟机专属步骤)
parted /dev/vdb mklabel gpt
parted -a opt /dev/vdb mkpart primary ext4 0% 100%
mkdir -p /var/lib/containerd
chmod 777 /var/lib/containerd
# 等几秒
mkfs.ext4 /dev/vdb1
UUID=$(blkid -s UUID -o value /dev/vdb1)
mount /dev/vdb1 /var/lib/containerd
# 配置开机自动挂载
echo "UUID=${UUID} /var/lib/containerd ext4 defaults 0 2" >> /etc/fstab
配置免密
# master01执行,一直按 enter 键
ssh-keygen
# 将本地生成的秘钥文件和私钥文件拷贝到远程主机 ssh-copy-id root@远程主机ip地址
ssh-copy-id master02
ssh-copy-id node01
...
# 验证
ssh node01
ipvs配置
# 配置内核参数,将桥接的IPv4流量传递到iptables的链
cat << EOF | tee /etc/modules-load.d/k8s.conf
overlay
br_netfilter
EOF
# 生效
modprobe overlay
modprobe br_netfilter
# 查看
lsmod | grep -e overlay -e br_netfilter
cat << EOF | tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF
sysctl -p /etc/sysctl.d/k8s.conf
# 查看
sysctl -a | grep ip_forward
apt update
apt install ipset ipvsadm
cat << EOF | tee /etc/modules-load.d/ipvs.conf
ip_vs
ip_vs_rr
ip_vs_wrr
ip_vs_sh
nf_conntrack
EOF
cat << EOF | tee ipvs.sh
#!/bin/sh
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack
EOF
bash ipvs.sh
# 查看
lsmod | grep ip_vs
关闭交换分区
free -m
# 临时关闭:
swapoff -a
# 永久关闭:(是重启生效,想要立即生效,需要执行下上面的临时关闭命令)
vim /etc/fstab
# 注释掉带有swap关键字的一行,如下
/swap.img none swap sw 0 0
软件依赖安装
安装contained
前往 https://github.com/containerd/containerd/releases 查看最新版本 修改下行的版本号(1.7.17)下载即可:(下载的是 cri-containerd-XXX-linux-amd64.tar.gz)