分布式系统及该分布式系统的扩容方法技术方案

技术编号:17444453 阅读:29 留言:0更新日期:2018-03-10 17:59
本发明专利技术提供一种分布式系统及该分布式系统的扩容方法,所述分布式系统包括主节点,多个计算节点,缓存节点,观测者及资源分配系统,所述分布式系统的扩容方法是先对每个所述计算节点的自身进行扩容,当所有的所述计算节点的自身完成扩容的数量大于预设的数量阀值时,所述资源分配系统按所需的硬件资源和加载运行软件映像来增加新的所述计算节点进行扩容,所以所述扩容方法优化了所述分布式系统的扩容过程,实现了扩容的自动化,提升了扩容的效率。

【技术实现步骤摘要】
分布式系统及该分布式系统的扩容方法
本专利技术涉及IT(互联网技术,InternetTechnology,简称IT)和CT(电信网技术,CommunityTechnology,简称CT)领域,特别涉及一种分布式系统及该分布式系统的扩容方法。
技术介绍
分布式系统是建立在网络之上的软件系统,具有高度的内聚性和透明性,使得每一个数据库的分布节点高度自治,且每一个数据库的分布节点对用户的应用来说都是透明的,看不出是本地还是远程,所以分布式系统的出现解决了大规模计算和并行计算的问题,受到广大用户的青睐。目前,常见的分布式系统的架构一般采用主从方式,即主节点负责接收和分发任务,多个从节点(也叫计算节点)执行具体的任务。主节点只做分发,不会成为系统瓶颈;而执行任务的从节点往往会随着计算量的增加和资源利用率的上升成为瓶颈。这时就需要对分布式系统进行扩容,常见的扩容方法就是采用手动方式增加一个或多个计算节点,此种扩容方法虽然具有一定的效果,但是扩容粒度较粗,且效率较低。
技术实现思路
基于此,本专利技术的目的在于提出一种具有高效率的分布式系统及该分布式体统的扩容方法,所述扩容方法优化了所述分布式系统的扩容过程,以更精确的方式对扩容过程中所需资源进行按需分配,实现扩容过程的自动化。本专利技术提供一种分布式系统的扩容方法,所述分布式系统包括主节点,多个计算节点,所述主节点负责接收和分配任务,所述计算节点执行所述主节点分配的对应的任务,进一步包括缓存节点及观测者,所述扩容方法包括:所述缓存节点记录分配给每个所述计算节点的队列阻塞信息,并传送给所述观测者;所述主节点接收每个所述计算节点定期上报的自身的资源利用率信息,并传送给所述观测者;所述观测者收集所述队列阻塞信息、所述资源利用率信息,并判断每个所述计算节点是否超过自身预设的吞吐量阀值,若未超过,则以增加线程的方式对每个所述计算节点的内部进行第一次扩容。所述分布式系统的扩容方法,其中,所述分布式系统还包括资源管理系统,若每个所述计算节点都超过自身预设的吞吐量阀值,则判断所述计算节点是否超过预设的资源利用率阀值,若超过,则所述资源管理系统分配所需的硬件资源和软件镜像,以增加新的计算节点的方式进行第二次扩容。所述分布式系统的扩容方法,其中,所述第一次扩容包括:所述观测者接收所述主节点主动发出的扩容申请,并发出第一次扩容命令;所述计算节点接收所述第一次扩容命令,计算所需增加的线程数量并传送给所述主节点;所述观测者接收所述主节点传送的所述线程数量,并判断所述线程数量是否超过预设的上限值,若未超过,则所述计算节点根据所需增加的所述线程数量进行扩容,若超过,则对另外的所述计算节点以增加线程的方式进行扩容。所述分布式系统的扩容方法,其中,所述第二次扩容包括:所述观测者计算需增加的新的计算节点的数量及所述新的计算节点所需的硬件资源和加载运行软件映像,并发送第二次扩容命令给所述资源分配系统;所述资源分配系统接收所述第二次扩容命令,分配所需的硬件资源和加载运行软件映像,并通过容器方式启动所述新的计算节点;所述新的计算节点完成启动后,向所述缓存节点申请消息缓存并接收所述缓存节点完成的分配结果,同时向所述主节点发出加入请求;所述主节点接收加入请求后发布新的计算任务,完成第二次扩容。所述分布式系统的扩容方法,其中,当所述资源分配系统包括基础设施服务系统和容器集群管理系统时,所述观测者需先向所述基础设施服务系统申请新的计算节点所需的硬件资源,再向所述容器集群管理系统申请新的计算节点所需的软件镜像,所述容器集群管理系统通过容器方式启动新的计算节点;当所述资源分配系统为平台服务系统时,所述观测者向所述平台服务系统申请新的计算节点所需的硬件资源及软件镜像,所述平台服务系统通过容器方式启动新的计算节点。相较现有技术,本专利技术所述扩容方法中,先对每个所述计算节点的自身进行扩容,当所有的所述计算节点的自身完成扩容的数量大于预设的数量阀值时,所述资源分配系统按所需的硬件资源和加载运行软件映像来增加新的所述计算节点进行扩容,所以所述扩容方法优化了所述分布式系统的扩容过程,实现了扩容的自动化,提升了扩容的效率。一种分布式系统,包括主节点,多个计算节点,所述主节点负责接收和分配任务,所述计算节点执行所述主节点分配的对应的任务,进一步包括缓存节点及观测者;所述缓存节点位于所述主节点和所述计算节点之间,用于记录分配给每个所述计算节点的队列阻塞信息,并传送给所述观测者;所述主节点用于接收每个所述计算节点定期上报的自身的资源利用率信息,并传送给所述观测者;所述观测者用于收集所述队列阻塞信息、所述资源利用率信息,并判断每个所述计算节点是否超过自身预设的吞吐量阀值,若未超过,则以增加线程的方式对每个所述计算节点的内部进行第一次扩容。所述分布式系统,其中,所述分布式系统还包括资源管理系统,所述资源分配系统用于分配所需的硬件资源和软件镜像,若每个所述计算节点都超过自身预设的吞吐量阀值,则判断所述计算节点是否超过预设的资源利用率阀值,若超过,则以增加新的计算节点的方式进行第二次扩容。所述分布式系统,其中,所述第一次扩容包括:所述观测者用于接收所述主节点主动发出的扩容申请,并发出第一次扩容命令;所述计算节点用于接收所述第一次扩容命令,计算所需增加的线程数量并传送给所述主节点;所述观测者用于接收所述主节点传送的所述线程数量,并判断所述线程数量是否超过预设的上限值,若未超过,则所述计算节点根据所需增加的所述线程数量进行扩容,若超过,则对另外的所述计算节点以增加线程的方式进行扩容。所述分布式系统,其中,所述第二次扩容包括:所述观测者用于计算需增加的新的计算节点的数量及所述新的计算节点所需的硬件资源和加载运行软件映像,并发送第二次扩容命令给所述资源分配系统;所述资源分配系统用于接收所述第二次扩容命令,分配所需的硬件资源和加载运行软件映像,并通过容器方式启动所述新的计算节点;所述新的计算节点完成启动后,用于向所述缓存节点申请消息缓存并接收所述缓存节点完成的分配结果,同时向所述主节点发出加入请求;所述主节点用于接收所述新的计算节点的加入请求并发布新的计算任务,完成第二次扩容。所述分布式系统,其中,当所述资源分配系统包括基础设施服务系统和容器集群管理系统时,所述观测者用于先向所述基础设施服务系统申请新的计算节点所需的硬件资源,再向所述容器集群管理系统申请新的计算节点所需的软件镜像,所述容器集群管理系统通过容器方式启动新的计算节点;当所述资源分配系统为平台服务系统时,所述观测者用于向所述平台服务系统申请新的计算节点所需的硬件资源及软件镜像,所述平台服务系统通过容器方式启动新的计算节点。附图说明本专利技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1是本专利技术中分布式系统的结构框图;图2是本专利技术第一实施例中分布式系统的扩容方法的流程图;图3是本专利技术第二实施例中分布式系统的扩容方法的流程图;图4是本专利技术第一实施例中第一次扩容的扩容流程图;图5是本专利技术第二实施例中第二次扩容的扩容流程图;图6是本专利技术第三实施例中基于基础设施服务系统的扩容流程图;图7是本专利技术第四实施例中基于平台服务系统的扩容流程图。主要元件符号说明:主节点10缓存本文档来自技高网...
分布式系统及该分布式系统的扩容方法

【技术保护点】
一种分布式系统的扩容方法,所述分布式系统包括主节点,多个计算节点,所述主节点负责接收和分配任务,所述计算节点执行所述主节点分配的对应的任务,其特征在于,进一步包括缓存节点及观测者,所述扩容方法包括:所述缓存节点记录分配给每个所述计算节点的队列阻塞信息,并传送给所述观测者;所述主节点接收每个所述计算节点定期上报的自身的资源利用率信息,并传送给所述观测者;所述观测者收集所述队列阻塞信息、所述资源利用率信息,并判断每个所述计算节点是否超过自身预设的吞吐量阀值,若未超过,则以增加线程的方式对每个所述计算节点的内部进行第一次扩容。

【技术特征摘要】
1.一种分布式系统的扩容方法,所述分布式系统包括主节点,多个计算节点,所述主节点负责接收和分配任务,所述计算节点执行所述主节点分配的对应的任务,其特征在于,进一步包括缓存节点及观测者,所述扩容方法包括:所述缓存节点记录分配给每个所述计算节点的队列阻塞信息,并传送给所述观测者;所述主节点接收每个所述计算节点定期上报的自身的资源利用率信息,并传送给所述观测者;所述观测者收集所述队列阻塞信息、所述资源利用率信息,并判断每个所述计算节点是否超过自身预设的吞吐量阀值,若未超过,则以增加线程的方式对每个所述计算节点的内部进行第一次扩容。2.根据权利要求1所述的扩容方法,其特征在于,所述分布式系统还包括资源管理系统,若每个所述计算节点都超过自身预设的吞吐量阀值,则判断所述计算节点是否超过预设的资源利用率阀值,若超过,则所述资源管理系统分配所需的硬件资源和软件镜像,以增加新的计算节点的方式进行第二次扩容。3.根据权利要求1所述的扩容方法,其特征在于,所述第一次扩容包括:所述观测者接收所述主节点主动发出的扩容申请,并发出第一次扩容命令;所述计算节点接收所述第一次扩容命令,计算所需增加的线程数量并传送给所述主节点;所述观测者接收所述主节点传送的所述线程数量,并判断所述线程数量是否超过预设的上限值,若未超过,则所述计算节点根据所需增加的所述线程数量进行扩容,若超过,则对另外的所述计算节点以增加线程的方式进行扩容。4.根据权利要求2所述的扩容方法,其特征在于,所述第二次扩容包括:所述观测者计算需增加的新的计算节点的数量及所述新的计算节点所需的硬件资源和加载运行软件映像,并发送第二次扩容命令给所述资源分配系统;所述资源分配系统接收所述第二次扩容命令,分配所需的硬件资源和加载运行软件映像,并通过容器方式启动所述新的计算节点;所述新的计算节点完成启动后,向所述缓存节点申请消息缓存并接收所述缓存节点完成的分配结果,同时向所述主节点发出加入请求;所述主节点接收加入请求后发布新的计算任务,完成第二次扩容。5.根据权利要求2所述的扩容方法,其特征在于,当所述资源分配系统包括基础设施服务系统和容器集群管理系统时,所述观测者需先向所述基础设施服务系统申请新的计算节点所需的硬件资源,再向所述容器集群管理系统申请新的计算节点所需的软件镜像,所述容器集群管理系统通过容器方式启动新的计算节点;当所述资源分配系统为平台服务系统时,所述观测者向所述平台服务系统申请新的计算节点所需的硬件资源及软件镜像,所述平台服务系统通过容器方式启动新的计算节点。6.一种分布式系统,包括主节点,多...

【专利技术属性】
技术研发人员:郭华
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1