Kubemetes网络插件cni

因为项目中需要使用k8s部署swagger服务,然后在kubectl create这一步出现了如下报错,找不到网络插件

failed to find plugin "loopback" in path [/opt/cni/bin]
failed to find plugin "random-hostport" in path [/opt/cni/bin]

在这里插入图片描述
解决方案:
将缺少的插件放到/opt/cni/bin目录下面即可解决。
链接:https://pan.baidu.com/s/1quElqqoN1CGhIJJe27_5yw
提取码:a2de

k8s网络设计

Kubemetes 在设计上考虑了对网络的需求和模型设计,但自身并没有重新实现,而是可以另外嵌入现有的网络管理方案。同时, Kubemetes 试图通过插件化的形式来采用AppC 提出的Contai ner Networking Interface (CNI)规范。这意味着,将来所有支持Kubernetes 的网络插件都要遵循该规范。
实际上, CNI 的模型十分简洁, Kubernetes 只需要告诉插件,把某个Pod 挂载到某个网络、或者从某个网络卸载,其他工作都要由插件来完成。Kubernetes 自身不需要了解网络的具体细节。

  • Pod 内(容器之间) : 因为容器共享了网络命名空间,可以通过lo直接通信,无须额外支持;
  • Pod 之间:又分在同一个节点上和在不同节点上,前者通过本地网桥通信即可,后者需要在各自绑定的网桥之间打通;
  • Pod 和服务之间: 因为服务是虚拟的ClusterIP ,因此,需要节点上配置代理机制(例如基于iptables )来映射到后端的Pod;
  • 外部访问服务:要从外面访问服务,必须经过负载均衡器,通过外部可用的地址映射到内部的服务上。

也就是网络插件不依赖于kubectl

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
multus-cni 是一个 Kubernetes 的多网络 CNI 件,它是 Kubernetes 上负责多网络管理的代表性件之一。它允许 Kubernetes 集群中的每个 Pod 拥有多个网络接口,并能针对每个网络接口对应的网络策略和路由进行不同的配置。 multus-cni 的源码主要分为三部分:CNI 件相关代码、配置文件相关代码和网络资源相关代码。CNI 件相关代码包括主程序 main.go、CNI 配置解析器 conf.go、IPAM 相关代码和网络审计相关代码。配置文件相关代码包括 multus.conf 和各种 JSON/YAML 配置文件的解析器。网络资源相关代码主要负责通过 Kubernetes API 获取和管理 Pod、NetworkAttachmentDefinition 和 Service 等网络资源信息。 multus-cni 的核心是 CNI 件相关代码中的 main.go,它主要负责 CNI 件的初始化和执行。CNI 件的执行流程大概可以总结为如下三步:首先,multus-cni 解析 CNI 配置文件并获取 Pod 相关的网络资源信息;接着,multus-cni 调用下层 CNI 件(比如 flannel、calico、ovs 等)完成网络接口的创建和配置;最后,multus-cni 继续执行其他 CNI 件(比如 ipvlan、macvlan、bridge 等)完成其他网络接口的创建和配置。 此外,multus-cni 通过 Kubernetes API 获取和管理 NetworkAttachmentDefinition 和 Service 等网络资源信息。在 Kubernetes 中,NetworkAttachmentDefinition 用于定义和配置网络接口,而 Service 用于定义和管理 Kubernetes 集群中的服务。multus-cni 通过获取、解析和应用这些网络资源信息,实现了多网络的管理和配置。 总的来说,multus-cni 是一个非常优秀的多网络 CNI 件,它利用 Kubernetes API 实现了多网络的管理和配置,并同时支持件化扩展。它的源码比较清晰,适合对 Kubernetes 网络原理比较熟悉的开发者学习和探究。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小丸子呢

致力于源码分析,期待您的激励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值