集群建立方法技术

技术编号:39642901 阅读:7 留言:0更新日期:2023-12-09 11:10
本申请公开了一种集群建立方法

【技术实现步骤摘要】
集群建立方法、装置、存储介质及电子装置


[0001]本申请涉及计算机
,具体而言,涉及一种集群建立方法

装置

存储介质及电子装置


技术介绍

[0002]Kubernetes
是一个开源的容器编排平台,用于自动化部署

扩展和管理容器化应用程序,在
Kubernetes
上部署
Redis
容器集群相对于在传统主机上部署
Redis
容器集群在资源方面更加有弹性,且便于扩展和管理

[0003]目前,在
Kubernetes
上部署
Redis
容器集群需要人工参与,需要人工手动获取所有
Redis
节点的
Pod IP
,并通过命令或外部工具来建立
Redis
集群

这增加了部署的复杂性和人力成本

并且当
Redis
节点发生意外重启后,其
Pod IP
会发生变化,但集群内的节点信息并不会更新,导致集群无法恢复,尤其是当过半数的
Redis
节点重启时,将导致整个集群无法恢复

[0004]针对上述的问题,目前尚未提出有效的解决方案


技术实现思路

[0005]本申请实施例提供了一种集群建立方法

装置

存储介质及电子装置,以至少解决相关技术中人工手动在
Kubernetes
上部署
Redis
集群,导致人工成本高,且多数
Redis
节点重启后集群无法恢复的技术问题

[0006]根据本申请其中一实施例,提供了一种集群建立方法,包括:基于目标容器编排平台启动多个容器,其中,多个容器对应多个节点;在多个容器启动后,确定是否存在节点信息文件,得到第一判定结果,其中,节点信息文件用于存储多个节点的地址信息;响应于第一判定结果为不存在节点信息文件,确定当前节点是否为目标节点,得到第二判定结果,其中,目标节点用于与多个节点中的其他节点建立联系;响应于第二判定结果表示当前节点为目标节点,启动当前节点的节点服务,其中,节点服务用于控制当前节点处于运行状态;响应于多个节点均处于运行状态,获取多个节点的地址信息;基于多个节点的地址信息搭建分布式集群

[0007]可选地,确定当前节点是否为目标节点包括:获取当前节点的节点编号,其中,不同节点对应不同编号;响应于节点编号为目标编号,确定当前节点为目标节点;响应于节点编号不为目标编号,确定当前节点不为目标节点

[0008]可选地,启动当前节点的节点服务包括:启动当前节点的节点服务,并等待多个节点中的其他节点启动节点服务;基于判断指令确定多个节点是否符合启动要求,其中,启动要求用于表示节点正常启动且正常提供服务

[0009]可选地,获取多个节点的地址信息包括:基于查询指令和域名从数据库中获取多个节点的地址信息,其中,不同节点对应不同域名

[0010]可选地,还包括:对多个节点进行异常检测,得到异常检测结果;响应于异常检测
结果表示任意节点处于异常状态,退出集群建立流程,并根据探针信息和重启策略判断是否重启集群建立流程

[0011]可选地,还包括:响应于第一判定结果为存在节点信息文件,通过查询指令和域名从数据库中获取多个节点当前的地址信息;基于多个节点当前的地址信息对节点信息文件进行更新,得到更新后的节点信息文件

[0012]可选地,还包括:响应于第二判定结果表示当前节点不为目标节点,启动当前节点的节点服务,并加入分布式集群,其中,分布式集群为由目标节点建立的集群

[0013]根据本申请其中一实施例,还提供了一种集群建立装置,包括:容器拉起模块,容器拉起模块用于基于目标容器编排平台启动多个容器,其中,多个容器对应多个节点;第一确定模块,第一确定模块用于在多个容器启动后,确定是否存在节点信息文件,得到第一判定结果,其中,节点信息文件用于存储多个节点的地址信息;第二确定模块,第二确定模块用于响应于第一判定结果为不存在节点信息文件,确定当前节点是否为目标节点,得到第二判定结果,其中,目标节点用于与多个节点中的其他节点建立联系;服务启动模块,服务启动模块用于响应于第二判定结果表示当前节点为目标节点,启动当前节点的节点服务,其中,节点服务用于控制当前节点处于运行状态;获取模块,获取模块用于响应于多个节点均处于运行状态,获取多个节点的地址信息;搭建模块,搭建模块用于基于多个节点的地址信息搭建分布式集群

[0014]可选地,第二确定模块还用于获取当前节点的节点编号,其中,不同节点对应不同编号;响应于节点编号为目标编号,确定当前节点为目标节点;响应于节点编号不为目标编号,确定当前节点不为目标节点

[0015]可选地,服务启动模块还用于启动当前节点的节点服务,并等待多个节点中的其他节点启动节点服务;基于判断指令确定多个节点是否符合启动要求,其中,启动要求用于表示节点正常启动且正常提供服务

[0016]可选地,获取模块还用于基于查询指令和域名从数据库中获取多个节点的地址信息,其中,不同节点对应不同域名

[0017]可选地,还包括:异常检测模块,用于对多个节点进行异常检测,得到异常检测结果;响应于异常检测结果表示任意节点处于异常状态,退出集群建立流程,并根据探针信息和重启策略判断是否重启集群建立流程

[0018]可选地,还包括:地址更新模块,用于响应于第一判定结果为存在节点信息文件,通过查询指令和域名从数据库中获取多个节点当前的地址信息;基于多个节点当前的地址信息对节点信息文件进行更新,得到更新后的节点信息文件

[0019]可选地,还包括:服务启动子模块,用于响应于第二判定结果表示当前节点不为目标节点,启动当前节点的节点服务,并加入分布式集群,其中,分布式集群为由目标节点建立的集群

[0020]根据本申请其中一实施例,还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,其中,计算机程序被设置为在计算机或处理器上运行时,执行上述任一项中的集群建立方法

[0021]根据本申请其中一实施例,还提供了一种电子装置,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行上述任一项中的集群建立方


[0022]在本申请实施例中,通过基于目标容器编排平台启动多个容器,其中,多个容器对应多个节点;在多个容器启动后,确定是否存在节点信息文件,得到第一判定结果,其中,节点信息文件用于存储多个节点的地址信息;响应于第一判定结果为不存本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种集群建立方法,其特征在于,包括:基于目标容器编排平台启动多个容器,其中,所述多个容器对应多个节点;在所述多个容器启动后,确定是否存在节点信息文件,得到第一判定结果,其中,所述节点信息文件用于存储所述多个节点的地址信息;响应于所述第一判定结果为不存在所述节点信息文件,确定当前节点是否为目标节点,得到第二判定结果,其中,所述目标节点用于与所述多个节点中的其他节点建立联系;响应于所述第二判定结果表示所述当前节点为所述目标节点,启动所述当前节点的节点服务,其中,所述节点服务用于控制所述当前节点处于运行状态;响应于所述多个节点均处于运行状态,获取所述多个节点的地址信息;基于所述多个节点的地址信息搭建分布式集群
。2.
根据权利要求1所述的方法,其特征在于,所述确定当前节点是否为目标节点包括:获取所述当前节点的节点编号,其中,不同节点对应不同编号;响应于所述节点编号为目标编号,确定所述当前节点为所述目标节点;响应于所述节点编号不为目标编号,确定所述当前节点不为所述目标节点
。3.
根据权利要求1所述的方法,其特征在于,所述启动所述当前节点的节点服务包括:启动所述当前节点的节点服务,并等待所述多个节点中的其他节点启动节点服务;基于判断指令确定所述多个节点是否符合启动要求,其中,所述启动要求用于表示节点正常启动且正常提供服务
。4.
根据权利要求1所述的方法,其特征在于,所述获取所述多个节点的地址信息包括:基于查询指令和域名从数据库中获取所述多个节点的地址信息,其中,不同节点对应不同域名
。5.
根据权利要求1‑4中任一项所述的方法,其特征在于,还包括:对所述多个节点进行异常检测,得到异常检测结果;响应于所述异常检测结果表示任意节点处于异常状态,退出集群建立流程,并根据探针信息和重启策略判断是否重启集群建立流程
。6.
根据权利要求1所述的方法,其特征在于,还包...

【专利技术属性】
技术研发人员:魏俊峰陈前锋汤璐璐许婕
申请(专利权)人:中电信智能网络科技有限公司
类型:发明
国别省市:

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

1