本发明涉及计算机,特别涉及一种数据资源自动回收方法、装置、设备及存储介质。
背景技术:
1、在云平台创建虚拟机过程中,环境不稳定存储频繁掉线、服务不稳定、宿主机自身系统原因或网络原因导致宿主机与后端存储集群之间的通讯失败等因素,都会导致云主机创建失败,这种情况下脏数据会占用主机资源,由于没有及时的资源回收清理操作,使得脏数据一直占用着空间,从而导致主机资源不能够及时的被利用,造成了资源的浪费并且增加了分析时间。
技术实现思路
1、有鉴于此,本发明的目的在于提供一种数据资源自动回收方法、装置、设备和存储介质,能够提高主机资源的利用率,节约时间成本。其具体方案如下:
2、第一方面,本发明公开了一种数据资源自动回收方法,包括:
3、从数据存储分析区域中获取目标云主机对应的全部数据,并通过回收命令接收区域判断全部所述数据是否为满足预设回收条件的第一待回收数据;
4、若全部所述数据为满足所述预设回收条件的所述第一待回收数据,则判定所述目标云主机的创建结果为创建失败,并通过所述回收命令接收区域从监控区域获取与所述第一待回收数据存在预设关联关系的第二待回收数据;
5、通过所述回收命令接收区域将包含所述第一待回收数据以及所述第二待回收数据的数据回收命令发送至资源回收区域,并执行所述数据回收指令以回收所述第一待回收数据以及所述第二待回收数据。
6、可选的,所述从数据存储分析区域中获取目标云主机对应的全部数据之前,还包括:
7、基于预设云主机分配策略为每台主机分配对应的云主机,并通过云平台创建每台所述主机对应的所述云主机;
8、基于预设数据获取模板获取每台所述主机对应的模板数据,并将全部所述模板数据存储至所述数据存储分析区域;其中,所述模板数据包含满足所述云主机的规格时所需占用的主机cpu数据、硬盘空间、网络资源ip数据、浮动ip数据、内存数据以及所述云主机对应的镜像资源占用空间。
9、可选的,所述通过回收命令接收区域判断全部所述数据是否为满足预设回收条件的第一待回收数据,包括:
10、通过回收命令接收区域获取所述数据携带的请求指标标识信息以及分配标识信息;其中,所述请求指标标识信息为包含当前云主机的规格需求信息、镜像信息、数据调度策略的用于确定满足当前云主机需求的当前主机的标识信息;
11、基于所述分配标识信息判断目标主机中是否存在所述目标云主机对应的目标模板数据;
12、若所述分配标识信息为表征所述目标主机中存在所述目标云主机对应的所述目标模板数据,则获取所述目标云主机对应的当前状态信息;
13、判断所述当前状态信息是否为正常状态;
14、若所述当前状态信息为所述正常状态,则判定全部所述数据不为满足所述预设回收条件的所述第一待回收数据;
15、若所述当前状态信息不为所述正常状态,则确定所述当前状态信息为非正常状态;其中,所述非正常状态包含错误状态、忙碌状态、无效状态、未连接状态;
16、当所述当前状态信息为所述非正常状态时,将与所述云主机对应的全部所述数据确定为满足所述预设回收条件的所述第一待回收数据。
17、可选的,所述判断所述当前状态信息是否为正常状态之前,还包括:
18、判断在所述目标云主机的创建过程中是否存在网络或者所述目标主机的资源未达到创建需求,若所述网络或者所述目标主机的资源未达到所述创建需求,则设置所述非正常状态为所述错误状态;所述资源为主机cpu资源、内存资源、硬盘资源中的任意一种或几种的组合;
19、和/或,若在所述目标云主机创建完成后接收到表征所述云主机状态差的告警信息,并且所述目标主机中硬盘的占用率达到预设阈值时,设置所述非正常状态为所述错误状态。
20、可选的,所述通过所述回收命令接收区域从监控区域获取与所述第一待回收数据存在预设关联关系的第二待回收数据,包括:
21、通过所述回收命令接收区域将所述第一待回收数据发送至所述监控区域,以便通过所述监控区域查找与所述第一待回收数据存在所述预设关联关系的待回收主机对应的所述第二待回收数据;所述预设关联关系表征所述待回收主机对应的待回收云主机的创建结果与所述目标云主机的创建结果相同。
22、可选的,所述执行所述数据回收指令以回收所述第一待回收数据以及所述第二待回收数据之后,包括:
23、判断所述目标主机中是否存在剩余的所述第一待回收数据,若所述目标主机中存在剩余的所述第一待回收数据,则将剩余的所述第一待回收数据确定为第三待回收数据;
24、若所述目标主机中不存在剩余的所述第一待回收数据,则结束。
25、可选的,所述将剩余的所述第一待回收数据确定为第三待回收数据之后,还包括:
26、将所述第三回收数据发送至强制回收区域,以便执行预设数据强制回收操作。
27、第二方面,本发明公开了一种数据资源自动回收装置,包括:
28、数据获取模块,用于从数据存储分析区域中获取目标云主机对应的全部数据;
29、第一待回收数据获取模块,用于通过回收命令接收区域判断全部所述数据是否为满足预设回收条件的第一待回收数据;
30、第二待回收数据获取模块,用于若全部所述数据为满足所述预设回收条件的所述第一待回收数据,则判定所述目标云主机的创建结果为创建失败,并通过所述回收命令接收区域从监控区域获取与所述第一待回收数据存在预设关联关系的第二待回收数据;
31、数据回收模块,用于通过所述回收命令接收区域将包含所述第一待回收数据以及所述第二待回收数据的数据回收命令发送至资源回收区域,并执行所述数据回收指令以回收所述第一待回收数据以及所述第二待回收数据。
32、第三方面,本发明公开了一种电子设备,包括:
33、存储器,用于保存计算机程序;
34、处理器,用于执行所述计算机程序,以实现如前述公开的数据资源自动回收方法的步骤。
35、第四方面,本发明公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如前述公开的数据资源自动回收方法。
36、可见,本发明提供了一种数据资源自动回收方法,包括:从数据存储分析区域中获取目标云主机对应的全部数据,并通过回收命令接收区域判断全部所述数据是否为满足预设回收条件的第一待回收数据;若全部所述数据为满足所述预设回收条件的所述第一待回收数据,则判定所述目标云主机的创建结果为创建失败,并通过所述回收命令接收区域从监控区域获取与所述第一待回收数据存在预设关联关系的第二待回收数据;通过所述回收命令接收区域将包含所述第一待回收数据以及所述第二待回收数据的数据回收命令发送至资源回收区域,并执行所述数据回收指令以回收所述第一待回收数据以及所述第二待回收数据。由此可见,本发明通过回收命令接收区域判断当前主机中是否存在需要回收的数据,若存在则对不必要的数据进行自动回收,同时回收存在预设关联关系的其他不必要数据,通过回收脏数据及时释放主机资源,使得云平台主机资源得到充分利用,提高了主机资源的利用率,节约了时间成本。