本发明涉及云计算领域,特别涉及一种操作系统配置方法、装置、设备及存储介质。
背景技术:
1、操作系统配置主要包括对网络、磁盘、目录、文件等目标的修改,为后续部署其他应用程序做好基础配置。主要方式分为手动配置和自动化工具批量配置。手动配置局限性较大,只适用于少量操作系统配置,不适用于大规模环境配置。当前比较成熟且较为流行的方式是使用salt工具进行配置,但是salt操作完成后无法集中观察所配置资源状态,salt使用python语言编写,复杂操作的速度较慢。因此,如何快速方便地实现操作系统的配置是本领域有待解决的问题。
技术实现思路
1、有鉴于此,本发明的目的在于提供一种操作系统配置方法、装置、设备及存储介质,通过使用kubernetes集群将系统配置具体的操作与配置分离,将操作的复杂性封装在程序内部,配置文件是操作系统内的设备资源,易于修改,学习使用成本低。其具体方案如下:
2、第一方面,本申请提供了一种操作系统配置方法,包括:
3、获取待配置操作系统中的操作对象的实际参数信息,根据所述实际参数信息修改预设的配置模板,并基于所述配置模板在kubernetes集群中创建所述操作对象对应的自定义资源;
4、利用预设管理程序的服务器端基于所述kubernetes集群的kubernetes框架解析所述自定义资源,并根据解析得到的自定义资源类型和所述操作对象向所述服务器端对应的所述预设管理程序的客户端下发资源配置指令和操作参数;
5、利用所述客户端基于所述资源配置指令和所述操作参数执行对应的操作系统配置操作,并向所述服务器端返回对应的操作结果。
6、可选的,所述创建所述操作对象对应的自定义资源,包括:
7、确定所述待配置操作系统对应的配置操作,并基于所述kubernetes集群的预设规则将所述配置操作定义成自定义资源类型;
8、根据所述自定义资源类型和所述配置操作对应的所述操作对象创建所述自定义资源。
9、可选的,所述基于所述配置模板在kubernetes集群中创建所述操作对象对应的自定义资源之后,还包括:
10、将所述自定义资源导出为yaml格式文件,并将所述yaml格式文件保存为配置模板。
11、可选的,所述利用预设管理程序的服务器端基于所述kubernetes集群的kubernetes框架解析所述自定义资源之前,还包括:
12、将所述服务器端构建为docker镜像,并以deployment资源形式部署在所述kubernetes集群中以pod形式运行;
13、以及,将所述客户端以服务的形式安装在所述待配置操作系统中。
14、可选的,所述向所述服务器端返回对应的操作结果之后,还包括:
15、通过所述操作结果得到所述客户端返回的自定义资源信息,并利用所述服务器端根据所述自定义资源信息修改所述自定义资源的状态;
16、在所述状态为failed时通过所述服务器端根据所述自定义资源信息显示所述待配置操作系统的配置失败原因;所述自定义资源的初始状态为pending,完成状态为running,失败状态为failed。
17、可选的,所述利用所述服务器端根据所述自定义资源信息修改所述自定义资源的状态,包括:
18、通过所述服务器端采用轮询方式检查所述自定义资源的状态,并从所述自定义资源中筛选进行所述操作系统配置操作后没有达到预设目标状态的目标资源;
19、基于预设固定间隔时长向所述目标资源继续下发所述资源配置指令,并在所述目标资源达到所述预设目标状态后,将所述目标资源的pending状态或者failed状态修改为running状态。
20、可选的,所述向所述服务器端返回对应的操作结果之后,还包括:
21、通过所述服务器端接收所述客户端上报的目标信息修改所述待配置操作系统的操作系统状态;所述目标信息为所述客户端基于固定时间间隔上报的用于延续所述操作系统状态为在线状态的信息;
22、若所述服务器端接收到所述客户端上报的所述目标信息,则将所述操作系统状态修改为在线状态;
23、若所述服务器端维持所述操作系统状态的所述在线状态的时长达到预设老化时间后,仍未收到所述客户端上报的所述目标信息,则将所述操作系统状态修改为离线状态。
24、第二方面,本申请提供了一种操作系统配置装置,包括:
25、资源创建模块,用于获取待配置操作系统中的操作对象的实际参数信息,根据所述实际参数信息修改预设的配置模板,并基于所述配置模板在kubernetes集群中创建所述操作对象对应的自定义资源;
26、资源解析模块,用于利用预设管理程序的服务器端基于所述kubernetes集群的kubernetes框架解析所述自定义资源,并根据解析得到的自定义资源类型和所述操作对象向所述服务器端对应的所述预设管理程序的客户端下发资源配置指令和操作参数;
27、操作执行模块,用于利用所述客户端基于所述资源配置指令和所述操作参数执行对应的操作系统配置操作,并向所述服务器端返回对应的操作结果。
28、第三方面,本申请提供了一种电子设备,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现前述的操作系统配置方法。
29、第四方面,本申请提供了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的操作系统配置方法。
30、本申请中,首先获取待配置操作系统中的操作对象的实际参数信息,根据所述实际参数信息修改预设的配置模板,并基于所述配置模板在kubernetes集群中创建所述操作对象对应的自定义资源;然后利用预设管理程序的服务器端基于所述kubernetes集群的kubernetes框架解析所述自定义资源,并根据解析得到的自定义资源类型和所述操作对象向所述服务器端对应的所述预设管理程序的客户端下发资源配置指令和操作参数;接下来利用所述客户端基于所述资源配置指令和所述操作参数执行对应的操作系统配置操作,并向所述服务器端返回对应的操作结果。通过上述技术方案,本申请可以将具体的配置操作与配置资源分离,配置文件都是操作系统内的设备资源,含义清晰,易于配置。配置具体操作由预设的管理程序按照kubernetes自定义资源自行处理,将配置的复杂性留在开发阶段,封闭在程序内部,对使用人员更友好,学习使用成本更低。
1.一种操作系统配置方法,其特征在于,包括:
2.根据权利要求1所述的操作系统配置方法,其特征在于,所述创建所述操作对象对应的自定义资源,包括:
3.根据权利要求1所述的操作系统配置方法,其特征在于,所述基于所述配置模板在kubernetes集群中创建所述操作对象对应的自定义资源之后,还包括:
4.根据权利要求1所述的操作系统配置方法,其特征在于,所述利用预设管理程序的服务器端基于所述kubernetes集群的kubernetes框架解析所述自定义资源之前,还包括:
5.根据权利要求1所述的操作系统配置方法,其特征在于,所述向所述服务器端返回对应的操作结果之后,还包括:
6.根据权利要求5所述的操作系统配置方法,其特征在于,所述利用所述服务器端根据所述自定义资源信息修改所述自定义资源的状态,包括:
7.根据权利要求1至6任一项所述的操作系统配置方法,其特征在于,所述向所述服务器端返回对应的操作结果之后,还包括:
8.一种操作系统配置装置,其特征在于,包括:
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至7任一项所述的操作系统配置方法。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的操作系统配置方法。