本发明涉及通信,尤其涉及一种容器组的健康度监控方法、装置、电子设备和存储介质。
背景技术:
1、kubernetes(k8s)是用于管理云平台中多个主机上的容器化的应用,其目标是让部署容器化的应用简单并且高效。
2、随着k8s集群规模的不断扩张以及pod健康度监控的问题,监控程序本身的存储模式和采集方式已然不能完全满足大规模k8s集群的指标读写的并发需求。
3、现有的k8s平台的监控方法只能监控整个k8s的健康状况,对于整个k8s平台中的单个容器组pod的健康度的监控准确率低。
技术实现思路
1、本发明提供一种容器组的健康度监控方法、装置、电子设备和存储介质,用以解决现有的k8s平台的监控方法监控单个pod的健康度效率低的问题,通过采用多个存储节点存储pod的原始数据,能够满足大规模的原始数据的读写需求,同时,基于身份标签和监控配置信息可以计算不同k8s集群的pod的健康值,提高了在大规模k8s集群下,监控pod的健康度的准确性。
2、本发明提供一种容器组的健康度监控方法,包括:
3、采集容器组pod的原始数据,确定所述原始数据的身份标签;
4、基于所述身份标签,从多个存储节点中获取目标pod的原始数据;所述存储节点用于存储所述原始数据的主本和副本;
5、基于设定的监控配置信息和所述目标pod的原始数据,确定所述目标pod的健康值;
6、当所述健康值小于或等于设定阈值时,生成告警信息。
7、在一个实施例中,所述基于设定的监控配置信息和所述目标pod的原始数据,确定所述目标pod的健康值,包括:
8、基于所述目标pod的原始数据,确定所述目标pod的cpu利用率、内存使用率以及数据库连接率;
9、基于所述设定的监控配置信息,确定所述目标pod的cpu利用率权重、内存使用率权重以及数据库连接率权重;
10、基于所述目标pod的cpu利用率、内存使用率、数据库连接率、cpu利用率权重、内存使用率权重以及数据库连接率权重,确定所述目标pod的健康值。
11、在一个实施例中,所述确定所述原始数据的身份标签,包括:
12、采集所述pod的过滤规则文件;所述过滤规则文件携带pod的k8s集群名称、命名空间名称和容器组名称;
13、基于所述过滤规则文件,确定所述原始数据的身份标签。
14、在一个实施例中,所述基于所述身份标签,从多个存储节点中获取目标pod的原始数据之前,还包括:
15、设置所述原始数据的主本和副本;
16、将所述主本存储在不同存储节点,以及将所述副本存储在同一存储节点;
17、其中,一个所述存储节点包括多个分片,同一时间序列的所述主本或者所述副本存储在一个所述分片上。
18、在一个实施例中,所述当所述健康值小于或等于设定阈值时,生成告警信息之后,还包括:
19、将所述告警信息发送至客户端;
20、当所述健康值大于所述设定阈值时,向所述客户端发送告警清除信息。
21、在一个实施例中,所述基于所述身份标签,从多个存储节点中获取目标pod的原始数据,包括:
22、设置与所述存储节点相连的查询节点;所述查询节点用于查询所述pod的原始数据;
23、基于所述查询节点以及所述目标pod的身份标签,从所述存储节点中获取所述目标pod的原始数据。
24、在一个实施例中,所述确定所述原始数据的身份标签之后,还包括:
25、设置与所述存储节点相连的接收写入节点,所述接收写入节点用于接收并写入所述pod的原始数据;
26、将携带身份标签的原始数据进行封装压缩,得到压缩数据;
27、基于所述接收写入节点,将所述压缩数据写入所述存储节点。
28、本发明提供一种容器组的健康度监控装置,包括:
29、采集模块,用于采集pod的原始数据,确定所述原始数据的身份标签;
30、获取模块,用于基于所述身份标签,从多个存储节点中获取目标pod的原始数据;所述存储节点用于存储所述原始数据的主本和副本;
31、确定模块,用于基于设定的监控配置信息和所述目标pod的原始数据,确定所述目标pod的健康值;
32、告警模块,用于当所述健康值小于或等于设定阈值时,生成告警信息。
33、本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述容器组的健康度监控方法。
34、本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述容器组的健康度监控方法。
35、本发明提供的容器组的健康度监控方法、装置、电子设备和存储介质,通过采集容器组pod的原始数据,确定所述原始数据的身份标签;基于所述身份标签,从多个存储节点中获取目标pod的原始数据;所述存储节点用于存储所述原始数据的主本和副本;基于设定的监控配置信息和所述目标pod的原始数据,确定所述目标pod的健康值;当所述健康值小于或等于设定阈值时,生成告警信息。本发明通过采用多个存储节点存储pod的原始数据,能够满足大规模的原始数据的读写需求,同时,基于身份标签和监控配置信息可以计算不同k8s集群的pod的健康值,提高了在大规模k8s集群下,监控pod的健康度的准确性。
1.一种容器组的健康度监控方法,其特征在于,包括:
2.根据权利要求1所述的容器组的健康度监控方法,其特征在于,所述基于设定的监控配置信息和所述目标pod的原始数据,确定所述目标pod的健康值,包括:
3.根据权利要求1所述的容器组的健康度监控方法,其特征在于,所述确定所述原始数据的身份标签,包括:
4.根据权利要求1所述的容器组的健康度监控方法,其特征在于,所述基于所述身份标签,从多个存储节点中获取目标pod的原始数据之前,还包括:
5.根据权利要求1所述的容器组的健康度监控方法,其特征在于,所述当所述健康值小于或等于设定阈值时,生成告警信息之后,还包括:
6.根据权利要求1所述的容器组的健康度监控方法,其特征在于,所述基于所述身份标签,从多个存储节点中获取目标pod的原始数据,包括:
7.根据权利要求1所述的容器组的健康度监控方法,其特征在于,所述确定所述原始数据的身份标签之后,还包括:
8.一种容器组的健康度监控装置,其特征在于,包括:
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述容器组的健康度监控方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述容器组的健康度监控方法。