debian

K8S部署在Debian上的网络配置怎样

小樊
46
2025-08-10 02:39:09
栏目: 智能运维

在Debian上部署K8S的网络配置步骤如下:

  1. 基础设置

    • 设置主机名并更新/etc/hosts文件,确保节点间主机名解析正确。
    • 关闭swap分区:sudo swapoff -a并注释/etc/fstab中swap相关行。
  2. 配置网络接口

    • 编辑/etc/network/interfaces文件,设置静态IP或DHCP(示例为静态IP配置):
      auto eth0  
      iface eth0 inet static  
        address 192.168.1.100  
        netmask 255.255.255.0  
        gateway 192.168.1.1  
        dns-nameservers 8.8.8.8  
      ```。  
      
      
  3. 安装容器运行时

    • 安装containerd并加载内核模块(overlaybr_netfilter):
      sudo apt install containerd  
      cat <<EOF | sudo tee /etc/modules-load.d/containerd.conf  
      overlay  
      br_netfilter  
      EOF  
      sudo modprobe overlay br_netfilter  
      ```。  
      
    • 配置内核参数:
      cat <<EOF | sudo tee /etc/sysctl.d/99-kubernetes.conf  
      net.bridge.bridge-nf-call-iptables=1  
      net.ipv4.ip_forward=1  
      EOF  
      sudo sysctl --system  
      ```。  
      
      
  4. 初始化K8S集群

    • 主节点运行kubeadm init,指定Pod网络CIDR(如--pod-network-cidr=10.244.0.0/16)。
    • 配置kubectl:将/etc/kubernetes/admin.conf复制到~/.kube/config
  5. 安装网络插件

    • 常用插件:
      • Flannelkubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
      • Calicokubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml,并开放防火墙端口(如179、4789)。
  6. 防火墙配置

    • 主节点开放API Server端口(6443)、etcd端口等;工作节点开放Pod网络端口(如30000-32767)。
    • 示例(主节点):
      sudo ufw allow 6443/tcp  
      sudo ufw allow 2379/tcp  
      sudo ufw reload  
      ```。  
      
      
  7. 验证网络

    • 检查节点状态:kubectl get nodes,确保为Ready
    • 测试Pod间通信:部署测试Pod并尝试ping其他节点或Pod。

注意:具体配置需根据网络环境调整(如IP段、网关等),生产环境建议使用高可用方案并配置DNS。

0
看了该问题的人还看了