centos

centos k8s安装后如何配置网络

小樊
46
2025-08-12 23:10:14
栏目: 智能运维

在CentOS上安装Kubernetes后,配置网络步骤如下:

  1. 基础网络配置

    • 编辑网络接口文件(如/etc/sysconfig/network-scripts/ifcfg-ens33),设置静态IP、子网掩码、网关、DNS等参数,示例:
      BOOTPROTO=static
      ONBOOT=yes
      IPADDR=192.168.1.100
      NETMASK=255.255.255.0
      GATEWAY=192.168.1.1
      DNS1=8.8.8.8
      
      保存后重启网络服务:systemctl restart network
    • 配置主机名解析:编辑/etc/hosts,添加集群节点IP与主机名映射,如:
      192.168.1.100 k8s-master
  2. 关闭防火墙与SELinux

    • 临时关闭防火墙:systemctl stop firewalld,永久禁用:systemctl disable firewalld
    • 临时关闭SELinux:setenforce 0,永久禁用:编辑/etc/selinux/config,设置SELINUX=disabled
  3. 安装网络插件(以Flannel为例)

    • 执行命令安装:kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
    • 验证插件状态:kubectl get pods -n kube-system,确认Flannel相关Pod运行正常。
  4. 可选:配置网络策略(以Calico为例)

    • 安装Calico插件:kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
    • 创建网络策略文件(如network-policy.yaml),定义Pod间流量规则,示例:
      apiVersion: networking.k8s.io/v1
      kind: NetworkPolicy
      metadata:
        name: allow-frontend-to-backend
      spec:
        podSelector:
          matchLabels:
            role: backend
        ingress:
        - from:
          - podSelector:
              matchLabels:
                role: frontend
      
      应用策略:kubectl apply -f network-policy.yaml
  5. 验证网络连通性

    • 部署测试Pod(如Nginx),通过kubectl exec进入Pod,使用pingcurl测试与其他Pod或节点的通信。

注意:不同网络插件(如Calico、Weave)的安装命令和配置略有差异,需根据实际需求选择,并参考官方文档调整参数。

0
看了该问题的人还看了