配置部署方法、装置以及电子设备与流程
本申请涉及计算机领域,具体而言,涉及一种配置部署方法、装置以及电子设备。
背景技术:
1、分布式系统是一种通过网络将多个独立的计算节点连接起来,以实现协同工作、资源共享和任务分担的计算系统。其主要特点是在地理上分散的各节点通过网络通信,协同完成任务,从而提供高效、可扩展和容错的解决方案。k8s是一个典型的分布式系统。
2、apiserver是k8s中的核心组件之一,提供了优秀的配置监听感知能力,适合在基于k8s的分布式系统中进行配置共享。通过apiserver可以在分布式系统的控制中心(称作controller)下发配置,并在节点(称作agent)监听配置,实现业务的协同。
3、在分布式系统中,存在一种常见的场景:配置需要在agent的多个异构进程间部署,不同进程可能会由于各种异常原因,使配置无法在多个进程内快速达成一致;尤其是一些需要短时间快速变化和响应的配置,会使得agent上的进程频繁地响应配置要求的状态变化,进而导致由于配置变化带来的性能浪费。上述两个现象引发分布式系统中,agent上多个异构进程间无法达到状态最终一致性,以及维持状态一致带来的性能消耗过大的问题。
4、针对相关技术中向节点中的异构进程部署配置的时效性和效率较低的问题,目前尚未提出有效的解决方案。
技术实现思路
1、本申请提供一种配置部署方法、装置以及电子设备,以解决相关技术中向节点中的异构进程部署配置的时效性和效率较低的问题。
2、根据本申请的一个方面,提供了一种配置部署方法,应用于状态机,该方法包括:接收配置管理模块发送的目标配置信息,并将目标配置信息作为期望信息存储至状态机的本地内存中,其中,配置管理模块接收控制器发送的目标配置信息;从本地内存中获取目标业务进程的当前配置信息,并根据当前配置信息和期望信息判断是否需要对当前配置信息进行更新;在需要对当前配置信息进行更新的情况下,通过配置管理模块向目标业务进程下发目标配置信息,其中,目标业务进程根据目标配置信息进行配置部署操作。
3、可选地,当前配置信息包括状态数据或配置数据,根据当前配置信息和期望信息判断是否需要对当前配置信息进行更新包括:判断当前配置信息是否包含状态数据,其中,状态数据用于表征目标业务进行的信息配置操作的配置状态;在当前配置信息包含状态数据的情况下,根据状态数据判断是否对当前配置信息进行更新;在当前配置信息包含配置数据的情况下,将配置数据与期望信息进行对比;在配置数据与期望信息相同的情况下,确定不需要对当前配置信息进行更新;在配置数据与期望信息不相同的情况下,确定需要对当前配置信息进行更新。
4、可选地,根据状态数据判断是否对当前配置信息进行更新包括:在状态数据为异常状态的情况下,确定需要对当前配置信息进行更新;在状态数据为更新状态的情况下,确定不需要对当前配置信息进行更新;在状态数据为正常状态的情况下,存储目标业务进程发送到配置数据,并使用配置数据替换状态数据。
5、可选地,在状态数据为异常状态的情况下,该方法还包括:获取状态数据连续为异常状态的目标次数,并判断目标次数是否大于预设次数;在目标次数大于预设次数的情况下,确定目标业务进程异常,并向运维端发送提示信息,其中,提示信息用于表征目标业务进程异常;在目标次数小于等于预设次数的情况下,确定需要对当前配置信息进行更新。
6、可选地,在目标业务进程根据目标配置信息进行配置部署操作之后,该方法还包括:接收目标业务进程发送的配置数据,并判断配置数据与状态机中存储的期望信息是否相同;在配置数据与期望信息相同的情况下,确定目标业务进程完成配置数据的更新操作,并运行目标业务进程;在配置数据与期望信息不相同的情况下,通过配置管理模块向目标业务进程下发目标配置信息。
7、可选地,将目标配置信息作为期望信息存储至状态机的本地内存中包括:判断本地内存中是否包含历史期望信息;在本地内存中不包含历史期望信息的情况下,将目标配置信息确定为期望信息,并存储至本地内存中;在本地内存中包含历史期望信息的情况下,判断历史期望信息与目标配置信息是否相同;在历史期望信息与目标配置信息相同的情况下,保持历史期望信息不变;在历史期望信息与目标配置信息不相同的情况下,将本地内存中的历史期望信息替换为目标配置信息。
8、可选地,在状态数据为更新状态的情况下,该方法还包括:记录状态数据为更新状态的持续时长,并判断持续时长是否大于预设时长;在持续时长大于预设时长的情况下,确定状态数据为异常状态。
9、根据本申请的另一方面,提供了一种配置部署装置。该装置包括:第一接收单元,用于接收配置管理模块发送的目标配置信息,并将目标配置信息作为期望信息存储至状态机的本地内存中,其中,配置管理模块接收控制器发送的目标配置信息;第一获取单元,用于从本地内存中获取目标业务进程的当前配置信息,并根据当前配置信息和期望信息判断是否需要对当前配置信息进行更新;第一下发单元,用于在需要对当前配置信息进行更新的情况下,通过配置管理模块向目标业务进程下发目标配置信息,其中,目标业务进程根据目标配置信息进行配置部署操作。
10、根据本发明的另一方面,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现本申请前述实施例提供的一种配置部署方法。
11、根据本发明的另一方面,还提供了一种电子设备,包含一个或多个处理器和存储器;存储器中存储有计算机可读指令,处理器用于运行计算机可读指令,其中,计算机可读指令运行时执行前述实施例提供的一种配置部署方法。
12、通过本申请,采用以下步骤:接收配置管理模块发送的目标配置信息,并将目标配置信息作为期望信息存储至状态机的本地内存中,其中,配置管理模块接收控制器发送的目标配置信息;从本地内存中获取目标业务进程的当前配置信息,并根据当前配置信息和期望信息判断是否需要对当前配置信息进行更新;在需要对当前配置信息进行更新的情况下,通过配置管理模块向目标业务进程下发目标配置信息,其中,目标业务进程根据目标配置信息进行配置部署操作。解决了相关技术中向节点中的异构进程部署配置的时效性和效率较低的问题。通过将目标配置信息存储为期望信息的方式,使得在对目标业务进程进行配置的时候,可以通过将期望信息和当前配置信息进行对比的方式,确定是否需要对目标业务进程进行配置操作,进而降低配置频率,同时通过设置状态机的方式,每个状态机分别管理一个目标业务进程,进而提高了配置部署操作的时效性,进而达到了提高向进程进行配置部署的时效性和部署效率的技术效果。
1.一种配置部署方法,其特征在于,应用于状态机,包括:
2.根据权利要求1所述的方法,其特征在于,所述当前配置信息包括状态数据或配置数据,根据所述当前配置信息和所述期望信息判断是否需要对所述当前配置信息进行更新包括:
3.根据权利要求2所述的方法,其特征在于,根据所述状态数据判断是否对所述当前配置信息进行更新包括:
4.根据权利要求3所述的方法,其特征在于,在所述状态数据为异常状态的情况下,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,在所述目标业务进程根据所述目标配置信息进行配置部署操作之后,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,将所述目标配置信息作为期望信息存储至所述状态机的本地内存中包括:
7.根据权利要求3所述的方法,其特征在于,在所述状态数据为更新状态的情况下,所述方法还包括:
8.一种配置部署装置,其特征在于,包括:
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的可执行程序,其中,在所述可执行程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至7中任意一项所述的配置部署方法。
10.一种电子设备,其特征在于,包括:
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com