为了能够向各类用户提供持续、不间断的网络应用服务,例如提供常规Web服务、数据库服务以及其他特殊应用服务,同时保证这些业务的安全备份和用户重要隐私信息的安全备份,现在很多单位都采用了active/standby切换模式来部署两台后台服务器系统,以便实现双机软备份的目的。
一旦其中某台服务器系统在运行过程中遇到意外不能正常工作时,备份服务器系统将从standby模式状态自动切换到active模式状态,确保各类网络应用服务的持续、不间断运行。不过,从实际运行效果来看,这种服务器部署运行方式也存在一些缺憾:在同时部署了多台服务器的局域网运行环境中,上述服务器部署方式总是造成一台服务器系统始终处于待机运行状态,而另外一台服务器系统则是时刻工作在超负荷运行状态;这就有可能造成这样一种局面,那就是所有用户的访问需求量要是超过单台服务器系统的运行负荷的时候,整个服务器组都有可能会发生瘫痪状态。遭遇这种特殊情况的时候,我们往往只有对服务器组进行及时升级、改造才能解决上面的运行难题,不过持续对服务器系统进行改造、升级,显然会增加运行成本,同时还会造成服务器系统资源的更大浪费。
改造负载均衡
笔者所在单位大楼局域网网络,共有1500个左右的上网节点,所有上网节点全部通过代理服务器方式来实现访问Internet网络的目的,受制于单台代理服务器的系统运行性能以及系统故障等因素,局域网通过代理服务器上网方式的运行稳定性无法得到有效保证,所以我们对代理服务器的负载均衡进行了升级、改造,确保局域网中的所有上网流量都能通过负载均衡机制,平均分配到整个服务器组的各个单台服务器系统中,这样既能保证网络应用服务的运行稳定性,又不会造成服务器资源的更大浪费。
为了为上网用户提供一个目标服务或同时提供多个目标服务,我们在七层交换机上通过IP地址与TCP/UDP端口的不同组合,来为每一个目标服务设置一个不同的虚拟IP地址;正因为如此,七层交换机可以同时为若干个基于TCP/IP协议的各类业务应用提供服务器系统的负载均衡服务;七层交换机可以持续不停地对用户需要访问的服务器系统资源进行合理性检查,检查范围限定在交换机的四层到七层范围内,当上网用户向目标服务器系统发出访问请求信息时,BIG/IP协议会依照目标服务器之间的网络健康状态以及运行性能状态,自动挑选性能状态处于最优效果的服务器系统来应答用户的上网请求信息,这样不但可以充分利用每一台服务器系统的资源,而且也会平均分配数据流量到每一台服务器系统中,避免了单台代理服务器传输性能的瓶颈以及系统故障的影响。通过增加七层交换机,我们可以对局域网的数据流量以及访问内容进行灵活的管理与分配,利用七层交换机自带的12种与众不同的数据算法,将局域网中的访问数据流按需转发分配给它想要访问的服务器组,而对于上网用户来说,我们看到的只是一台虚拟的服务器。这个时候,上网用户只需要记住虚拟服务器的访问地址,而不需要同时记住整个服务器组的其他服务器地址,用户向虚拟服务器发出的数据流会自动被七层交换机灵活地平均分配给所有的服务器系统。七层交换机所采用的12种与众不同的数据算法,主要有:
优先权算法:这种算法主要就是对所有的服务器系统进行分组,同时对这些分组设置合适的访问优先权,BIG/IP协议会把上网用户的数据请求,优先分配给优先权级别最高的服务器分组,一旦优先权级别最高的服务器分组工作状态不正常的时候,第二优先权级别的服务器分组会自动递补上来,负责处理上网用户的数据请求;如果第二优先权级别的服务器分组也遇到了故障无法正常工作的话,那么其他服务器分组会依次进行递补;显然这种数据算法,为上网用户提供了一种热备份的功能。
比率算法:这种算法是为整个服务器组中的每一台服务器系统事先设置一个加权值比例,同时依照这个加权值比例,自动将上网用户的数据请求信息分配给每一台服务器系统;一旦整个服务器中的某一台服务器系统在第二层到第七层范围内遇到故障无法正常工作的时候,BIG/IP协议会自动将这台故障服务器系统从整个服务器组中临时剔除出来,确保它不会参加下一次上网用户请求的分配任务,直到它的故障被成功排除为止。