k8s网络

[复制链接]
发表于 2026-1-24 10:22:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
pod 网络

在K8S集群里,多个节点上的Pod相互通讯,要通过网络插件来完成,比如Calico网络插件。
利用kubeadm初始化K8S集群时,有指定一个参数–pod-network-cidr=10.18.0.0/16 它用来界说Pod的网段。
而我们在设置Calico的时间,同样也有界说一个CALICO_IPV4POOL_CIDR的参数,它的值同样也是Pod的网段。
容器网络尤其是在跨主机容器间的网络黑白常复杂的。现在主流的容器网络模子重要有Docker公司提出的Container Network Model (CNM)模子和CoreOS公司提出的Container Network Interface (CNI)模子,而Kubernetes采取了由CoreOS公司提出的CNI模子。
1)CNI
起首我们先容一下什么是 CNI,它的全称是 Container Network Interface,即容器网络的 API 接口。
CNI自己并不能提供网络服务,它只是界说了对容器网络举行操纵和设置的规范。CNI仅关注在创建容器时分配网络资源,和在烧毁容器时删除网络资源,这使得CNI规范非常轻便、易于实现,得到了广泛的支持。
而真正实现和落地这些规范的是CNI插件。常见的CNI插件包罗Calico、flannel、Terway、Weave Net 以及 Contiv。
2)K8S怎样利用CNI插件
K8s 通过 CNI 设置文件来决定利用什么 CNI插件。
根本的利用方法为:
      
  • 起首在每个节点上设置 CNI 设置文件(/etc/cni/net.d/xxnet.conf),此中 xxnet.conf 是某一个网络设置文件的名称。  
  • 安装CNI设置文件对应的二进制插件,在/opt/cni/bin目次中。  
  • 在这个节点上创建pod之后,kubelet就会跟进CNI设置文件实行安装CNI插件。
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表