flannel 不同版本配置部分代码的处理是不一样的,以下做一个简单的说明

概述

  • vni 主要是进行网络隔离的,只有相同vni 的网络可以通信
  • flannel 最新版本的配置处理比较清晰,老版本(目前测试的0.7.1)配置分散在多处
  • flannel 默认只能创建一个vni,而且默认是1
  • v0.7.1 版本与新版本代码差异还是比较大的,配置处理部分不是很清楚

不同版本修改说明

  • 新版本支持多vni 修改很简单 
  • 0.7.1 修改有点费事 
    首先flannel 都是支持就有配置的VNI 定义(etcd 配置定义)但是默认没处理使用的就是1,可以通过自己编译一个固执值修改 
    还有就是对于官方的几个处理进行修改会比较多,可以参考下边的github flannelv2 ,包含了两个版本的,一个是基于etcd 配置的(v2) 
    一个基于flannel vxlan 运行配置(main),处理上核心是对于关于的vxlan 配置以及相关依赖模块调整添加vni 支持(通过cli 引入)
  • 当前最新版本(master分支) 
    修改比较简单,我以前写过可以参考,同时因为新版本的配置参数处理部分很清晰,所以很简单

说明

相关rpm 我统一放到flannel github 中了,目前测试是可以使用的,对于需要使用的可以直接用

参考资料

https://github.com/rongfengliang/myflannel

https://github.com/flannel-io/flannel

https://github.com/rongfengliang/flannelv2

https://github.com/rongfengliang/flannel