论文部分内容阅读
随着科学技术的发展以及新型生产生活方式的出现,各种应用服务的流量也爆发式地扩张。在单机性能相对稳定的今天,多个节点组成集群对外提供一致的服务已成为一种通用的方案。一般使用负载均衡服务作为集群的入口,实现应用服务的高可用和一定的安全性。同时负载均衡服务就成为整个应用集群的可用性瓶颈。本论文致力于解决负载均衡服务的高可用问题,主要完成了以下工作:1.研究传统负载均衡高可用方案的架构和运行流程,分析该传统方案的不足之处,包括:一、传统的负载均衡高可用方案采用的是基于虚拟冗余路由协议的主从备份,该协议的运作特点决定了在主节点停机后,虚拟IP转移到从节点上的过程中需要一定的时间,在这段时间内系统是无响应的。二、传统方案中的服务集群同时只有一个主节点处于运行状态,物理资源没有得到合理的利用,仍有可以提升的空间。2.针对传统负载均衡高可用方案的两个不足之处进行改进,分析了不同解决方案的弊端,最终引出本文的方案,即:通过设立注册服务的角色,定时收集并检测负载均衡服务集群主机的存活状态。开发出客户端应用插件去注册服务器初始化集群信息,并根据机器的动态负载情况建立一致性哈希环,每次发送请求之前在一致性哈希环中选择合适的节点拼接成地址信息,然后再发送客户端请求。同时,设立超时机制及时处理异常连接,保证每一个客户端请求得到及时的处理。在理论架构上论证了新提出方案的可行性,可以解决传统方案所存在的问题。3.将改进后的高可用负载均衡方案部署到OpenStack云平台中进行测试,主要包括不同参数和策略的高可用性测试以及不同机制配置下的负载测试。测试结果表明,改进后的高可用负载均衡方案降低了负载均衡服务停机切换时的无响应时间,并使得无响应时间在可预知的范围内。同时,改进后的方案能够根据不同的机器配置分配流量请求,实现了负载均衡服务的负载均衡。在实验结果上验证了改进后方案的可行性。