【技术实现步骤摘要】
一种集群系统部署方法、装置、设备以及可读存储介质
[0001]本申请涉及集群系统的
,尤其涉及一种集群系统部署的方法、装置、设备以及计算机可读存储介质。
技术介绍
[0002]远程字典服务(Remote Dictionary Server,Redis)是一中高性能的关键值(key
‑
value)存储系统,具有极高的读写性能,被广泛应用于缓存服务、分布式锁、计数器等。
[0003]传统物理机部署Redis集群,需要运维人员手动搭建,部署时间较长,也不利于后期维护,无法满足业务快速发展的需求。Kubernetes(本申请实施例简称K8s)云原生相较于传统IT,可以助力业务快速开发、稳定运维,大幅降低技术成本,节约硬件资源。K8s云原生是依托容器化、微服务等技术,构建可扩展的基础设施,持续交付用于生产系统的基础软件,在功能不变的前提下,提高了应用的可用性与稳定性。因此,受到各云服务商地青睐,并将其作为容器编排解决方案,实现Redis集群化部署。但是开源的解决方案无法兼容企业内部多分片Redis集群架构、权限管控方案等。
[0004]因此,如何在使用K8s系统实现Redis地集群化部署的同时,兼容企业内部多分片的Redis集群架构,是技术人员日益关注的问题。
技术实现思路
[0005]本申请实施例提供一种集群系统部署方法、装置、设备以及可读存储介质,该方法解决了在集群系统部署过程中,不能够兼容企业内部多分片的Redis架构的问题。
[0006]第一方面,本申请实 ...
【技术保护点】
【技术特征摘要】
1.一种集群系统部署方法,其特征在于,包括:接收远程字典Redis集群的部署信息,所述部署信息包括Redis进程的数量N2、哨兵Sentinel进程的数量N4以及路由Router进程的数量N6;向第二网络设备发送第一创建指令,所述第一创建指令包括所述部署信息,所述第一创建指令用于指示所述第二网络设备创建并启动N2个Redis进程和N4个Sentinel进程;在已创建好的Redis进程和Sentinel进程正常工作的情况下,配置所述Redis进程;配置后的Redis进程中包括所述Redis进程对应Redis分片中主Redis进程所在容器Pod的IP地址;配置所述Sentinel进程;配置后的Sentinel进程中包括各Redis分片中主Redis进程所在Pod的IP地址;向所述第二网络设备发送第二创建指令,所述第二创建指令包括所述部署信息,所述第二创建指令用于指示所述第二网络设备创建并启动N6个Router进程;在已创建好的Router进程、所述Redis进程和所述Sentinel进程正常工作的情况下,配置所述Router进程;配置后的Router进程中包括所述Sentinel进程所在Pod的IP地址。2.如权利要求1所述的方法,其特征在于,所述向第二网络设备发送第一创建指令之前,还包括:向所述第二网络设备发送第三创建指令,所述第三创建指令用于指示所述第二网络设备创建Redis应用对象、Sentinel应用对象以及Router应用对象;其中,所述Redis应用对象用于管理所述Redis进程的第一实例信息,所述Sentinel应用对象用于管理所述Sentinel进程的第二实例信息,所述Router应用对象用于管理所述Router进程的第三实例信息,所述第一实例信息包括每个Redis进程所在Pod的IP地址和分片标识信息,所述第二实例信息包括每个Sentinel进程所在Pod的IP地址和分片标识信息,所述第三实例信息包括每个Router进程所在Pod的IP地址和分片标识信息。3.如权利要求2所述的方法,其特征在于,所述配置所述Redis进程,包括:检测所述N2个Redis进程所在Pod的IP地址是否均在所述第一实例信息中存在;在均存在的情况下,检测每个Redis分片中主Redis进程的数量是否小于或等于1;若存在Redis分片中的主Redis进程的数量为0、其它Redis分片中的主Redis进程的数量为1,在所述Redis分片中将一个Redis进程设置为主Redis进程;将所述Redis分片中的其它Redis进程设置为从Redis进程。4.如权利要求3所述的方法,其特征在于,所述检测所述N2个Redis进程所在Pod的IP地址是否均在所述第一实例信息中存在之后,还包括:在每个Redis分片中的主Redis进程的数量均为1的情况下,检测每个分片中从Redis进程中的第一IP地址是否与所述Redis分片中主Redis进程所在Pod的IP地址是否一致;所述第一IP地址为所述从Redis进程中的主Redis进程所在Pod的IP地址;若不一致,将所述从Redis进程中的第一IP地址更新为所述从Redis进程所在分片中主Redis进程所在Pod的IP地址。5.如权利要求2所述的方法,其特征在于,所述配置所述Sentinel进程,包括:若在所述Sentinel进程中不存在第一Redis进程信息,在所述Sentinel进程中写入第二Redis进程信息;所述第一Redis进程信息和所述第二Redis进程信息中均包括所述Redis
进程所在Pod的IP地址和所述Redis进程所在分片的标识信息,所述第二Redis进程信息是基于通过所述Redis应用对象获取的第一实例信息得到的;若在所述Sentinel进程中存在第一Redis进程信息,检测所述第一Redis信息与所述第二Redis进程信息是否一致;若不一致,将所述第一Redis进程信息中与所述第二Redis进程信息不一致的部分进行修正。6.如权利要求3所述的方法,其特征在于,所述配置所述Sentinel进程,还包括:在所述Sentinel应用对象管理的第二实例信息处于屏蔽状态的情况下,访问所述Sentinel应用对象;将所述第二实例信息中的实例标识由第一屏蔽标识修改为第二屏蔽标识;其中,所述实例标识为所述第一屏蔽标识,表征所述第二实例信息处于屏蔽状态,所述实例标识为所述第二屏蔽标识,表征所述第二实例信息处于非屏蔽状态。7.如权利要求1所述的方法,其特征在于,所述配置所述Router进程,包括:在根据容器Pod状态数据确定所有进程的Pod均处于正常工作状态的情况下,检测所述Router进程中存储的各Redis分片中主Redis进程...
【专利技术属性】
技术研发人员:杨爽,南方剑,刘畅,胡东旭,骆维,陈存利,
申请(专利权)人:度小满科技北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。