发明名称 一种基于KVM云平台的分布式数据库系统实现自动伸缩负载均衡的方法
摘要 本发明涉及一种基于KVM云平台的分布式数据库系统实现自动伸缩负载均衡的方法,具体包括:每个数据库服务器节点自我监控CPU使用量,当在Timer时间段内,CPU使用量的峰值的均值大于或等于设置的Timer时间段的阈值上限时,向MON进程发送卸载负载请求,CPU使用量的峰值的均值小于或等于设置的Timer时间段的阈值下限时,向MON进程发送增加负载请求;本发明构建一个高性能的分布式关系型数据库,可以在集群能在不间断提供服务而且保持数据一致性的情况下进行自动伸缩以实现负载的自动均衡,直接降低了数据库因负载过高而宕机的可能性。
申请公布号 CN106257424A 申请公布日期 2016.12.28
申请号 CN201610431719.X 申请日期 2016.06.16
申请人 山东大学 发明人 袁东风;曹野
分类号 G06F9/50(2006.01)I;G06F17/30(2006.01)I 主分类号 G06F9/50(2006.01)I
代理机构 济南金迪知识产权代理有限公司 37219 代理人 杨树云
主权项 一种基于KVM云平台的分布式数据库系统实现自动伸缩负载均衡的方法,其特征在于,所述分布式数据库系统为一个KVM集群,包括一个MON进程、若干个KVM集群服务器、GUESTAgent用户进程,所述GUESTAgent用户进程分别连接所述MON进程及所述若干个KVM集群服务器,所述MON进程分别连接所述若干个KVM集群服务器;所述若干个KVM集群服务器具有相同的网络环境并配置libvirt开发接口,KVM集群服务器中运行若干个数据库服务器节点,每个数据库服务器节点具有相同的数据库软件环境和运行Task Agent进程;所述MON进程根据需要运行在所述KVM集群服务器上;GUESTAgent用户进程根据需要运行在数据库服务器节点或KVM集群服务器上,用于对数据库中的数据进行增删改查操作,所述分布式数据库系统设置Timer时间段的负载阈值,包括Timer时间段的阈值上限及Timer时间段的阈值下限;具体步骤包括:(1)每个数据库服务器节点自我监控CPU使用量,当在Timer时间段内,CPU使用量的峰值的均值大于或等于设置的Timer时间段的阈值上限时,进入步骤(2),CPU使用量的峰值的均值小于或等于设置的Timer时间段的阈值下限时,进入步骤(3);(2)向MON进程发送卸载负载请求,MON进程接收到此请求,通过libvirt开发接口向KVM集群的服务器节点发送创建新的数据库服务器节点请求,数据库服务器节点被创建启动后运行自启动脚本和服务,向MON进程发送加入所述KVM集群请求,MON进程将此数据库服务器节点加入集群并将之前申请卸负载数据库服务器节点所分配的任务取一半给新加入数据库服务器节点,同时向所有GUESTAgent用户进程和新加入数据库服务器节点发送数据同步信号,进入数据同步流程,数据同步完成后,所述KVM集群进入正常工作状态,集群扩张完成;(3)向MON进程发送增加负载请求,MON进程在接收到两个增加负载请求时,将第二个申请增加负载请求的数据库服务器节点的任务合并至第一个申请增加负载请求的数据库服务器节点中,同时向所有GUESTAgent用户进程和第一个申请增加负载请求的数据库服务器节点发送数据同步信号,进入数据同步流程,数据同步完成后,所述KVM集群进入正常工作状态,集群扩张完成。
地址 250199 山东省济南市历城区山大南路27号