neutron-server 接受api調用,發送到對應的neutron-plugin上
neutron-plugin 實作網絡功能,建立交給對應的neutron-agent
neutron-agent 模拟出具體裝置,接受neutron-plugin的調用具體建立
neutron-plugin分為:
core-plugin:ml2,負責L2網路連接配接(在資料鍊路層,基于mac位址的網絡的二層網絡,廣播的形式發包,提供子網和端口)(vlan,vxlan,gre,flat,local)
service-plugin:其餘plugin,包括L3 router,firewall,loadbakancer,vpn,metering,可以自行擴充
關于網絡:
vlan(虛拟區域網路):基于實體vlan實作,共享實體網絡,多個vxlan互相隔離
vxlan(虛拟可擴充網絡):基于實體vlan實作,路由基于IP路由表,不綁定具體網絡
gre(通用路由封裝網絡):使用gre封裝網絡包的虛拟網絡,不綁定具體實體網絡
flat(虛拟網絡):不基于實體vlan實作,但是隻能有一個(生産環境不用)
local(本地網絡):隻能在伺服器内部通訊的虛拟網絡(生産環境不用)
關于ml2插件:
類型驅動(type):vlan,vxlan,gre,flat,local
機制驅動(mechanism):arista,ovs,linux bridge,cisco
簡單流程圖