本发明涉及区块链,尤其涉及一种部署集群的方法、装置、存储介质和电子设备。
背景技术:
1、容器编排引擎(kubernetes)集群是基于谷歌(google)开源的一个分布式容器管理系统,简称为k8s,被广泛地用作云计算资源的管理平台、管理框架以及作为部署应用的管理工具等。通过将多个节点组合成集群,在集群上通过监听各节点的健康状态,从而调度各节点提供服务。相关技术中,在部署一个新的kubernetes集群时,一般通过手工方式,依据各节点的配置及集群的资源需求,例如,节点数量、节点的角色、操作系统、cpu架构,生成对应节点的集群部署配置文件,逐个将部署集群需要的集群部署配置文件下发到集群的每一个节点上,以使节点依据下发的相应集群部署配置文件进行配置。但该集群部署方法,在部署集群时,需要基于集群的资源需求及不同节点的配置,例如,cpu架构、操作系统等,手动编辑形成满足该节点数据格式的集群部署配置文件,使得部署集群所需的时间较长、效率较低。
技术实现思路
1、有鉴于此,本发明提供一种部署集群的方法、装置、存储介质和电子设备。
2、具体地,本发明是通过如下技术方案实现的:
3、根据本发明的第一方面,提供一种部署集群的方法,部署集群的方法包括:
4、获取待创建集群中的各节点的配置信息;
5、在所述各节点安装预先设置的代理应用程序,所述代理应用程序包括各类型节点对应的集群部署配置文件的生成规则,所述类型节点包括主节点及从节点;
6、基于所述各节点的配置信息及所述待创建集群的目标服务属性,确定所述待创建集群的主节点,将所述主节点的代理应用程序的配置参数描述配置为主角色,将所述从节点的代理应用程序的配置参数描述配置为节点角色;
7、基于各主节点,确定领导节点,以使所述领导节点依据获取的创建集群配置信息,查询预先存储的共享配置文件库,获取所述创建集群配置信息映射的主节点目标共享配置文件及从节点目标共享配置文件,分别分发至主节点及从节点;
8、触发各节点依据接收的目标共享配置文件以及获取的该节点的配置信息,调用该节点安装的所述代理应用程序的生成规则,生成基于该节点的集群部署配置文件,运行所述集群部署配置文件。
9、优选地,所述基于各主节点,确定领导节点,包括:
10、在将所述代理应用程序的配置参数描述配置为主角色后,触发该主角色对应的主节点发起注册请求;
11、所述代理应用程序的配置参数描述配置为主角色的其它节点接收所述注册请求,存储所述注册请求中携带的节点信息,将自身的节点信息携带在注册请求响应中,返回至所述注册请求对应的节点;
12、依据注册的各主节点进行投票,获取领导节点。
13、优选地,所述注册请求通过安装的代理应用程序,以广播的方式发送,在所述注册请求中,配置只有代理应用程序的配置参数描述被配置为主角色的主节点对所述注册请求进行响应的信息。
14、优选地,在所述确定领导节点之后,所述方法还包括:
15、在将所述代理应用程序的配置参数描述配置为节点角色后,触发该节点角色对应的从节点发起从节点注册请求;
16、所述代理应用程序的配置参数描述配置为主角色的主节点接收所述从节点注册请求,依据预先设置的注册规则,确定是否注册所述从节点;
17、若确定注册,存储所述从节点注册请求中携带的节点信息,将自身的节点信息携带在从节点注册请求响应中,返回至所述从节点注册请求对应的节点,将所述从节点注册请求中携带的节点信息上报至所述领导节点。
18、优选地,所述依据预先设置的注册规则,确定是否注册所述从节点,包括:
19、接收所述从节点注册请求的主节点,确定与发送所述从节点注册请求的从节点之间的距离,若距离小于预先设置的距离阈值,确定注册所述从节点。
20、优选地,所述触发各节点依据接收的目标共享配置文件以及获取的该节点的配置信息,调用该节点安装的所述代理应用程序的生成规则,生成基于该节点的集群部署配置文件,包括:
21、所述领导节点依据用户发送的创建集群配置信息,查询预先存储的共享配置文件库,提取主节点共享配置文件及从节点共享配置文件;
22、依据所述创建集群配置信息,对所述主节点共享配置文件及从节点共享配置文件分别进行编辑,得到主节点目标共享配置文件及从节点目标共享配置文件;
23、将所述主节点目标共享配置文件发送至各主节点,将所述从节点目标共享配置文件发送至各从节点;
24、触发各所述主节点依据接收的所述主节点目标共享配置文件以及所述主节点的配置信息,依据所述主节点的代理应用程序的生成规则,生成所述主节点的集群部署管理配置文件,以及,各所述从节点依据接收的所述从节点目标共享配置文件以及所述从节点的配置信息,依据所述从节点的代理应用程序的生成规则,生成所述从节点的集群部署配置文件。
25、优选地,所述基于所述各节点的配置信息及所述待创建集群的目标服务属性,确定所述待创建集群的主节点,包括:
26、依据所述待创建集群的目标服务属性,确定所述待创建集群中的主节点数;
27、依据节点的配置信息,基于预先设置的配置信息项系数及配置信息项评分规则,获取每一节点的配置信息对应的性能分值;
28、按照性能分值由高至低的顺序排序,获取排序前主节点数的性能分值对应的节点,得到所述主节点。
29、本技术方案中的部署集群的方法,通过利用主节点之间的相互注册以自动选举领导节点,领导节点生成不同类型节点的共享配置文件并下发至对应的节点,各节点依据节点的配置信息、预先设置的生成规则及接收的共享配置文件,生成集群部署配置文件,并通过运行集群部署配置文件实现集群部署,减少用户在不同节点之间的手动编辑集群部署配置文件的操作,能够有效提升集群部署效率。
30、根据本发明的第二方面,提供一种部署集群的装置,部署集群的装置包括:
31、配置信息获取模块,用于获取待创建集群中的各节点的配置信息;
32、代理应用模块,用于在所述各节点安装预先设置的代理应用程序,所述代理应用程序包括各类型节点对应的集群部署配置文件的生成规则,所述类型节点包括主节点及从节点;
33、角色划分模块,用于基于所述各节点的配置信息及所述待创建集群的目标服务属性,确定所述待创建集群的主节点,将所述主节点的代理应用程序的配置参数描述配置为主角色,将所述从节点的代理应用程序的配置参数描述配置为节点角色;
34、共享配置模块,用于基于各主节点,确定领导节点,以使所述领导节点依据获取的创建集群配置信息,查询预先存储的共享配置文件库,获取所述创建集群配置信息映射的主节点目标共享配置文件及从节点目标共享配置文件,分别分发至主节点及从节点;
35、部署配置模块,用于触发各节点依据接收的目标共享配置文件以及获取的该节点的配置信息,调用该节点安装的所述代理应用程序的生成规则,生成基于该节点的集群部署配置文件,运行所述集群部署配置文件。
36、根据本发明的第三方面,提供一种存储介质,其上存储有计算机程序,程序被处理器执行时实现第一方面的任意可能的实现方式中的部署集群的方法的步骤。
37、根据本发明的第四方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现第一方面的任意可能的实现方式中的部署集群的方法的步骤。