容器网络规范CNM vs. CNI

CNM

1 由Docker公司提出,在docker项目下的libnetwork项目中被采用。
在这里插入图片描述
在这里插入图片描述
2 工作流程
在这里插入图片描述

CNI

1 CNI是由CoreOS提出的容器组网规范,被K8s、Mesos、Cloud Foudry、rkt等项目采用,目前也是CNCF的一个重要项目。
在这里插入图片描述
2 工作流程
在这里插入图片描述

CNM vs. CNI

  • 相同点

    • 都支持插件化的组网功能。
    • 二者中的许多概念是相似的。比如CNM的sandbox和CNI的container、CNM的network和CNI的network。
    • 类似CNM中的endpoint概念,CNI中将其隐含在Add和Delete动作中。
    • K8s项目下的to_docker工具提供了将CNI调用转换为CNM的方案。
  • 不同点

    • CNM的优点
      • 模式实现更加完善,比较贴近传统的容器网络。
      • 在Docker/libnetwork中内置了常见的CNM drivers。
      • 相比CNI plugin的命令行规范,CNM plugin/drivers更友好些,remote plugin通过HTTP请求进行,docker daemon可以通过指定端口与plugin通信。
    • CNI的优点
      • 接口规范更简洁,也因此更易扩展。
      • CNM/libnetwork中隐含了Docker自己的service机制、dns机制等约束,对别的runtime不友好。
      • 更多的工作在container runtime以及网络的管理者上。

原文链接:https://blog.nowcoder.net/n/667dbb0d177345499608232496f1e4d9

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值