一、Neutron服务运维
1.什么Neutron?
Neutron 是 Openstack 的虚拟网络服务。
Neutron 的设计目标是实现“网络即服务(Networking as a Service)”。为了达到这一目标,在设计上遵循了基于 SDN 实现网络虚拟化的原则,在实现上充分利用了 Linux 系统上的各种网络相关的技术。
2.Neutron功能
Neutron 为整个 OpenStack 环境提供网络支持,包括二层交换,三层路由,负载均衡,防火墙等。Neutron 提供了一个灵活的框架,通过配置,无论是开源还是商业软件都可以被用来实现这些功能。
3.Neutron基本架构
与openstack其他服务和组件的设计思路一样,Neutron也采用分布式架构,由多个组件(服务)共同对外提供网络服务,Neutron架构非常灵活,层次多,一方面是为了支持各种现有或者将来会出现的先进网络技术,另一方面支持分布式部署,获得足够的拓展性。示意图如下:
neutron server:对外提供 OpenStack 网络API,接收请求,并调用Plugin处理请求。
queue:Neutron Server,Plugin 和 Agent 之间通过 Messaging Queue 通信和调用。
neutron plugin:处理 Neutron Server 发来的请求,维护 OpenStack 逻辑网络的状态, 并调用 Agent 处理请求。
neutron agent:处理 Plugin请求,负责在 network provider 上真正实现各种网络功能。
neutron provider:提供网络服务的虚拟或物理网络设备,例如 Linux Bridge,Open vSwitch或者其他支持 Neutron 的物理交换机。
neutron database:存放 OpenStack 的网络状态信息,包括 Network, Subnet, Port, Router等。4.Neutron运维命令
4.1思维导图
4.2案例实施
1.使用Neutron相关命令查询网络服务列[root@controller ~]# neutron agent-list -c binary
+---------------------------+
| binary |
+---------------------------+
| neutron-openvswitch-agent |
| neutron-dhcp-agent |
| neutron-l3-agent |
| neutron-metadata-agent |
| neutron-lbaas-agent |
+---------------------------+表中的“binary”一列
//如果一开始查报错,建议重启一下服务
[root@controller ~]# systemc