本系列文章同步发布於笔者网站
上一篇讲述了 OVN Plug-in 在 OpenStack 中的参考架构,本篇要来比较在 OpenStack Neutron 中使用 OVN 跟 OVS 的主要差异
这个从官方 FAQ 中翻译的表格可以很清楚的看出 OVN 跟 OVS 的架构面差异
项目 | ml2/ovs | ml2/networking-ovn |
---|---|---|
agent/server 之间的沟通 | RabbitMQ message + RPC | NorthBound 跟 SouthBound databases 之间的 ovsdb protocol |
l3HA API | 在 deployment 的时候可以设定 router 中的 ha field 以便开启或关闭 l3HA | 在有多个 network node 时自动开启 HA 功能 |
DVR API | router 中只能被 admin 修改的的 distributed 设定 | 没有可被 distributed 设定,预设即为 distributed |
DVR dataplane | 使用 compute node 上的 namespaces, veths, ip routing, ip rules 和 iptables | 使用 compute node 的 OpenFlow rules |
E/W traffic | 在没开启 DVR 的状态下会经过 network nodes | 在所有状况下都为分散式,直接在 compute node之间传输 |
Metadata Service | Metadata service 透过 network nodes 上的 qrouters 或 dhcp namespaces 提供 | Metadata 是由各自 compute node 上的 ovnmeta-xxxxx-xxxx-namespace 提供 |
DHCP Service | 透过 dnsmasq 的 qdhcp-xxxxx-xxx namespaces 提供 | DHCP 由 ovn-cont |
Trunk Ports | Trunk ports 由建立 br-trunk-xxx bridges and patch ports 来提供 |
可以看到 OVN 在设计的时候基本上都把 HA 功能考虑得很清楚并且已经内建在整个架构里面,在部属的时候不需要额外考虑高可用性架构。
我们可以从 OpenStack Summit Boston 中的一个讲题中稍稍一探 OVN 相较於 OVS 的效能比较。
从 Nova VM 建立的速度来看,OVN 相较於 OVS 都有 70% 以上的提升:
ML2/OVS (seconds) | OVN (seconds) | Improvement | |
---|---|---|---|
Average | 80.7 | 23.4 | 70.9% |
95% | 163.2 | 35.3 | 78.4% |
Maximum | 211.9 | 48.7 | 78.4% |
Minimum | 18.7 | 3.8 | 79.8% |
可以看到其在 control plane 效能的增幅是非常高的。在这篇文章中有更多相关的测试。
至於 dataplane 也有人有做相关的测试,不过差别并不是很大,最主要的优点是在分散式架构所带来的高可用性。
在这篇我们从架构面还有实际效能方面比较了 OVN 跟 OVS 的差别,相信读者们都可以比较了解 OVN 的优点以及为甚麽 OpenStack 大厂如 RedHat 现在推荐使用 OVN 当 OpenStack Neutron 的 Plug-in。在这麽多篇 Neutron 介绍相信读者们对於 OpenStack 网路的部分都有更多的了解。下一篇我们预计会介绍 OpenStack 其中一个不起眼但是也是很重要的核心元件,Glance。
许多雇主不再遵循标准的“申请--等待”申请模式。 现在,他们在社交媒体上查看求职者,访问他们的个人网...
前言 在学习程序语言的过程中,应该都有听过物件导向程序设计(Object-oriented prog...
1 今天试着把预设的对话框选单改变成自定义画面,把原本使用.setItems呈现的预设对话框主题,使...
会讲这个题目其实有点微妙,但是都讲完了测试,却不讲 CI 我觉得好像少了一点什麽。 不知道 Andr...
对於带领一个开发团队的领导者来说 如何提升团队中工程师的生产力 是一个非常重要的课题 「empowe...