北京时间2018年10月10日,Kubernetes网络开源解决方案Jaguar项目发布0.1.0版本,代号“Sky”。
Jaguar项目源于PBL(Project Based Learning)教学方式的尝试,希望通过从零到一搭建一个开源项目来让学习者真正了解开源文化,也能够在此过程中真正全面的丰富知识、锻炼技能。然而一个开源项目没有真实生产需求也就注定只能是玩具,随后对JAGUAR的愿景也就变得更加丰富起来,期望通过SDN技术更好的解决生产环境中的问题,同时也能寓教于项目。
项目与2018年7月23日正式发起,发行版本名称以中国八卦作为参照,以每一卦所代表意象作为名称,前八个版本按照“天地风雷水火山泽”的顺序进行命名,英文名称采用对应的英文翻译名,后续命名以64卦象进行顺延。
“OVS + Vxlan”构建overlay网络
Jaguar项目采用“OVS + Vxlan”的方式构建overlay网络。虽然docker在主机内的容器网络默认是linux bridge,但ovs相较于linux bridge提供了更为丰富的协议支持和管理方式,支持OpenFlow,考虑到后续方案演进的灵活性和可能性,ovs更适合采用SDN的实现方式。
基于OpenDaylight作为开发平台
OpenDaylight作为SDN软件平台从2013年发展至今已逐渐成熟,运行时插件式化、服务抽象层、南向协议多样化、多用户、多切片等特点在满足基础功能的前提下还能兼顾后期开发的灵活性。Jaguar第一个版本基于Carbon版本进行开发,选择更加稳定的Karaf 3.0版本提供更加稳定的服务,并且也遵循EPL-1.0开源协议。
版本特性
1 支持RESTCONF写库配置CIDR,实现IPAM功能;
2 支持K8S node网桥自动创建;
3 支持构建node间Vxlan隧道;
4 CNI 插件支持POD IP地址分配;
5 CNI 插件支持主机与容器路由配置,实现POD to POD, POD to node互通。
如何参与项目
目前项目在Gitlab进行托管,如果你想参与这个项目,你唯一需要做的是在gitlab上注册一个账号,并填写表格申请成为开发者。
表格链接:http://ideapark.mikecrm.com/5MSrW8M
如何贡献代码
如果你想参与这个项目并且贡献你的代码,我们建议你参照如下链接里的约束:
https://gitlab.com/sdnlab/jaguar/blob/master/CONTRIBUTING.md
如何安装下载
https://gitlab.com/sdnlab/jaguar/blob/master/docs/InstallGuide.md
欢迎加入Jaguar讨论群交流
请添加微信号:sdnlab001为好友申请入群