5 月 1 日,Docker 发布了自家的容器网络管理项目 libnetwork ,libnetwork 使用 Go 语言编写,目标是定义一个容器网络模型(CNM),并为应用程序提供一致的编程接口以及网络抽象。目前 libnetwork 仍在全力开发中,并没有达到使用标准。
3 月的时候,Docker 公司收购了SDN 技术创业公司SocketPlane ,以构建一个健康的容器网络生态系统。于是本周,在网络合作伙伴Cisco、IBM、Joyent、Microsoft、Rancher、VMware 和Weave 的帮助下,Docker 对外发布了开源项目libnetwork。Libnetwork 一开始的代码只是libcontainer 和Docker Engine 中网络部分代码的合并,Docker 官方的愿景是希望libnetwork 能像libcontainer 一样,成为一个多平台的容器网络基础包。
受之前的一个 GitHub issue 启发,libnetwork 引入了容器网络模型(CNM)的概念,CNM 定义了三个新的术语,分别是网络沙箱、Endpoint、Network。网络沙箱指的是在每一个容器中,将会有一个隔离的用于网络配置的环境。Endpoint 是一个网络接口,可用于某一网络上的交流。Network 是一个唯一的且可识别的 Endpoint 组。
从官方博客中得知,设计这样一个可插拔的网络接口非常困难,因为网络部分的工作涉及Docker Engine 和libcontainer。值得高兴的是,现在Docker 公司正在使用CNM API 重写Docker 的bridge 网络(docker0)。
接下来,Docker 公司将会把libnetwork 集成到Docker Engine,并在Docker CLI 中使用新的网络命令。具体的项目路线图读者可以参考 GitHub 。
另外,从官方邮件中得知,Docker 公司正准备进军中国。目前他们正在招聘中国区的主管,以运营中国社区,并进一步扩展 Docker 的影响力。新的主管直接汇报给 CFO。具体信息读者可以参看具体的 JD 。
评论