Neutron 如何支持多种 network provider - 每天5分钟玩转 OpenStack(70)
Neutron 的架構(gòu)是非常開(kāi)放的,可以支持多種 network provider,只要遵循一定的設(shè)計(jì)原則和規(guī)范。本節(jié)我們將開(kāi)始討論這個(gè)主題。
先討論一個(gè)簡(jiǎn)單的場(chǎng)景:在 Neutorn 中使用 linux bridge 這一種 network provider。
根據(jù)我們上一節(jié)討論的 Neutron Server 的分層模型,我們需要實(shí)現(xiàn)兩個(gè)東西:linux bridge core plugin 和 linux bridge agent。
linux bridge core plugin
與 neutron server 一起運(yùn)行。
實(shí)現(xiàn)了 core plugin API。
負(fù)責(zé)維護(hù)數(shù)據(jù)庫(kù)信息。
通知 linux bridge agent 實(shí)現(xiàn)具體的網(wǎng)絡(luò)功能。
linux bridge agent
在計(jì)算節(jié)點(diǎn)和網(wǎng)絡(luò)節(jié)點(diǎn)(或控制節(jié)點(diǎn))上運(yùn)行。
接收來(lái)自 plugin 的請(qǐng)求。
通過(guò)配置本節(jié)點(diǎn)上的 linux bridge 實(shí)現(xiàn) neutron 網(wǎng)絡(luò)功能。
同樣的道理,如果要支持 open vswitch,只需要實(shí)現(xiàn) open vswitch plugin 和 open vswitch agent。
由此可見(jiàn):Neutron 可以通過(guò)開(kāi)發(fā)不同的 plugin 和 agent 支持不同的網(wǎng)絡(luò)技術(shù)。這是一種相當(dāng)開(kāi)放的架構(gòu)。
不過(guò)隨著支持的 network provider 數(shù)量的增加,開(kāi)發(fā)人員發(fā)現(xiàn)了兩個(gè)突出的問(wèn)題:
只能在 OpenStack 中使用一種 core plugin,多種 network provider 無(wú)法共存。
不同 plugin 之間存在大量重復(fù)代碼,開(kāi)發(fā)新的 plugin 工作量大。
下一節(jié)將深入討論這兩個(gè)問(wèn)題的成因以及解決方案。
總結(jié)
以上是生活随笔為你收集整理的Neutron 如何支持多种 network provider - 每天5分钟玩转 OpenStack(70)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 华硕天选游戏路由器发布:双频 AX600
- 下一篇: IOS 实现TXT文本自动识别编码的方法