在Debian上配置Kubernetes(K8S)网络通常涉及以下几个步骤:
-
设置主机名和更新hosts文件:
- 登录每个节点(主节点和工作节点),使用
hostnamectl
命令设置它们的主机名。 - 在所有节点的
/etc/hosts
文件中添加节点IP和主机名的映射。
- 登录每个节点(主节点和工作节点),使用
-
关闭所有节点的swap分区:
- 运行
sudo swapoff -a
关闭交换分区。 - 编辑
/etc/fstab
文件,注释掉swap对应的行。
- 运行
-
为K8S集群添加防火墙规则:
- 如果Debian系统已启用操作系统防火墙,允许必要的端口,例如:
- 主控节点:
sudo ufw allow 6443/tcp
,sudo ufw allow 2379/tcp
,sudo ufw allow 2380/tcp
,sudo ufw allow 10250/tcp
,sudo ufw allow 10251/tcp
,sudo ufw allow 10252/tcp
,sudo ufw allow 10255/tcp
。 - 工作节点:
sudo ufw allow 10250/tcp
,sudo ufw allow 30000:32767/tcp
。
- 主控节点:
- 如果Debian系统已启用操作系统防火墙,允许必要的端口,例如:
-
安装containerd运行时:
- 在所有节点上安装containerd,并设置必要的内核参数,例如:
cat <
- 在所有节点上安装containerd,并设置必要的内核参数,例如:
-
配置网络插件:
- 使用Flannel网络插件:
- 下载Flannel的YAML配置文件
kube-flannel.yml
。 - 应用配置:
kubectl apply -f kube-flannel.yml
。。
- 下载Flannel的YAML配置文件
- 使用Flannel网络插件:
-
初始化Kubernetes集群:
- 在主节点上运行
kubeadm init
命令初始化集群。 - 根据提示操作,设置API服务器地址、控制平面端点、Pod网络CIDR、服务CIDR等。。
- 在主节点上运行
-
配置kubectl:
- 将主节点的kubeconfig文件复制到工作节点:
mkdir -p $HOME/.kubecp -i /etc/kubernetes/admin.conf sudo chown $(id -u):$(id -g) $HOME/.kube/config ```。
- 将主节点的kubeconfig文件复制到工作节点:
-
加入工作节点:
- 在工作节点上运行
kubeadm join
命令加入集群。。
- 在工作节点上运行
-
验证集群状态:
- 使用
kubectl get nodes
命令检查节点状态,确保所有节点都处于Ready
状态。。
- 使用
以上步骤是在Debian上配置K8S网络的基本流程。根据具体需求,可能还需要进行其他网络相关的配置,例如设置静态IP地址、配置DNS等。