温馨提示×

Ubuntu Kubernetes网络如何配置

小樊
62
2025-09-14 22:15:56
栏目: 智能运维

在Ubuntu上配置Kubernetes网络需完成以下关键步骤,以Calico插件为例:

1. 基础环境准备

  • 关闭防火墙sudo ufw disable(生产环境需配置精确规则)。
  • 关闭Swap分区sudo swapoff -a,并注释/etc/fstab中Swap相关行。
  • 配置内核参数:添加网桥转发规则,执行以下命令:
    sudo tee /etc/sysctl.d/k8s.conf <<EOF  
    net.bridge.bridge-nf-call-ip6tables = 1  
    net.bridge.bridge-nf-call-iptables = 1  
    net.ipv4.ip_forward = 1  
    EOF  
    sudo sysctl --system  
    

2. 安装Docker和Kubernetes组件

  • 安装Docker
    sudo apt update  
    sudo apt install -y docker.io  
    sudo systemctl enable --now docker  
    
  • 添加Kubernetes仓库并安装组件
    curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -  
    echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list  
    sudo apt update  
    sudo apt install -y kubelet kubeadm kubectl  
    sudo apt-mark hold kubelet kubeadm kubectl  
    

3. 初始化Kubernetes集群

Master节点执行:

sudo kubeadm init --pod-network-cidr=192.168.0.0/16  # 指定Pod网络CIDR  

记录输出的kubeadm join命令,用于后续加入节点。

4. 配置kubectl

mkdir -p $HOME/.kube  
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config  
sudo chown $(id -u):$(id -g) $HOME/.kube/config  

5. 安装网络插件(以Calico为例)

kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml  

其他插件(如Flannel、Weave)可参考对应文档修改安装命令。

6. 验证网络配置

  • 查看节点状态:kubectl get nodes,确认状态为Ready
  • 测试Pod网络连通性:部署测试Pod并检查其IP及跨节点通信。

关键说明

  • 网络插件选择
    • Calico:高性能,支持网络策略,适合大规模集群。
    • Flannel:简单易用,适合中小规模集群。
    • Weave Net:支持加密,适合快速部署。
  • 网络模型:Kubernetes要求Pod间直接通信,需通过CNI插件实现虚拟网络。
  • 安全策略:可通过Calico/Cilium等插件配置网络策略(如限制Pod间访问)。

参考来源:

0