文章目录
前言
一:Neutron基本架构
-
与 OpenStack其他服务和组件的设计思路一样, Neutron也采用分布式架构,由多个组件(服务)共同对外提供网络服务, Neutron架构非常灵活,层次多,一方面是为了支持各种先有或者将来会出现的先进网络技术,另一方面支持分布式部署,获得足够的扩展性。示意图如下:
-
Neutron仅有一个主要服务进程 Neutron-server,它运行于控制节点上,对外提供OpenStack网络API作为访问 Neutron的入口,收集请求后调用插件( Plugin)进行处理,最终由计算节点和网络节点上的各种代理( Agent)完成请求。
-
网络提供者( Network provider)是指提供者 OPenStack网络服务的虚拟机或者物理网络设备,如 Linux Bridge、 Open vSwitch或者其他支持 neutron的物理交换机。与其他服务一样, Neutron的各个组件服务之间需要相互协调通信, Neutron- server、插件、代理之间通过消息队列(默认用 RabbitMQ实现)进行通信和相互协调。
-
数据库(默认使用 Maria DB)用于存放 OpenStack的网络状态信息、包括网络、子网端口、路由器等等。