环境
服务器 | ip | 服务 |
---|---|---|
master | 192.168.35.40 | docker、kubeadm、kubelet、kubectl、flannel |
node1 | 192.168.35.10 | docker、kubeadm、kubelet、kubectl、flannel |
node2 | 192.168.35.20 | docker、kubeadm、kubelet、kubectl、flannel |
harbor | 192.168.35.30 | docker、docker-compose、harbor-offline-v1.2.2 |
一、kubeadm 部署单master集群
操作位置:三台节点(master+node)
1、关闭防火墙、核心防护(三台k8s节点)
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
swapoff -a ##关闭交换分区
sed -ri 's/.*swap.*/#&/' /etc/fstab ##永久关闭交换分区
for i in $(ls /usr/lib/modules/$(uname -r)/kernel/net/netfilter/ipvs|grep -o "^[^.]*");do echo $i; /sbin/modinfo -F filename $i >/dev/null 2>&1 && /sbin/modprobe $i;done ##为kube-proxy开启ipvs的前提需要加载以下的内核模块
2、修改主机名、添加映射、加载ipvs模块
hostnamectl set-hostname master
su
hostnamectl set-hostname node1
su
hostnamectl set-hostname node2
su
vim /etc/hosts
192.168.35.40 master
192.168.35.10 node1
192.168.35.20 node2
192.168.35.30 harbor
将桥接的IPv4流量传递到iptables的链
cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
systemctl restart network
echo