《OpenStack高可用集群(上册):原理与架构》—2.1.4 集群网络节点
2.1.4 集群网络节点
网络节点为租户提供了基于用户自定义的虚拟网络服务,这些服务包括虚拟网桥、虚拟交换机、DHCP服务器、L3虚拟路由等。OpenStack项目中早期的网络功能由Nova的Network服务提供,之后独立为Quantum项目,并最终演变为Neutron项目。在OpenStack官方推荐的集群部署中,Neutron的服务组件分布在控制节点、计算节点和网络节点上:控制节点上运行Neutron-server服务以响应租户的网络服务请求;计算节点上运行Openv-switch等代理服务以负责计算节点上虚拟机对外部网络或者租户子网之间的通信;网络节点上运行二层网桥和三层路由服务,负责整个OpenStack集群租户网络的二层转发和三层路由等功能。在实际生产环境的大规模高可用集群部署中,网络节点的服务高可用性和性能瓶颈是部署难点也是网络部署所面临的挑战,由于Neutron的L3服务是“有状态”服务,因此不能简单地通过负载均衡的形式实现高可用,同时如果将整个OpenStack集群的网络全汇聚到网络节点,则随着规模的扩大,网络节点必然成为整个集群的性能瓶颈。针对L3的高可用,最常见的方法是基于虚拟冗余协议(VRRP)的L3 HA和基于分布式虚拟路由(DVR)的高可用网络部署方案,L3 HA可以解决三层路由的高可用问题,但是不能解决网络瓶颈问题,而DVR虽然可以解决网络瓶颈问题和L3的目的地址切换(DNAT)高可用问题,但是遗留了源地址切换(SNAT)的单点故障问题。
图2-3 OpenStack高可用集群部署中的Ceph集群
在OpenStack集群的高可用部署中,网络节点的功能通常被部署到控制节点上,通过控制节点的Pacemaker集群资源管理器利用相应的资源代理(Resource Agent)实现Neutron服务的高可用性,即将网络节点与控制节点合并,利用控制节点的冗余和Pacemaker集群来提供Neutron服务的高可用,在这种部署模式下,网络节点的角色仍然存在,只是由控制节点来负责实现。另一种在OpenStack大规模高可用集群部署中可选的网络部署模式是DVR模式,在DVR下网络节点唯一的功能就是进行SNAT,而剩余的网络节点功能全被部署到各个计算节点上,每个计算节点上的网络组件负责本节点上虚拟机的网络通信,从而实现网络功能的分布式和高可用。在Mitaka版本中,实现了DVR与SNAT HA的集成部署,因此在Mitaka及以后版本中,最理想的部署模式就是将网络节点的SNAT功能部署到控制节点集群上实现高可用,网络节点剩余的功能通过DVR分布到各个计算节点上,图2-4为L3 HA高可用集群网络部署模式,图2-5为DVR集成SNAT HA的高可用集群网络部署模式。
图2-4 OpenStack高可用集群L3 HA网络部署模式
- 点赞
- 收藏
- 关注作者
评论(0)