容器清理服务的检测方法、装置、设备及存储介质与流程

未命名 10-09 阅读:144 评论:0


1.本技术涉及计算机技术领域,尤其涉及一种容器清理服务的检测方法、装置、设备及存储介质。


背景技术:

2.云平台对于科技的发展重要性毋庸置疑,docs(data center operating system,数据中心操作系统)致力于打造私有云基础物理设施的管理引擎,提供的服务包括服务器和网络设备监管控、配置管理和告警管理。docs计算结点上的dockergc是一种用于清除长时间未使用的容器的工具,用以释放存储空间,避免资源浪费。
3.在现有技术中,检测docker服务状态信息的方法主要通过抓取log,然后进行有目的性的筛选得到服务状态。
4.然而,现有检测docker服务状态信息的方法存在检测效果不好的问题。


技术实现要素:

5.本技术提供一种容器清理服务的检测方法、装置、设备及存储介质,用以解决现有容器清理服务的检测方法存在的检测效果不好的问题。
6.第一方面,本技术提供一种容器清理服务的检测方法,方法包括:
7.确定容器清除任务的第一当前任务状态;
8.若容器清除任务的第一当前任务状态为运行状态,则确定容器清除任务的运行状态信息,其中,运行状态信息包括容器清除任务的运行起始时间、容器清除任务需要清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长;
9.根据容器清除任务清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值;
10.根据时长阈值、容器清除任务的运行起始时间、以及当前时间,检测容器清除任务的第一当前任务状态,得到容器清除任务的状态检测结果。
11.在本技术实施例中,确定容器清除任务的第一当前任务状态,包括:
12.获取容器清除任务的任务状态信息;
13.对任务状态信息进行解析,确定容器清除任务的第一当前任务状态。
14.在本技术实施例中,若容器清除任务的第一当前任务状态为运行状态,则确定容器清除任务的运行状态信息,包括:
15.若容器清除任务的第一当前任务状态为运行状态,则获取容器清除任务的运行状态信息;
16.根据运行状态信息,获取容器清除任务的运行起始时间、容器清除任务需要清理所有docker容器的总数量、以及容器清除任务清理历史docker容器的历史平均时间;
17.根据容器清除任务清理历史docker容器的历史平均时间,确定容器清除任务清理docker容器的单位时长;
18.根据容器清除任务的运行起始时间、容器清除任务当前需要清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,得到容器清除任务的运行状态信息。
19.在本技术实施例中,根据容器清除任务清理历史docker容器的历史平均时间,确定容器清除任务清理docker容器的单位时长,还包括:
20.根据容器清除任务需要清理所有docker容器的总数量,确定历史平均时间的调整比例;
21.根据历史平均时间的调整比例,以及容器清除任务清理历史docker容器的历史平均时间,确定容器清除任务清理docker容器的单位时长。
22.在本技术实施例中,在若容器清除任务的第一当前任务状态为运行状态,则确定容器清除任务的运行状态信息之后,根据容器清除任务清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值之前,方法还包括:
23.检测容器清除任务的第二当前任务状态;
24.若第二当前任务状态为结束状态,则得到容器清除任务的状态检测结果为正常状态检测结果;
25.若第二当前任务状态为运行状态,则执行根据容器清除任务清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值的步骤。
26.在本技术实施例中,根据时长阈值、容器清除任务的运行起始时间、以及当前时间,检测容器清除任务的第一当前任务状态,得到容器清除任务的状态检测结果,包括:
27.根据容器清除任务的运行起始时间、以及当前时间,确定容器清除任务的已执行时间;
28.若容器清除任务的已执行时间大于时长阈值,则得到容器清除任务的状态检测结果为异常状态检测结果;
29.若容器清除任务的已执行时间小于或等于时长阈值,则得到容器清除任务的状态检测结果为正常状态检测结果。
30.在本技术实施例中,在根据时长阈值、容器清除任务的运行起始时间、以及当前时间,检测容器清除任务的第一当前任务状态,得到容器清除任务的状态检测结果之后,方法还包括:
31.将容器清除任务的状态检测结果进行存储,并在预设的周期时间段后,重新执行确定容器清除任务的第一当前任务状态的步骤。
32.第二方面,本技术提供一种容器清理服务的检测装置,应用于检测,包括:
33.第一确定模块,用于确定容器清除任务的第一当前任务状态;
34.第二确定模块,用于若容器清除任务的第一当前任务状态为运行状态,则确定容器清除任务的运行状态信息,其中,运行状态信息包括容器清除任务的运行起始时间、容器清除任务需要清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长;
35.第三确定模块,用于根据容器清除任务清理所有docker容器的总数量、以及容器
清除任务清理docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值;
36.检测模块,用于根据时长阈值、容器清除任务的运行起始时间、以及当前时间,检测容器清除任务的第一当前任务状态,得到容器清除任务的状态检测结果。
37.第三方面,本技术提供一种电子设备,包括:处理器,以及与处理器通信连接的存储器;
38.存储器存储计算机执行指令;
39.处理器执行存储器存储的计算机执行指令,以实现本技术实施例中的方法。
40.第四方面,本技术提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现本技术实施例中的方法。
41.本技术实施例提供的容器清理服务的检测方法、装置、设备及存储介质,可以通过确定容器清除任务的第一当前任务状态;如果容器清除任务的第一当前任务状态为运行状态,则读取容器清除任务的运行状态信息,其中,运行状态信息包括容器清除任务的运行起始时间、容器清除任务需要清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长;通过获取到容器的数量、以及清理一个容器的单位时长,可以得到表征容器清除任务清理所有容器最大时长的时长阈值,然后通过获取容器清除任务的运行起始时间和当前时间,来将容器清除任务的已运行时间和时长阈值进行比对,从而可以准确地确定出该容器清除任务是否还处于在正常的运行时间内,并根据容器清除任务是否还处于在正常的运行时间内,来得到容器清除任务的是否正常运行的检测结果,由此,可以实现提高容器清理服务的检测方法的检测效果。
附图说明
42.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
43.图1为本技术实施例提供的容器清理服务的检测方法的流程的示意图;
44.图2为本技术实施例提供的另一种容器清理服务的检测方法的流程的示意图;
45.图3为本技术实施例提供的容器清理服务的检测装置的结构示意图;
46.图4为本技术实施例提供的电子设备的结构示意图。
47.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
48.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
49.现有技术中,当dcos计算节点上的dockergc状态异常会导致无法正常清理计算节点上的容器和镜像,导致该节点上的存储空间随时间的增长大量被占用,从而进一步影响
云平台任务的下发和该节点上的服务的正常运行。而dcokergc服务状态异常时没有提供异常检查接口,即使出现异常状态卡住时的服务状态仍然是显示运行状态,导致运维人员无法及时发现异常。
50.为了解决上述方法,本技术提出一种容器清理服务的检测方法、装置、设备及存储介质,通过获取容器清除任务的任务状态;如果容器清除任务的任务状态为运行状态,则读取容器清除任务的运行状态信息,其中,运行状态信息包括容器清除任务的运行起始时间、容器清除任务需要清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长;通过获取到容器的数量、以及清理一个容器的单位时长,可以得到表征容器清除任务清理所有容器最大时长的时长阈值,然后通过获取容器清除任务的运行起始时间和当前时间,来将容器清除任务的已运行时间和时长阈值进行比对,从而可以准确地确定出该容器清除任务是否还处于在正常的运行时间内,并根据容器清除任务是否还处于在正常的运行时间内,来得到容器清除任务的是否正常运行的检测结果,由此,可以实现提高容器清理服务的检测方法的检测效果。
51.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
52.本技术实施例提供一种容器清理服务的检测方法、装置、设备及存储介质,执行主体可以是服务器,其中服务器可以为手机、平板、电脑等设备,本实施例对执行主体的实现方式不做特别限制。只要执行主体能够获取容器清除任务的任务状态;如果容器清除任务的任务状态为运行状态,则读取容器清除任务的运行状态信息,其中,运行状态信息包括容器清除任务的运行起始时间、容器清除任务需要清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长;通过获取到容器的数量、以及清理一个容器的单位时长,可以得到表征容器清除任务清理所有容器最大时长的时长阈值,然后通过获取容器清除任务的运行起始时间和当前时间,来将容器清除任务的已运行时间和时长阈值进行比对,从而可以准确地确定出该容器清除任务是否还处于在正常的运行时间内,并根据容器清除任务是否还处于在正常的运行时间内,来得到容器清除任务的是否正常运行的检测结果,由此,可以实现提高容器清理服务的检测方法的检测效果。
53.其中,docker容器是一个开源的应用容器引擎,让开发者可以以统一的方式打包他们的应用以及依赖包到一个可移植的容器中,然后发布到安装了docker引擎的服务器上(包括流行的linux机器、windows机器),也可以实现虚拟化。容器使用沙箱机制,相互之间不会有任何接口。可以在机器和数据中心中运行。同时他们不依赖于语言、框架包括系统。
54.容器清除任务是指通过dockergc清除长期不用的docker容器,避免存储空间的浪费。
55.图1为本技术实施例提供的容器清理服务的检测方法流程示意图。如图1所示,该方法执行主体可以为服务器或其他服务器,本实施例此处不做特别限制,如图1所示,该方法包括:
56.s101、确定容器清除任务的第一当前任务状态。
57.其中,第一当前任务状态是容器清除任务在当前时刻的状态,容器清除任务的状态可以包括运行状态、停止状态、异常状态,其中,运行状态可以指容器清除任务正在运行,
停止状态可以指容器清除任务完成,异常状态可以指容器清除任务异常。
58.确定容器清除任务的第一当前任务状态的方法可以为通过读取容器清除任务的日志信息来确定容器清除任务的第一当前任务状态,比如,当日志信息中记录为running时,可以确定容器清除任务的第一当前任务状态为运行状态、当日志信息中记录为stop或者空白时,可以确定容器清除任务的第一当前任务状态为停止状态、当日志信息中记录为error时,可以确定容器清除任务的第一当前任务状态为异常状态。
59.其中,在本技术实施例中,确定容器清除任务的第一当前任务状态的方法可以包括:
60.获取容器清除任务的任务状态信息;
61.对任务状态信息进行解析,确定容器清除任务的第一当前任务状态。
62.其中,容器清除任务的任务状态信息包括第一当前任务状态、容器清除任务的运行起始时间信息和其他信息;
63.其中,对容器清除任务的任务状态信息进行遍历,当匹配到符合第一当前任务状态格式,即可获得容器清除任务的第一当前任务状态。
64.在本技术实施例中,容器清除任务的任务状态信息可以为“active:active(running)since wed 2022-08-17 14:57:42cst;6months 19days ago”,遍历该容器清除任务的任务状态信息,得到的“active:active(running)”为容器清除任务的第一当前任务状态的格式文本,“running”为容器清除任务的第一当前任务状态。
65.s102、若容器清除任务的第一当前任务状态为运行状态,则确定容器清除任务的运行状态信息,其中,运行状态信息包括容器清除任务的运行起始时间、容器清除任务需要清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长。
66.其中,容器清除任务的运行起始时间可以指第一当前任务状态下所执行任务的起始时间,该时间可以从执行容器清除任务的日志记录中获取。
67.容器清除任务需要清理所有docker容器的总数量可以指执行当前次任务所需要清理的总数量,该总数量可以从日志记录中获取。
68.清理docker容器的单位时长表示平均清除一个docker容器需要的时间,其中,该时间可以是用户预先设置的时间,也可以根据主机中历史记录的清除docker容器的历史数量和历史总时长确定,亦可以根据当前已经清楚docker容器的数量和已用时间确定。
69.在本技术实施例中,当识别到存在正在执行容器清除任务,通过获取容器清除任务的运行起始时间、容器清除任务需要清理所有docker容器的总数量、以及容器清除任务平均清除一个docker容器需要的时间,可以确定容器清除任务的运行状态信息。
70.其中,在本技术实施例中,若容器清除任务的第一当前任务状态为运行状态,则确定容器清除任务的运行状态信息的方法可以包括:
71.若容器清除任务的第一当前任务状态为运行状态,则获取容器清除任务的运行状态信息;
72.根据运行状态信息,获取容器清除任务的运行起始时间、容器清除任务需要清理所有docker容器的总数量、以及容器清除任务清理历史docker容器的历史平均时间;
73.根据容器清除任务清理历史docker容器的历史平均时间,确定容器清除任务清理docker容器的单位时长;
74.根据容器清除任务的运行起始时间、容器清除任务当前需要清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,得到容器清除任务的运行状态信息。
75.其中,容器清除任务的任务状态信息包括第一当前任务状态、容器清除任务的运行起始时间信息和其他信息。
76.其中,对容器清除任务的任务状态信息进行遍历,当匹配到符合第一当前任务状态格式,即可获得容器清除任务的第一当前任务状态。
77.在实施例中,容器清除任务的任务状态信息可以为“active:active(running)since wed 2022-08-17 14:57:42cst;6months 19days ago”,遍历该容器清除任务的任务状态信息,得到的“wed 2022-08-17 14:57:42cst”为容器清除任务的运行起始时间;容器清除任务需要清理所有docker容器的总数量、以及容器清除任务清理历史docker容器的历史平均时间可以从系统中直接获取;
78.其中,将容器清除任务清理历史docker容器的历史平均时间作为容器清除任务清理docker容器的单位时长时,需要容器清除任务清理历史docker容器数量需要和容器清除任务清理docker容器数量一致或者相近。
79.在本技术实施例中,若容器清除任务清理docker容器对应的容器数量为10,那么寻找容器清除任务清理历史docker容器对应的容器数量为10的记录,将该记录对应的容器清除任务清理历史docker容器的历史平均时间作为容器清除任务清理docker容器的单位时长。
80.其中,通过容器清除任务清理docker容器的起始时间和当前时间的得到容器清除任务清理docker容器的时间差,根据容器清除任务清理docker容器的单位时间和容器清除任务清理docker容器的容器个数得到最大阀值,通过比较时间差和最大阀值可以得到容器清除任务的运行状态信息。
81.其中,在本技术实施例中,根据容器清除任务清理历史docker容器的历史平均时间,确定容器清除任务清理docker容器的单位时长的方法可以包括:
82.根据容器清除任务需要清理所有docker容器的总数量,确定历史平均时间的调整比例;
83.根据历史平均时间的调整比例,以及容器清除任务清理历史docker容器的历史平均时间,确定容器清除任务清理docker容器的单位时长。
84.其中,容器清除任务清理历史docker容器任务中的容器数量越多,容器清除任务清理docker容器的单位时长越长;容器清除任务清理历史docker容器的容器数量在一定区间内,通过观察容器清除任务清理历史docker容器的历史平均时间,容器清除任务清理docker容器每增加一个容器,容器清除任务清理docker容器的平均时间增长一个倍数n。
85.s103、根据容器清除任务清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值。
86.其中,容器清除任务清理所有docker容器的时长阈值表示容器清除任务清理所有容器的理论时间,该理论时间可以为容器清除任务清理所有docker容器的最大时间。
87.在本技术实施例中,可以通过容器清除任务清理所有docker容器的总数量和容器清除任务平均清除一个docker容器需要的时间得到清理所有容器的时间。比如,当docker
容器的总数量为100、清理docker容器的单位时长为10s时,容器清除任务清理所有docker容器的时长阈值为100*10=1000s。
88.其中,在本技术实施例中,在若容器清除任务的第一当前任务状态为运行状态,则确定容器清除任务的运行状态信息之后,根据容器清除任务清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值之前的方法还可以包括:
89.检测容器清除任务的第二当前任务状态;
90.若第二当前任务状态为结束状态,则得到容器清除任务的状态检测结果为正常状态检测结果;
91.若第二当前任务状态为运行状态,则执行根据容器清除任务清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值的步骤。
92.其中,第二当前任务状态为结束状态表示容器清除任务完成,没有出现异常。
93.第二当前任务状态为运行状态表示容器清除任务未结束,需要重新获取容器清除任务清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值,进行容器清除任务的状态检测步骤。
94.s104、根据时长阈值、容器清除任务的运行起始时间、以及当前时间,检测容器清除任务的第一当前任务状态,得到容器清除任务的状态检测结果。
95.其中,当前时间为确定容器清除任务的第一当前任务状态的时间。
96.检测容器清除任务的第一当前任务状态可以指根据时长阈值对第一当前任务状态的已运行时间进行检测的过程。
97.容器清除任务的状态检测结果可以指容器清除任务是否正常的结果,其中,当容器清除任务正常时,则表征容器清除任务正常进行,当容器清除任务未正常,则表征容器清除任务异常,出现容器清除任务卡住的情况,需要运维人员进行维修。
98.其中,在本技术实施例中,根据时长阈值、容器清除任务的运行起始时间、以及当前时间,检测容器清除任务的第一当前任务状态,得到容器清除任务的状态检测结果的方法可以包括:
99.根据容器清除任务的运行起始时间、以及当前时间,确定容器清除任务的已执行时间;
100.若容器清除任务的已执行时间大于时长阈值,则得到容器清除任务的状态检测结果为异常状态检测结果;
101.若容器清除任务的已执行时间小于或等于时长阈值,则得到容器清除任务的状态检测结果为正常状态检测结果。
102.其中,将当前时间减去容器清除任务的运行起始时间即可得到容器清除任务的已执行时间。
103.在实施例中,若容器清除任务的已执行时间大于时长阈值,则表示容器清除任务卡住异常了,需要通知运维人员维修。
104.若容器清除任务的已执行时间小于时长阈值,则表示运行正常。
105.其中,在本技术实施例中,在根据时长阈值、容器清除任务的运行起始时间、以及
当前时间,检测容器清除任务的第一当前任务状态,得到容器清除任务的状态检测结果之后的方法还可以包括:
106.将容器清除任务的状态检测结果进行存储,并在预设的周期时间段后,重新执行确定容器清除任务的第一当前任务状态的步骤。
107.其中,预设的周期时间段可以为任意时间,包括10分钟,20分钟。
108.在该实施例中,定时执行容器清除任务的状态检测步骤。
109.图2为本技术实施例提供的另一种容器清理服务的检测方法流程示意图。如图2所示,该容器清理服务的检测方法包括:
110.s201、检查容器清除任务状态判断容器清除任务状态。
111.其中,容器清除任务状态可以为运行状态、停止状态和停止状态;
112.清除任务状态通过读取容器清除任务的日志信息得到。
113.在本技术实施例中,容器清除任务的日志信息为active:active(running)since wed 2022-08-17 14:57:42cst;6months 19days ago,其中running就是容器清除任务状态,表示运行状态。
114.s202、若容器清除任务状态为运行状态,那么获取容器清除任务的起始时间,容器清除任务需要清除所有的docker容器的总数量n以及平均清除一个docker的时间10s。
115.其中,容器清除任务起始时间通过读取容器清除任务的日志信息得到。
116.在本技术实施例中,容器清除任务的日志信息为active:active(running)since wed 2022-08-17 14:57:42cst;6months 19days ago,其中wed 2022-08-17 14:57:42cst;6months 19days ago就是容器清除任务起始时间。
117.关于平均清除一个docker容器的时间,可以将容器清除任务历史平均时间作为平均清除一个docker容器的时间,也可以按照容器清除任务历史平均时间,对平均清除一个docker容器的时间按比例进行设定,在本技术实施例中,每增加若干个需要清除的docker容器,那么平均清除一个docker容器的时间也可以按照若干倍增加。
118.s203、通过清除任务需要清除所有的docker容器的总数量n乘以平均清除一个docker容器的时间10s可以得到容器清除任务清除所有docker容器的时间阈值10*n。然后再次读取容器清除任务状态作为第二容器清除任务状态,如果第二容器清除任务状为停止状态,表示容器清除任务停止,没有出现异常,就停止本次检测,否则进入s204步骤。
119.其中,容器清除任务清除所有docker容器的时间阈值表示容器清除任务完成清除任务最大的理论时间。
120.s204、获取当前时间,通过当前时间减去容器清除时间得到容器清除任务实际执行时间,然后将容器清除任务实际执行时间和容器清除任务清除所有docker容器的时间阈值10*n比较,得到容器清除任务检测结果,并将检测结果保存本地,以便于其他服务调取。同时定时循环执行从s201开始的检测流程,对容器清除任务检测结果不断更新。
121.其中,若容器清除时间得到容器清除任务实际执行时间大于容器清除任务清除所有docker容器的时间阈值表示异常。
122.若容器清除时间得到容器清除任务实际执行时间小于等于容器清除任务清除所有docker容器的时间阈值表示正常。
123.本技术实施例提供另一种容器清理服务的检测方法,可以提高检测结果准确度。
124.图3为本技术实施例提供的容器清理服务的检测装置的结构示例图。如图3所示,该测试装置30包括:第一确认模块301、第二确认模块302、第三确认模块303、检测模块304。其中:
125.第一确定模块301,用于确定容器清除任务的第一当前任务状态;
126.第二确定模块302,用于若容器清除任务的第一当前任务状态为运行状态,确定容器清除任务的运行状态信息,其中,运行状态信息包括容器清除任务的运行起始时间、容器清除任务需要清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长;
127.第三确定模块303,用于根据容器清除任务清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值;
128.检测模块304,用于根据时长阈值、容器清除任务的运行起始时间、以及当前时间,检测容器清除任务的第一当前任务状态,得到容器清除任务的状态检测结果。
129.在本技术实施例中,第一确认模块301还具体用于:
130.获取容器清除任务的任务状态信息;
131.对任务状态信息进行解析,确定容器清除任务的第一当前任务状态。
132.在本技术实施例中,第二确认模块302还具体用于:
133.根据运行状态信息,获取容器清除任务的运行起始时间、容器清除任务需要清理所有docker容器的总数量、以及容器清除任务清理历史docker容器的历史平均时间;
134.根据容器清除任务清理历史docker容器的历史平均时间,确定容器清除任务清理docker容器的单位时长;
135.根据容器清除任务的运行起始时间、容器清除任务当前需要清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,得到容器清除任务的运行状态信息。
136.在本技术实施例中,第二确认模块302还具体用于:
137.根据容器清除任务需要清理所有docker容器的总数量,确定历史平均时间的调整比例;
138.根据历史平均时间的调整比例,以及容器清除任务清理历史docker容器的历史平均时间,确定容器清除任务清理docker容器的单位时长。
139.在本技术实施例中,第二确认模块302还具体用于:
140.检测容器清除任务的第二当前任务状态;
141.若第二当前任务状态为结束状态,则得到容器清除任务的状态检测结果为正常状态检测结果;
142.若第二当前任务状态为运行状态,则执行根据容器清除任务清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值的步骤。
143.在本技术实施例中,第三确认模块303还具体用于:
144.在若容器清除任务的第一当前任务状态为运行状态,则确定容器清除任务的运行状态信息之后,根据容器清除任务清理所有docker容器的总数量、以及容器清除任务清理
docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值之前,还包括:
145.检测容器清除任务的第二当前任务状态;
146.若第二当前任务状态为结束状态,则得到容器清除任务的状态检测结果为正常状态检测结果;
147.若第二当前任务状态为运行状态,则执行根据容器清除任务清理所有docker容器的总数量、以及容器清除任务清理docker容器的单位时长,确定容器清除任务清理所有docker容器的时长阈值的步骤。
148.在本技术实施例中,检测模块304还具体用于:
149.根据时长阈值、容器清除任务的运行起始时间、以及当前时间,检测容器清除任务的第一当前任务状态,得到容器清除任务的状态检测结果,包括:
150.根据容器清除任务的运行起始时间、以及当前时间,确定容器清除任务的已执行时间;
151.若容器清除任务的已执行时间大于时长阈值,则得到容器清除任务的状态检测结果为异常状态检测结果;
152.若容器清除任务的已执行时间小于或等于时长阈值,则得到容器清除任务的状态检测结果为正常状态检测结果。
153.在本技术实施例中,检测模块304还具体用于:
154.将容器清除任务的状态检测结果进行存储,并在预设的周期时间段后,重新执行确定容器清除任务的第一当前任务状态的步骤。
155.图4为本技术实施例提供的电子设备的结构示意图。如图4所示,该电子设备40包括:
156.该电子设备40可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、通信部件403等部件。其中,处理器401、存储器402以及通信部件403通过总线404连接。
157.在具体实现过程中,至少一个处理器401执行存储器402存储的计算机执行指令,使得至少一个处理器401执行如上的容器清理服务的检测方法。
158.处理器401的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
159.在上述的图4所示的实施例中,应理解,处理器可以是中央处理单元(英文:central processing unit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digital signal processor,简称:dsp)、专用集成电路(英文:application specific integrated circuit,简称:asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
160.存储器可能包含高速存储器(random access memory,ram),也可能还包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。
161.总线可以是工业标准体系结构(industry standard architecture,isa)总线、外部设备互连(peripheral component,pci)总线或扩展工业标准体系结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制
总线等。为便于表示,本技术附图中的总线并不限定仅有一根总线或一种类型的总线。
162.在一些实施例中,还提出一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现上述任一种容器清理服务的检测方法中的步骤。
163.以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
164.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求书指出。
165.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求书来限制。

技术特征:
1.一种容器清理服务的检测方法,其特征在于,方法包括:确定容器清除任务的第一当前任务状态;若所述容器清除任务的第一当前任务状态为运行状态,则确定所述容器清除任务的运行状态信息,其中,所述运行状态信息包括所述容器清除任务的运行起始时间、所述容器清除任务需要清理所有docker容器的总数量、以及所述容器清除任务清理所述docker容器的单位时长;根据所述容器清除任务清理所有docker容器的总数量、以及所述容器清除任务清理所述docker容器的单位时长,确定所述容器清除任务清理所有所述docker容器的时长阈值;根据所述时长阈值、所述容器清除任务的运行起始时间、以及当前时间,检测所述容器清除任务的第一当前任务状态,得到所述容器清除任务的状态检测结果。2.根据权利要求1所述的方法,其特征在于,所述确定容器清除任务的第一当前任务状态,包括:获取所述容器清除任务的任务状态信息;对所述任务状态信息进行解析,确定所述容器清除任务的第一当前任务状态。3.根据权利要求1所述的方法,其特征在于,所述若所述容器清除任务的第一当前任务状态为运行状态,则确定所述容器清除任务的运行状态信息,包括:若所述容器清除任务的第一当前任务状态为运行状态,则获取所述容器清除任务的运行状态信息;根据所述运行状态信息,获取所述容器清除任务的运行起始时间、所述容器清除任务需要清理所有docker容器的总数量、以及所述容器清除任务清理历史docker容器的历史平均时间;根据所述容器清除任务清理历史docker容器的历史平均时间,确定所述容器清除任务清理所述docker容器的单位时长;根据所述容器清除任务的运行起始时间、所述容器清除任务当前需要清理所有docker容器的总数量、以及所述容器清除任务清理所述docker容器的单位时长,得到所述容器清除任务的运行状态信息。4.根据权利要求3所述的方法,其特征在于,所述根据所述容器清除任务清理历史docker容器的历史平均时间,确定所述容器清除任务清理所述docker容器的单位时长,包括:根据所述容器清除任务需要清理所有docker容器的总数量,确定所述历史平均时间的调整比例;根据所述历史平均时间的调整比例,以及所述容器清除任务清理历史docker容器的历史平均时间,确定所述容器清除任务清理所述docker容器的单位时长。5.根据权利要求1所述的方法,其特征在于,在所述若所述容器清除任务的第一当前任务状态为运行状态,则确定所述容器清除任务的运行状态信息之后,所述根据所述容器清除任务清理所有docker容器的总数量、以及所述容器清除任务清理所述docker容器的单位时长,确定所述容器清除任务清理所有所述docker容器的时长阈值之前,所述方法还包括:检测所述容器清除任务的第二当前任务状态;
若所述第二当前任务状态为结束状态,则得到所述容器清除任务的状态检测结果为正常状态检测结果;若所述第二当前任务状态为运行状态,则执行所述根据所述容器清除任务清理所有docker容器的总数量、以及所述容器清除任务清理所述docker容器的单位时长,确定所述容器清除任务清理所有所述docker容器的时长阈值的步骤。6.根据权利要求1所述的方法,其特征在于,所述根据所述时长阈值、所述容器清除任务的运行起始时间、以及当前时间,检测所述容器清除任务的第一当前任务状态,得到所述容器清除任务的状态检测结果,包括:根据所述容器清除任务的运行起始时间、以及当前时间,确定所述容器清除任务的已执行时间;若所述容器清除任务的已执行时间大于所述时长阈值,则得到所述容器清除任务的状态检测结果为异常状态检测结果;若所述容器清除任务的已执行时间小于或等于所述时长阈值,则得到所述容器清除任务的状态检测结果为正常状态检测结果。7.根据权利要求1所述的方法,其特征在于,在根据所述时长阈值、所述容器清除任务的运行起始时间、以及当前时间,检测所述容器清除任务的第一当前任务状态,得到所述容器清除任务的状态检测结果之后,所述方法还包括:将所述容器清除任务的状态检测结果进行存储,并在预设的周期时间段后,重新执行所述确定容器清除任务的第一当前任务状态的步骤。8.一种容器清理服务的检测装置,其特征在于,所述装置包括:第一确定模块,用于确定容器清除任务的第一当前任务状态;第二确定模块,用于若所述容器清除任务的第一当前任务状态为运行状态,则确定所述容器清除任务的运行状态信息,其中,所述运行状态信息包括所述容器清除任务的运行起始时间、所述容器清除任务需要清理所有docker容器的总数量、以及所述容器清除任务清理所述docker容器的单位时长;第三确定模块,用于根据所述容器清除任务清理所有docker容器的总数量、以及所述容器清除任务清理所述docker容器的单位时长,确定所述容器清除任务清理所有所述docker容器的时长阈值;检测模块,用于根据所述时长阈值、所述容器清除任务的运行起始时间、以及当前时间,检测所述容器清除任务的第一当前任务状态,得到所述容器清除任务的状态检测结果。9.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至7中任一项所述的方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7任一项所述的方法。

技术总结
本申请提供一种容器清理服务的检测方法、装置、设备及存储介质。该方法包括:确定容器清除任务的第一当前任务状态,若容器清除任务的第一当前任务状态为运行状态,则确定容器清除任务的运行状态信息,根据容器清除任务清理所有Docker容器的总数量、以及容器清除任务清理Docker容器的单位时长,确定容器清除任务清理所有Docker容器的时长阈值,根据时长阈值、容器清除任务的运行起始时间、以及当前时间,检测容器清除任务的第一当前任务状态,得到容器清除任务的状态检测结果。本申请的方法,增加了容器清除任务检测的准确性,提高了检测准度。度。度。


技术研发人员:亓洪涛 杨潜 于晓倩
受保护的技术使用者:联通数字科技有限公司 联通云数据有限公司
技术研发日:2023.06.29
技术公布日:2023/10/7
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐