CN102821044B - 一种配置服务器集群的方法和装置 - Google Patents

一种配置服务器集群的方法和装置 Download PDF

Info

Publication number
CN102821044B
CN102821044B CN201210265130.9A CN201210265130A CN102821044B CN 102821044 B CN102821044 B CN 102821044B CN 201210265130 A CN201210265130 A CN 201210265130A CN 102821044 B CN102821044 B CN 102821044B
Authority
CN
China
Prior art keywords
virtual
address
virtual server
server
routing device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210265130.9A
Other languages
English (en)
Other versions
CN102821044A (zh
Inventor
陈建
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201510314351.4A priority Critical patent/CN104954182B/zh
Priority to CN201210265130.9A priority patent/CN102821044B/zh
Publication of CN102821044A publication Critical patent/CN102821044A/zh
Application granted granted Critical
Publication of CN102821044B publication Critical patent/CN102821044B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • H04L41/0826Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for reduction of network costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Abstract

本发明的实施例提供了一种用于配置服务器集群的方法和装置。所述方法包括:在虚拟服务器集群中的多个虚拟服务器上以及在与所述多个虚拟服务器相连接的路由设备上运行动态路由协议实例;从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息;根据所述相应的虚拟IP的链路信息,在所述路由设备上生成用于所述多个虚拟服务器的相应的多路路由;以及通过多路路由,从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器。本发明解决了单个虚拟服务器的性能瓶颈问题,并且使得虚拟服务器集群的扩展也变得简单方便,极大地降低了运维成本。

Description

一种配置服务器集群的方法和装置
技术领域
本发明涉及虚拟服务器,特别涉及一种用于配置虚拟服务器集群(cluster)的方法和装置。
背景技术
虚拟服务器作为网络接入设备,负责流量的负载均衡,必须要具有高可用性和高性能。目前高可用性是通过VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)心跳协议来实现的。VRRP心跳协议设计的目的是为了解决静态路由引发的单点故障问题。VRRP的核心是一个选择协议,可以把一个虚拟路由器的责任动态分配到局域网上的VRRP路由器中的一台。控制虚拟路由器IP地址的VRRP路由器称为主路由器,它负责转发数据包到这些虚拟IP地址。一旦主路由器不可用,这种选择过程就提供了动态的故障转移机制,这就允许虚拟路由器的IP地址可以作为终端主机的默认第一跳路由器。使用VRRP的好处是有更高的默认路径的可用性,而无需在每个终端主机上配置动态路由或路由发现协议。
为了使用VRRP心跳协议,虚拟服务器在配置时,使用了用户态程序Keepalived。Keepalived实现了VRRP心跳协议,并在VRRP心跳发生变化时,负责VIP的管理。
图1中示出了现有技术中虚拟服务器集群的一般配置:采用两台虚拟服务器,虚拟服务器之间采用VRRP心跳协议,在选取出来的主虚拟服务器(优先级=110)上绑定虚拟IP,并对外提供服务。并且主虚拟服务器定期发出VRRP心跳,以便备虚拟服务器(优先级=90)知道主虚拟服务器仍然有效。其中,主虚拟服务器是通过VRRP心跳协议中的优先级(Priority)字段来决定的,优先级最大的成为主虚拟服务器。
在主虚拟服务器的服务程序出现故障的时候,两台虚拟服务器的状态会变为如图2所示的状态:备虚拟服务器监听VRRP心跳,在没有收到主虚 拟服务器的心跳报文的情况下,就自动成为主虚拟服务器,接管虚拟IP,对外提供服务。然后,备虚拟服务器定期发送VRRP心跳报文。后续,当主虚拟服务器的服务恢复后,会主动抢占备虚拟服务器上的虚拟IP,重新成为主虚拟服务器,流量也就会重新回到主虚拟服务器上。通过上述过程,当一台虚拟服务器的服务出现故障的时候,另外一台虚拟服务器可以很快地接管服务,实现了高可用性。
VRRP协议是一种路由选择协议,在进行路由选择时,只能有一个主路由器进行路由转发。对应到虚拟服务器使用的场景,一个虚拟IP在一段时间内只能绑定在一台虚拟服务器上,这样,就会导致如下问题:
(1)单个虚拟服务器成为性能瓶颈:因为特定虚拟IP的流量在一定时间内只能被转发到一台虚拟服务器上,如果该虚拟IP对应的流量很大,该虚拟服务器就会成为性能瓶颈;
(2)虚拟服务器集群的扩展较为复杂:一般情况下,会使用两台虚拟服务器组成一个集群来提供服务,但随着业务数目和流量的增加,集群性能会遇到瓶颈,此时需要扩展虚拟服务器集群,有如下两种手段来进行扩展:(a)新建一个两台虚拟服务器的集群,其问题是需要人为地在多个集群间划分业务,以进行流量均衡,如果某个业务流量变大,还需要随时进行调整,(b)增加虚拟服务器到原有集群,其问题是需要人为地为每个业务划分各台虚拟服务器的优先级,以便实现各虚拟服务器的流量均衡以及各个业务的高可用性,以三台虚拟服务器(假设分别为虚拟服务器A、虚拟服务器B、虚拟服务器C)的集群为例,假设该集群承担三项业务(业务1、业务2、业务3)。在理想配置下,业务1设置的优先级为:虚拟服务器A->110,虚拟服务器B->90,虚拟服务器C->70;业务2设置的优先级为虚拟服务器B->110,虚拟服务器A->90,虚拟服务器C->70;业务3设置的优先级为虚拟服务器C->110,虚拟服务器B->90,虚拟服务器A->70。这样,在正常工作的情况下,三个业务的流量分别落到三台虚拟服务器上。但是如果再增加一台虚拟服务器D的话,那么该虚拟服务器D上各业务的优先级设置就非常复杂和繁琐了。
发明内容
为了至少解决上述技术问题,本发明提供了一种用于配置虚拟服务器 集群的方法和装置。
根据本发明第一方面,提供了一种用于配置虚拟服务器集群的方法,包括:
在虚拟服务器集群中的多个虚拟服务器上以及在与所述多个虚拟服务器相连接的路由设备上运行动态路由协议实例;
从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息;
根据所述相应的虚拟IP的链路信息,在所述路由设备上生成用于所述多个虚拟服务器的相应的多路路由;以及
通过多路路由,从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器。
优选地,在所述多路路由是多路等价路由的情况下,通过多路路由从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器的步骤包括:通过所述多路等价路由,从所述路由设备将与虚拟IP相对应的业务流量平均分配到相应的虚拟服务器。
优选地,所述通过多路路由从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器的步骤包括:通过所述多路路由,从所述路由设备将与虚拟IP相对应的业务流量按照虚拟服务器的优先级分配到相应的虚拟服务器。
优选地,所述方法还包括:在所述从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息的步骤之前,将所述虚拟IP绑定到相应的虚拟服务器。
优选地,所述方法还包括:在所述从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息的步骤之前,在虚拟服务器上禁止回应针对所述虚拟IP的请求报文并且禁止源地址为所述虚拟IP的请求报文。
优选地,所述方法还包括:在所述根据所述相应的虚拟IP的链路信息在所述路由设备上生成用于所述多个虚拟服务器的相应的多路路由的步骤之后,并且在所述通过多路路由从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器的步骤之前,
对与所述多个虚拟服务器相连接的多个物理服务器进行健康检查。
优选地,在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果健康检查失败的物理服务器的比例高于预先定义的阈值,则不将与所述虚拟IP相对应的业务流量分配到所述虚拟服务器。
优选地,在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果存在健康检查失败的物理服务器,并且健康检查失败的物理服务器的比例低于预先定义的阈值,则降低所述虚拟服务器的优先级。
根据本发明第二方面,提供了一种用于配置虚拟服务器集群的装置,包括:
运行模块,用于在虚拟服务器集群中的多个虚拟服务器上以及在与所述多个虚拟服务器相连接的路由设备上运行动态路由协议实例;
发送模块,用于从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息;
生成模块,用于根据所述相应的虚拟IP的链路信息,在所述路由设备上生成用于所述多个虚拟服务器的相应的多路路由;以及
分配模块,用于通过多路路由,从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器。
优选地,在所述多路路由是多路等价路由的情况下,所述分配模块通过所述多路等价路由,从所述路由设备将与虚拟IP相对应的业务流量平均分配到相应的虚拟服务器。
优选地,所述分配模块通过所述多路路由,从所述路由设备将与虚拟IP相对应的业务流量按照虚拟服务器的优先级分配到相应的虚拟服务器。
优选地,所述装置还包括:绑定模块,用于在所述发送模块从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息之前,将所述虚拟IP绑定到相应的虚拟服务器。
优选地,所述装置还包括:禁止模块,用于在所述发送模块从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息之前,在虚拟服务器上禁止回应针对所述虚拟IP的请求报文并且禁止源地址为所述虚拟IP的请求报文。
优选地,所述装置还包括:健康检查模块,用于在所述生成模块根据所述相应的虚拟IP的链路信息在所述路由设备上生成用于所述多个虚拟 服务器的相应的多路路由之后,并且在所述分配模块通过多路路由从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器之前,对与所述多个虚拟服务器相连接的多个物理服务器进行健康检查。
优选地,在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果健康检查失败的物理服务器的比例高于预先定义的阈值,则所述分配模块不将与所述虚拟IP相对应的业务流量分配到所述虚拟服务器。
优选地,在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果存在健康检查失败的物理服务器,并且健康检查失败的物理服务器的比例低于预先定义的阈值,则所述分配模块降低所述虚拟服务器的优先级。
本发明提供了一种用于配置虚拟服务器集群的方法和装置。本发明通过将业务虚拟IP上的流量平均或者按照虚拟服务器的优先级分配到多个虚拟服务器上,解决了单个虚拟服务器的性能瓶颈问题;同时,根据本发明的实施例,虚拟服务器集群的扩展也变得简单方便:在需要对虚拟服务器集群进行扩展时,只需要增加相应数量的虚拟服务器,并且运行动态路由协议示例即可,虚拟服务器集群上的业务流量就会自动进行重新分配,平均或者按照虚拟服务器的优先级分配到所有的虚拟服务器(包括新增的虚拟服务器)上,极大地降低了运维成本。
附图说明
根据以下结合附图的详细描述,本发明的以上和其它目的和特征将变得更加清楚,其中:
图1是现有技术中虚拟服务器集群的一般配置的示意性框图;
图2是现有技术中虚拟服务器集群在住虚拟服务器出现故障时的一般配置的示意性框图;
图3是根据本发明的实施例的用于配置虚拟服务器集群的方法的流程图;
图4是根据本发明的实施例的示例系统配置的框图;以及
图5是根据本发明的实施例的用于配置虚拟服务器集群的装置的框图。
具体实施方式
在以下的详细描述中,为了说明和示例的目的,描述若干个具体细节,以便提供对于各实施例的全面理解。然而,对于本领域普通技术人员而言,可以在没有这些具体细节的情况下实现这些实施例。在以下描述中使用的部件名称仅仅是为了容易说明,而不是为了进行任何限制。
图3是根据本发明的实施例的用于配置虚拟服务器集群的方法的流程图。根据本发明,虚拟服务器可以包括基于各种操作系统的虚拟服务器,例如基于Linux的虚拟服务器、基于Unix的虚拟服务器、基于Windows的虚拟服务器、基于Mac OS的虚拟服务器等等。在下文中,将以基于Linux的虚拟服务器为例,对本发明的原理进行示例性描述,然而此描述仅仅是示例性的,本发明的范围并不限于此,本发明的原理也可以适用于基于其它操作系统的各种虚拟服务器。
根据本发明的实施例,在用于配置虚拟服务器集群的方法100中,一开始,执行步骤S101:在虚拟服务器集群中的多个虚拟服务器上以及在与所述多个虚拟服务器相连接的路由设备上运行动态路由协议实例。
根据本发明的实施例,所述动态路由协议可以包括路由信息协议(Routing Information Protocol,RIP)、边界网关协议(Border Gateway Protocol,BGP)、开放式最短路径优先协议(Open Shortest Path First,OSPF)等等。在下文中,将以OSPF协议为例,对本发明的原理进行示例性表述,然而此描述仅仅是示例性的,本发明的原理同样适用于其它动态路由协议。
首先,要在基于Linux的虚拟服务器集群中的多个虚拟服务器上运行OSPF协议实例。根据本发明的实施例,可以使用开源工具quagga中的zebra和ospfd组件来实现对OSPF协议的支持,其中zebra负责本地路由表的更新,而ospfd负责ospf协议的实现,并与其他运行ospfd的设备进行通信。在配置ospfd时,需要把VIP的网段放到ospfd的区域设置中。
另外,要在与所述多个虚拟服务器相连接的路由设备上运行动态路由协议实例。除此之外,还要在所述路由设备上配置等价路由。根据本发明的实施例,所述路由设备可以是路由器或交换机。根据本发明的实施例,应当将所述多个虚拟服务器的网卡配置在不同的网段,还应当保证路由器 /交换机与各虚拟服务器运行的OSPF示例不处于OSPF协议定义的相同的区域内。另外,为了使各虚拟服务器与路由器/交换机能够正常地学习到邻居关系并进行通信,它们需要设置相同的区域以及验证类型。
在步骤S101之后,执行步骤S103:从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息。
根据本发明的实施例,在执行步骤S103之前,可以先执行步骤S1001:将所述虚拟IP绑定到相应的虚拟服务器。为了使OSPF协议能够正常工作,需要将虚拟IP绑定到本地相应的虚拟服务器的输入输出接口上。
另外,在执行步骤S103之前,还可以先执行步骤S1001’:在虚拟服务器上禁止回应针对所述虚拟IP的请求报文并且禁止源地址为所述虚拟IP的请求报文。举例来说,可以将虚拟服务器的所有网卡的arp_ignore设置为1,即,禁止回应针对虚拟IP的arp请求报文,以防止arp信息对OSPF的干扰;并且可以设置虚拟服务器所有网卡的arp_annouce为2,即,禁止源地址为虚拟IP的请求报文,这同样是为了防止arp信息对OSPF的干扰。
在步骤S103之后,执行步骤S105:根据所述相应的虚拟IP的链路信息,在所述路由设备上生成用于所述多个虚拟服务器的相应的多路路由。根据本发明的实施例,所述多路路由可以是多路等价路由或者非等价的多路路由。
之后,执行步骤S107:通过多路路由,从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器。其中,在所述多路路由是多路等价路由的情况下,在步骤S107中,通过所述多路等价路由,从所述路由设备将与虚拟IP相对应的业务流量平均分配到相应的虚拟服务器。而在所述多路路由是非等价路由的情况下,则通过所述多路路由,从所述路由设备将与虚拟IP相对应的业务流量按照虚拟服务器的优先级分配到相应的虚拟服务器。
例如参见图4,其中示出了根据本发明的实施例的示例系统配置的框图。如图4所示,虚拟服务器集群通过与它们相连接的路由设备向客户端提供服务。假设共有n个虚拟IP—虚拟IP_1至虚拟IP_n,虚拟服务器1、2、3与虚拟IP_1绑定,虚拟IP_1上的业务流量要分配到虚拟服务器1、2、3这3个虚拟服务器上。假设路由设备用于虚拟服务器1、2、3的多 路路由并非等价路由,并且假设虚拟服务器1、2、3分别具有90、100、110的优先级。在此情况下,通过所述多路路由,从所述路由设备将与虚拟IP_1相对应的业务流量按照上述优先级分配到虚拟服务器1、2、3。此时,具有最高优先级(110)的虚拟服务器3将被分配到最多的业务流量。应当注意,上述系统配置和各虚拟服务器优先级的设置仅仅是示例,本领域技术人员能够理解:本发明的原理同样适用于其它系统配置和优先级设置。
根据本发明的实施例,在上述步骤S105之后、步骤S107之前,还可以执行步骤S106:对与所述多个虚拟服务器相连接的多个物理服务器进行健康检查。
其中,在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果健康检查失败的物理服务器的比例高于预先定义的阈值,则不将与所述虚拟IP相对应的业务流量分配到所述虚拟服务器。
可选地,在基于Linux的虚拟服务器中,对于物理服务器的健康检查是通过程序keepalived实现的,为了实现上述功能,需要修改keepalived程序:在某个虚拟IP对应的物理服务器健康检查失败的比例高于预先定义的阈值时,调用ip命令删除所绑定的虚拟IP。
仍以图4中的系统配置为例,假设虚拟服务器1后端包括三个物理服务器:物理服务器a、b、c。假设在健康检查中,物理服务器a和b健康检查失败,而物理服务器c健康检查成功,假定上述预先定义的阈值为60%,那么健康检查失败的物理服务器的比例高于预先定义的阈值,路由设备就不再将与虚拟IP_1相对应的业务流量分配到虚拟服务器1。
根据本发明的实施例,在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果存在健康检查失败的物理服务器,并且健康检查失败的物理服务器的比例低于预先定义的阈值,则降低所述虚拟服务器的优先级。
仍以图4中的系统配置为例,如果在健康检查中,物理服务器a健康检查失败,而物理服务器b和c健康检查成功,仍假定上述预先定义的阈值为60%,此时健康检查失败的物理服务器的比例低于预先定义的阈值,此时可以降低虚拟服务器1的优先级,从而减少分配给虚拟服务器1的虚拟IP_1的业务流量。
本发明提供了一种用于配置虚拟服务器集群的方法。本发明通过将业务虚拟IP上的流量平均或者按照虚拟服务器的优先级分配到多个虚拟服务器上,解决了单个虚拟服务器的性能瓶颈问题;同时,根据本发明的实施例,虚拟服务器集群的扩展也变得简单方便:在需要对虚拟服务器集群进行扩展时,只需要增加相应数量的虚拟服务器,并且运行动态路由协议示例即可,虚拟服务器集群上的业务流量就会自动进行重新分配,平均或者按照虚拟服务器的优先级分配到所有的虚拟服务器(包括新增的虚拟服务器)上,极大地降低了运维成本。
与上述的方法100相对应,本发明还提供了一种用于配置虚拟服务器集群的装置200,参见图5,该装置200包括:
运行模块201,用于在虚拟服务器集群中的多个虚拟服务器上以及在与所述多个虚拟服务器相连接的路由设备上运行动态路由协议实例,该运行模块201可以用于执行上述方法100中的步骤S101;
发送模块203,用于从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息,该发送模块203可以用于执行上述方法100中的步骤S103;
生成模块205,用于根据所述相应的虚拟IP的链路信息,在所述路由设备上生成用于所述多个虚拟服务器的相应的多路路由,该生成模块205可以用于执行上述方法100中的步骤S105;以及
分配模块207,用于通过多路路由,从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器,该分配模块207可以用于执行上述方法100中的步骤S107。
在本发明的优选实施例中,在所述多路路由是多路等价路由的情况下,所述分配模块207通过所述多路等价路由,从所述路由设备将与虚拟IP相对应的业务流量平均分配到相应的虚拟服务器。
在本发明的优选实施例中,所述分配模块207通过所述多路路由,从所述路由设备将与虚拟IP相对应的业务流量按照虚拟服务器的优先级分配到相应的虚拟服务器。
在本发明的优选实施例中,所述装置200还包括绑定模块2001,用于在所述发送模块203从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息之前,将所述虚拟IP绑定到相应的虚拟服务器, 该绑定模块2001可以用于执行上述方法100中的步骤S1001。
在本发明的优选实施例中,所述装置200还包括:禁止模块2001’,用于在所述发送模块203从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息之前,在虚拟服务器上禁止回应针对所述虚拟IP的请求报文并且禁止源地址为所述虚拟IP的请求报文,该禁止模块2001’可以用于执行上述方法100中的步骤S1001’。
在本发明的优选实施例中,所述装置200还包括健康检查模块206,用于在所述生成模块205根据所述相应的虚拟IP的链路信息在所述路由设备上生成用于所述多个虚拟服务器的相应的多路路由之后,并且在所述分配模块207通过多路路由从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器之前,对与所述多个虚拟服务器相连接的多个物理服务器进行健康检查,该健康检查模块206可以用于执行上述方法100中的步骤S106。
在本发明的优选实施例中,在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果健康检查失败的物理服务器的比例高于预先定义的阈值,则所述分配模块207不将与所述虚拟IP相对应的业务流量分配到所述虚拟服务器。
在本发明的优选实施例中,在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果存在健康检查失败的物理服务器,并且健康检查失败的物理服务器的比例低于预先定义的阈值,则所述分配模块207降低所述虚拟服务器的优先级。
由于上述各装置实施例与前述各方法实施例相对应,因此不再对各装置实施例进行详细描述。
本发明可以以任何适当的形式实现,包括硬件、软件、固件或者它们的任意组合。可选地,本发明可以至少部分地实现为运行在一个或多个处理器和/或数字信号处理器上的计算机软件。本发明的实施例的装置和模块可以在物理上、功能上和逻辑上以任何适当的方式实现。根据本发明的各个功能可以在单个单元中、在多个单元中或者作为其他功能单元的一部分来实现。同样地,本发明可以在单个单元中实现,或者可以在物理上和功能上分布在不同单元和处理器之间。
尽管已经结合一些实施例描述了本发明,但是本发明并不意在限于本 文阐述的特定形式。相反地,本发明的范围仅由所附权利要求书限定。此外,尽管特征可能看起来是结合特定实施例而被描述的,但是本领域普通技术人员应当认识到,依照本发明可以组合所描述的实施例的各种特征。在权利要求书中,措词“包括”并不排除其他模块或步骤的存在。
此外,尽管单独被列出,但是多个模块或方法步骤可以由例如单个单元或处理器实现。此外,尽管单独的特征可能包含在不同的权利要求中,但是这些特征可能地可以有利地加以组合,并且包含在不同的权利要求中并不意味着特征的组合是不可行的。此外,特征包含于一种权利要求类别(例如方法权利要求)中并不意味着限于该类别,而是表示该特征同样可适当地应用于其他权利要求类别(例如装置权利要求)。此外,权利要求中特征的顺序并不意味着必须的任何特定顺序。并且,方法权利要求中各步骤的顺序并不意味着这些步骤必须按照该顺序来执行。相反地,这些步骤可以以任何适当的顺序执行。此外,单数形式的表述并没有排除复数。因此,对于“一”、“一个”、“第一”、“第二”等等的引用并没有排除复数。权利要求中的附图标记仅仅是标号,而不应当将其视为对权利要求的范围的限制。

Claims (16)

1.一种用于配置虚拟服务器集群的方法(100),其特征在于,所述方法包括:
在虚拟服务器集群中的多个虚拟服务器上以及在与所述多个虚拟服务器相连接的路由设备上运行动态路由协议实例(S101);
从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息(S103);
根据所述相应的虚拟IP的链路信息,在所述路由设备上生成用于所述多个虚拟服务器的相应的多路路由(S105);以及
通过多路路由,从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器(S107)。
2.如权利要求1所述的方法,其中在所述多路路由是多路等价路由的情况下,通过多路路由从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器(S107)的步骤包括:通过所述多路等价路由,从所述路由设备将与虚拟IP相对应的业务流量平均分配到相应的虚拟服务器。
3.如权利要求1所述的方法,所述通过多路路由从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器(S107)的步骤包括:通过所述多路路由,从所述路由设备将与虚拟IP相对应的业务流量按照虚拟服务器的优先级分配到相应的虚拟服务器。
4.如权利要求1-3中任一项所述的方法,还包括:在所述从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息(S103)的步骤之前,将所述虚拟IP绑定到相应的虚拟服务器(S1001)。
5.如权利要求1-3中任一项所述的方法,还包括:在所述从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息(S103)的步骤之前,在虚拟服务器上禁止回应针对所述虚拟IP的请求报文并且禁止源地址为所述虚拟IP的请求报文(S1001’)。
6.如权利要求1-3中任一项所述的方法,还包括:
在所述根据所述相应的虚拟IP的链路信息在所述路由设备上生成用于所述多个虚拟服务器的相应的多路路由(S105)的步骤之后,并且在所述通过多路路由从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器(S107)的步骤之前,
对与所述多个虚拟服务器相连接的多个物理服务器进行健康检查(S106)。
7.如权利要求6所述的方法,其中在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果健康检查失败的物理服务器的比例高于预先定义的阈值,则不将与所述虚拟IP相对应的业务流量分配到所述虚拟服务器。
8.如权利要求6所述的方法,其中在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果存在健康检查失败的物理服务器,并且健康检查失败的物理服务器的比例低于预先定义的阈值,则降低所述虚拟服务器的优先级。
9.一种用于配置虚拟服务器集群的装置(200),其特征在于,所述装置包括:
运行模块(201),用于在虚拟服务器集群中的多个虚拟服务器上以及在与所述多个虚拟服务器相连接的路由设备上运行动态路由协议实例;
发送模块(203),用于从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息;
生成模块(205),用于根据所述相应的虚拟IP的链路信息,在所述路由设备上生成用于所述多个虚拟服务器的相应的多路路由;以及
分配模块(207),用于通过多路路由,从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器。
10.如权利要求9所述的装置,其中在所述多路路由是多路等价路由的情况下,所述分配模块(207)通过所述多路等价路由,从所述路由设备将与虚拟IP相对应的业务流量平均分配到相应的虚拟服务器。
11.如权利要求9所述的装置,所述分配模块(207)通过所述多路路由,从所述路由设备将与虚拟IP相对应的业务流量按照虚拟服务器的优先级分配到相应的虚拟服务器。
12.如权利要求9-11中任一项所述的装置,还包括:绑定模块(2001),用于在所述发送模块(203)从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息之前,将所述虚拟IP绑定到相应的虚拟服务器。
13.如权利要求9-11中任一项所述的装置,还包括:禁止模块(2001’),用于在所述发送模块(203)从所述多个虚拟服务器分别向所述路由设备发送相应的虚拟IP的链路信息之前,在虚拟服务器上禁止回应针对所述虚拟IP的请求报文并且禁止源地址为所述虚拟IP的请求报文。
14.如权利要求9-11中任一项所述的装置,还包括:
健康检查模块(206),用于在所述生成模块(205)根据所述相应的虚拟IP的链路信息在所述路由设备上生成用于所述多个虚拟服务器的相应的多路路由之后,并且在所述分配模块(207)通过多路路由从所述路由设备将与虚拟IP相对应的业务流量分配到相应的虚拟服务器之前,对与所述多个虚拟服务器相连接的多个物理服务器进行健康检查。
15.如权利要求14所述的装置,其中在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果健康检查失败的物理服务器的比例高于预先定义的阈值,则所述分配模块(207)不将与所述虚拟IP相对应的业务流量分配到所述虚拟服务器。
16.如权利要求14所述的装置,其中在与某个虚拟服务器相连接并且与相应的虚拟IP相对应的各物理服务器中,如果存在健康检查失败的物理服务器,并且健康检查失败的物理服务器的比例低于预先定义的阈值,则所述分配模块(207)降低所述虚拟服务器的优先级。
CN201210265130.9A 2012-07-27 2012-07-27 一种配置服务器集群的方法和装置 Active CN102821044B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510314351.4A CN104954182B (zh) 2012-07-27 2012-07-27 一种用于配置虚拟服务器集群的方法和装置
CN201210265130.9A CN102821044B (zh) 2012-07-27 2012-07-27 一种配置服务器集群的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210265130.9A CN102821044B (zh) 2012-07-27 2012-07-27 一种配置服务器集群的方法和装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201510314351.4A Division CN104954182B (zh) 2012-07-27 2012-07-27 一种用于配置虚拟服务器集群的方法和装置

Publications (2)

Publication Number Publication Date
CN102821044A CN102821044A (zh) 2012-12-12
CN102821044B true CN102821044B (zh) 2015-07-01

Family

ID=47304905

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201210265130.9A Active CN102821044B (zh) 2012-07-27 2012-07-27 一种配置服务器集群的方法和装置
CN201510314351.4A Active CN104954182B (zh) 2012-07-27 2012-07-27 一种用于配置虚拟服务器集群的方法和装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201510314351.4A Active CN104954182B (zh) 2012-07-27 2012-07-27 一种用于配置虚拟服务器集群的方法和装置

Country Status (1)

Country Link
CN (2) CN102821044B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104954182A (zh) * 2012-07-27 2015-09-30 北京奇虎科技有限公司 一种用于配置虚拟服务器集群的方法和装置

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104168193B (zh) * 2014-08-12 2017-12-15 华为技术有限公司 一种虚拟路由器冗余协议故障检测的方法及路由设备
CN104410531B (zh) * 2014-12-11 2018-07-20 上海百事通信息技术股份有限公司 冗余的系统架构方法
CN105939239B (zh) * 2015-07-31 2020-05-12 杭州迪普科技股份有限公司 虚拟网卡的数据传输方法及装置
CN106559246B (zh) * 2015-09-30 2020-01-10 新华三技术有限公司 集群的实现方法和服务器
CN105515979B (zh) * 2015-12-29 2019-05-21 新浪网技术(中国)有限公司 开放式最短路径优先ospf跨网均衡转发方法及系统
CN105827464B (zh) * 2016-05-16 2019-03-19 江南大学 可自动化部署的虚拟路由器构建方法
CN108156008B (zh) * 2016-12-05 2021-03-26 北京国双科技有限公司 服务器的配置方法和装置
CN107465562B (zh) * 2017-09-25 2020-03-06 郑州云海信息技术有限公司 一种ctdb自定义分配虚拟ip的方法、装置、设备
CN108881435B (zh) * 2018-06-15 2021-12-03 广东美的制冷设备有限公司 实时时钟提供方法、服务器、家电设备、系统和介质
CN111314098A (zh) * 2018-12-11 2020-06-19 杭州海康威视系统技术有限公司 一种ha系统中实现vip地址漂移的方法和装置
CN112583721B (zh) * 2020-11-30 2023-04-18 五八到家有限公司 业务请求的路由方法、设备、介质
CN112866107B (zh) * 2021-01-25 2023-07-18 网宿科技股份有限公司 Ip地址通告方法、流量引导方法及网络设备
CN112995054B (zh) * 2021-03-03 2023-01-20 北京奇艺世纪科技有限公司 流量分配方法、装置、电子设备和计算机可读介质
CN115604275B (zh) * 2022-11-08 2023-03-10 合肥臻谱防务科技有限公司 一种信息交互网络中的虚拟专用服务器分配方法
CN116886777B (zh) * 2023-09-06 2024-01-26 苏州浪潮智能科技有限公司 一种容器编排平台服务流量分配方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101018159A (zh) * 2007-03-12 2007-08-15 杭州华为三康技术有限公司 多网关环境下负载均衡的方法及dhcp服务器

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1829167A (zh) * 2006-04-19 2006-09-06 曾锃 一种基于虚拟路由的大型分布式系统负载均衡的方法
CN101207561B (zh) * 2006-12-22 2010-11-10 华为技术有限公司 集群管理器、集群系统、以及集群管理方法
CN101009662B (zh) * 2007-01-31 2010-12-22 杭州华三通信技术有限公司 基于负载均衡技术的报文处理方法、系统及设备
US8547844B2 (en) * 2007-07-10 2013-10-01 Telefonaktiebolaget L M Ericsson (Publ) System and method for balancing IP gateway services
CN101217448B (zh) * 2008-01-18 2013-01-30 福建星网锐捷网络有限公司 实现网关动态负载分担的方法及系统
US9054943B2 (en) * 2009-12-23 2015-06-09 Citrix Systems, Inc. Systems and methods for mixed mode handling of IPv6 and IPv4 traffic by a virtual server
CN102821044B (zh) * 2012-07-27 2015-07-01 北京奇虎科技有限公司 一种配置服务器集群的方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101018159A (zh) * 2007-03-12 2007-08-15 杭州华为三康技术有限公司 多网关环境下负载均衡的方法及dhcp服务器

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104954182A (zh) * 2012-07-27 2015-09-30 北京奇虎科技有限公司 一种用于配置虚拟服务器集群的方法和装置
CN104954182B (zh) * 2012-07-27 2018-05-11 北京奇虎科技有限公司 一种用于配置虚拟服务器集群的方法和装置

Also Published As

Publication number Publication date
CN104954182B (zh) 2018-05-11
CN102821044A (zh) 2012-12-12
CN104954182A (zh) 2015-09-30

Similar Documents

Publication Publication Date Title
CN102821044B (zh) 一种配置服务器集群的方法和装置
US11005747B2 (en) Method for implementing network virtualization and related apparatus and communications system
CN107231221B (zh) 数据中心间的业务流量控制方法、装置及系统
EP2559206B1 (en) Method of identifying destination in a virtual environment
CN102771094B (zh) 分布式路由架构
US9659075B2 (en) Providing high availability in an active/active appliance cluster
EP3016316B1 (en) Network control method and apparatus
US10798005B2 (en) Optimizing application throughput
CN108306777B (zh) 基于sdn控制器的虚拟网关主备切换方法及装置
US10200286B2 (en) Systems and methods for load balancing in a data center
CN104811400A (zh) 一种分布式网络设备
US10015098B2 (en) Systems and methods to create highly scalable network services
Yang et al. Algorithms for fault-tolerant placement of stateful virtualized network functions
WO2018068588A1 (zh) 提供组播业务的方法和软件定义网络控制器
EP3588856A1 (en) Technologies for hot-swapping a legacy appliance with a network functions virtualization appliance
CN102970389B (zh) 外网访问方法及系统
US20100097925A1 (en) Selective routing traffic controls and automated recovery among parallel multi-access interfaces
US20160277251A1 (en) Communication system, virtual network management apparatus, communication node, communication method, and program
CN112929206B (zh) 一种云网环境下云物理机配置的方法与装置
CN113709220A (zh) 虚拟负载均衡器的高可用实现方法、系统及电子设备
CN106209634B (zh) 地址映射关系的学习方法及装置
CN104618148A (zh) 一种防火墙设备的备份方法和设备
US10194002B2 (en) VBN server clustering system, method of VBN server clustering, and VBN server for clustering
CN102970388A (zh) 用于管理外网访问的方法和系统
CN102045259B (zh) 分组交换设备以及管理用户业务的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant