How does Neutron support multiple network provider
This article introduces you how Neutron supports a variety of network provider, the content is very detailed, interested friends can refer to, hope to be helpful to you.
The architecture of Neutron is very open and can support a variety of network provider, as long as certain design principles and specifications are followed. We will begin to discuss this topic in this section.
Let's start with a simple scenario: using linux bridge as a network provider in Neutorn.
According to the hierarchical model of Neutron Server we discussed in the previous section, we need to implement two things: linux bridge core plugin and linux bridge agent.
Linux bridge core plugin
Run with neutron server.
Core plugin API is implemented.
Responsible for maintaining database information.
Notify linux bridge agent to implement specific network functions.
Linux bridge agent
Runs on compute nodes and network nodes (or control nodes).
Receive a request from plugin.
The neutron network function is realized by configuring the linux bridge on this node.
By the same token, if you want to support open vswitch, you only need to implement open vswitch plugin and open vswitch agent.
It can be seen that Neutron can support different network technologies by developing different plugin and agent. This is a rather open architecture.
However, with the increase in the number of network provider supported, developers have found two prominent problems:
Only one core plugin can be used in OpenStack, and multiple network provider cannot coexist.
There is a lot of duplicate code between different plugin, so it is a great deal of work to develop new plugin.
On how Neutron supports a variety of network provider to share here, I hope that the above content can be of some help to you, can learn more knowledge. If you think the article is good, you can share it for more people to see.