负载均衡服务高可用实现方法和设备的制造方法

文档序号:9219855阅读:363来源:国知局
负载均衡服务高可用实现方法和设备的制造方法
【技术领域】
[0001] 本发明涉及通信技术领域,特别是涉及一种负载均衡服务高可用实现方法和设 备。
【背景技术】
[0002] Openstack是一个可以帮助用户构建和管理公有云、私有云等的云计算平台。 Neutron是Openstack中的网络组件,提供网络功能的虚拟化,不但可以为租户提供灵 活的网络连接,还可以提供L4~L7的高级服务,例如负载均衡服务(Loadbalanceasa service,LBaas)等,用户通过这些服务可以将更多的应用部署在自己的云环境中。
[0003] LBaas服务的实现大致分两部分,一部分运行在openstack的控制节点,为用户 提供应用程序编程接口(ApplicationProgrammingInterface,API)的访问、数据库的增 删改查及用户请求的调度;一部分作为LBaasagent,一般运行在负载均衡(Loadbalance, LB)节点上,用来配置和部署负载均衡器,LB节点为运行LBaasagent的节点,例如network 节点或单独的虚拟机VM。控制节点接收到用户创建负载均衡器的请求后,会把这个请求调 度到某个启动LBaasagent的LB节点上。每一个启动LBaasagent的LB节点都会向控制 节点上报自身节点名称(hostname);在控制节点的数据库中,每个启动LBaasagent的LB 节点通过自身hostname标识保存该LB节点上创建的各个负载均衡器的配置信息,这样LB 节点重启LBaasagent时,可以从控制节点的数据库中获取由该LB节点上已创建的负载均 衡器配置信息,然后在该LB节点上重新生成这些负载均衡器。

【发明内容】

[0004] 有鉴于此,本发明提出了一种负载均衡服务高可用实现方法和设备,有效解决了 现有技术中单点故障点带来的流量中断问题。
[0005] 本发明提出的技术方案是:
[0006] -种负载均衡服务高可用实现方法,该方法应用于Openstack的负载均衡服务集 群中的负载均衡节点,该方法包括:
[0007] 作为负载均衡服务集群的主LB节点的第一LB节点上的负载均衡服务代理LBaas agent失效后,作为负载均衡服务集群的任一备LB节点的第二LB节点切换为主LB节点, 将所述负载均衡服务集群的虚拟主机名配置为自身虚拟主机名,并启动所述第二节点的 LBaas agent;
[0008] 发送携带所述虚拟主机名的同步请求报文给所述控制节点;
[0009] 接收所述控制节点对所述同步请求报文回应的同步应答报文,所述同步应答报文 携带与所述虚拟主机名匹配的各负载均衡器的配置信息,以及所述各负载均衡器一一对应 的端口号;
[0010] 根据所述各负载均衡器的配置信息、以及所述各负载均衡器一一对应的端口号创 建所述各负载均衡器。
[0011] -种实现负载均衡服务高可用的负载均衡节点设备,该设备应用于Openstack的 负载均衡服务集群,该设备作为负载均衡服务集群的备LB节点的第二LB节点时,该设备包 括:
[0012] 切换模块,用于作为负载均衡服务集群的主LB节点的第一LB节点上的负载均衡 服务代理LBaasagent失效后,将所述第二LB节点切换为主LB节点,将所述负载均衡服务 集群的虚拟主机名配置为自身虚拟主机名,并启动所述第二节点的LBaasagent;
[0013] 发送模块,用于发送携带所述虚拟主机名的同步请求报文给所述控制节点;
[0014] 接收模块,用于接收所述控制节点对所述同步请求报文回应的同步应答报文,所 述同步应答报文携带与所述虚拟主机名匹配的各负载均衡器的配置信息,以及所述各负载 均衡器 对应的端口号;
[0015] 负载均衡器创建模块,用于根据所述各负载均衡器的配置信息、以及所述各负载 均衡器 对应的端口号创建所述各负载均衡器。
[0016] 综上,本发明提出了一种负载均衡服务高可用实现方法,该方法中,负载均衡服务 集群包括主LB节点和备LB节点,仅主LB节点启动LBaasagent,当主LB节点上的LBaas agent失效后,备LB节点切换为新的主LB节点,并启动LBaasagent,然后向控制节点请 求同步原主LB节点上生成的各负载均衡器的配置信息以及各负载均衡器一一对应的端口 号,重新生成各负载均衡器,恢复由原主LB节点转发的业务流量,本发明通过为启动LBaas agent的LB节点配置备份LB节点,当主LB节点上的LBaasagent失效后由备份LB节点切 换为新的主LB节点并重新生成各负载均衡器,实现了负载均衡服务的高可用。
【附图说明】
[0017] 图1为本发明技术方案的组网图;
[0018] 图2为本发明技术方案的流程图;
[0019] 图3为本发明一个实施例的组网架构图;
[0020] 图4为本发明方法实施例的组网图;
[0021] 图5为方法实施例的流程图;
[0022] 图6为本发明实施例中NeutronLBaas架构图;
[0023] 图7为本发明实施例的负载均衡节点设备结构图。
【具体实施方式】
[0024] 现有技术中,控制节点可以管理多个启动LBaasagent的LB节点,通过调度算法 将用户创建负载均衡器的请求调度到某个LB节点的LBaasagent上,每个LB节点上启动 的LBaasagent可以生成和配置多个负载均衡器。因此,部署在LB节点上的LBaasagent 为单点故障点,如不作任何改进,当某个LB节点down机时,该LB节点上的LBaasagent失 效,进而导致通过LB节点上的LBaasagent创建的各个负载均衡器也不可用,使用该LB节 点上负载均衡服务的流量就会中断。
[0025] 因此,本发明技术方案提出一种实现负载均衡服务的高可用方案,创建负载均衡 服务集群,负载均衡服务集群由主LB节点和至少一个备LB节点组成,仅主LB节点启动 LBaasagent,当主LB节点down机时,其中一个备LB节点切换为新的主LB节点,在新的主 LB节点上启动LBaasagent,并从控制节点上获取调度到原主LB节点上的各负载均衡器的 配置信息以及各负载均衡器一一对应的端口号,在新的主LB节点上重新生成原来创建在 原主LB节点上的各负载均衡器,进而恢复用户的业务,本发明提出一种负载均衡服务高可 用的实现方法,本发明实施例的技术方案是:
[0026] 图1为本发明技术方案的组网结构图,如图1所示,Openstack的负载均衡服务由 控制节点和负载均衡服务集群提供,负载均衡服务集群包括主LB节点,称为第一LB节点, 至少一个备LB节点,其中切换为新的主LB节点的备LB节点称为第二LB节点,图2为本发 明实施例的流程图,如图2所示,包括以下步骤:
[0027] 步骤201 :第一LB节点上的LBaasagent失效后,第二LB节点切换为主LB节点, 将负载均衡服务集群的虚拟主机名配置为自身虚拟主机名,并启动自身的LBaasagent。
[0028] 本步骤中,负载均衡服务集群中的主LB节点和各个备LB节点对于控制节点来说 是一个整体,负载均衡服务集群中仅主LB节点上启动LBaasagent,并创建各个负载均衡 器来转发业务流量,备LB节点不负责流量的转发。
[0029] 负载均衡服务集群是由管理员创建的,管理员为负载均衡服务集群配置虚拟主机 名和虚拟IP地址,并将该负载均衡服务集群的虚拟主机名和虚拟IP地址的对应关系配置 在控制节点上,负载均衡服务集群的主LB节点启动LBaasagent后,将负载均衡服务集群 的虚拟主机名配置为自身虚拟主机名,将负载均衡服务集群的虚拟IP地址配置为自身虚 拟IP地址,从而使得控制节点通过本地保存的虚拟IP地址与虚拟主机名的对应关系确定 负载均衡服务集群的主LB节点的位置。
[0030] 因此,当第一LB节点上的LBaasagent失效后,第二LB节点切换为新的主LB节 点,启动LBaasagent,并将负载均衡服务集群的虚拟主机名配置为自身虚拟主机名,将负 载均衡服务集群的虚拟IP地址配置为自
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1