本文基于openstack K版代码,在大规模环境中分析openvswitch-agent重启过程中的时间消耗,并根据分析提出优化的方案。
| 资源 |
| 数目 |
| Openvswitch-agent |
| 565 |
| Network |
| 1010 |
| Port |
| 1010(dhcp), 18(nova) |
测试环境如上表所示,vxlan端口总数565,我们找一台计算节点,上面有18个属于不同网络的虚机。流表总数约为600个,即: 565条vxlan port对应的流表, 18*2共36条本地vlan和远端tunnel双向映射的流表。
重启计算节点ovs-agent,我们发现vxlanport和所有的ovs flow

本文探讨了在openstack K版中,针对大规模环境的OpenvSwitch-Agent重启过程中遇到的问题,发现vxlanport和流表的删除与重建耗时过长。通过分析日志,发现每个tunnel的添加导致大量不必要的流表更新。为解决此问题,提出了修改代码的优化方案,将vlan到tunnel映射的流表添加移到tunnel全部完成后进行,从而将重启恢复时间从50分钟缩短到7分钟。此外,建议采用L版的neutron,支持不删除端口和流表以及使用Ryu配置OVS flow以进一步提升恢复速度。
最低0.47元/天 解锁文章
2093

被折叠的 条评论
为什么被折叠?



