【技术实现步骤摘要】
Kafka集群故障恢复方法、装置、设备及介质
本申请涉及计算机领域,特别是涉及一种基于Kubernetes平台LocalPV的Kafka集群故障恢复方法、装置、设备及介质。
技术介绍
Kafka是由Apache软件基金会开发的一个开源消息处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布/订阅消息系统,能够支撑海量数据的数据传递。Kafka将信息持久化到磁盘中,其优良的性能和数据稳定性,使Kafka得到了广泛的使用。Kubernetes平台是用于自动部署、扩展和管理容器化应用程序的开源系统。以Pod的形式运行在Kubernetes平台中的Kafka集群,其数据持久化在LocalPV中。LocalPV(LocalPersistentVolume)即本地存储卷,是Kubernetes平台的组件,其本质是使用节点的本地存储。相比于共享存储提升数据存储的性能,使用LocalPV意味着一旦节点或者磁盘发生异常,使用该LocalPV的KafkaPod也会异常。KafkaPod异常必然影响Kafka集群的可用性、集群的性能以及降低集群的可靠性,甚至会出现数据丢失的严重后果。因此,亟需一种基于Kubernetes平台针对localPV异常的自动恢复机制来解决上述问题。
技术实现思路
鉴于以上所述现有技术的缺点,本申请的目的在于提供一种Kafka集群故障恢复方法、装置、设备及介质,用于解决现有技术中Kubernetes平台内LocalPV异常导致Kafka集群问题。为实现上述目的及其 ...
【技术保护点】
1.一种Kafka集群故障恢复方法,其特征在于,所述方法包括以下步骤:/n根据预设的配置文件利用Kubernetes平台创建备份的本地存储卷;/n获取Kubernetes集群内所有Kafka Pod名称、所述Kafka Pod对应节点以及所述KafkaPod所使用的PVC;/n检测每个所述Kafka Pod所属节点和所述Kafka Pod关联的本地存储卷的状态生成状态异常的节点或/和状态异常的本地存储卷;/n解除状态异常的所述Kafka Pod所使用的PVC与关联的本地存储卷之间的绑定关系,并与备份的本地存储卷建立绑定关系;/n将状态异常的节点或/和状态异常的本地存储卷的数据同步到备份的本地存储卷用以恢复Kafka集群故障。/n
【技术特征摘要】
1.一种Kafka集群故障恢复方法,其特征在于,所述方法包括以下步骤:
根据预设的配置文件利用Kubernetes平台创建备份的本地存储卷;
获取Kubernetes集群内所有KafkaPod名称、所述KafkaPod对应节点以及所述KafkaPod所使用的PVC;
检测每个所述KafkaPod所属节点和所述KafkaPod关联的本地存储卷的状态生成状态异常的节点或/和状态异常的本地存储卷;
解除状态异常的所述KafkaPod所使用的PVC与关联的本地存储卷之间的绑定关系,并与备份的本地存储卷建立绑定关系;
将状态异常的节点或/和状态异常的本地存储卷的数据同步到备份的本地存储卷用以恢复Kafka集群故障。
2.根据权利要求1所述的Kafka集群故障恢复方法,其特征在于,所述解除状态异常的所述KafkaPod所使用的PVC与关联的本地存储卷之间的绑定关系,并与备份的本地存储卷建立绑定关系的步骤之前,还包括:
根据所述状态异常的节点或/和状态异常的本地存储卷核查备份的本地存储卷的空间与所属节点是否满足恢复的硬性需求。
3.根据权利要求2所述的Kafka集群故障恢复方法,其特征在于,所述根据所述状态异常的节点或/和状态异常的本地存储卷核查备份的本地存储卷的空间与所属节点是否满足恢复的硬件需求步骤,包括:
检查备份的本地存储卷的空间是否大于等于状态异常的节点上KafkaPod所使用的PVC声明空间;如果备份的本地存储卷的空间大于等于状态异常的节点上KafkaPod所使用的PVC声明空间,且该备份的本地存储卷所属节点与状态异常的节点不同,则将状态异常的节点上的KafkaPod与所述KafkaPod所使用的PVC标记为删除;否则,不标记。
4.根据权利要求2或3所述的Kafka集群故障恢复方法,其特征在于,所述根据所述状态异常的节点或/和状态异常的本地存储卷核查备份的本地存储卷的空间与所属节点是否满足恢复的硬件需求步骤,包括:
检查备份的本地存储卷的空间是否大于等于状态异常的本地存储卷对应PVC声明空间;
如果备份的本地存储卷的空间大于等于状态异常的本地存储卷对应PVC声明空间,且备份的本地存储卷与状态异常的本地存储卷属于同一节点,则将状态异常的本地存储卷与其关联的PVC标记为删除;否则,不标记;
如果备份的本地存储卷的空间大于等于状态异常的本地存储卷对应PVC声明空间,且备份的本地存储卷与状态异常的本地存储卷属于不同节点,则将状态异常的本地存储卷所属节点上KafkaPod和所述KafkaPod使用的PVC和状态异常的本地存储卷标记为删除;否则,不标记。
5.根据权利要求1所述的Kafka集群故障恢复方法,其特征在于,所述解...
【专利技术属性】
技术研发人员:王伟松,
申请(专利权)人:重庆紫光华山智安科技有限公司,
类型:发明
国别省市:重庆;50
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。