面向航天测运控信息系统的集装箱式软件包管理方法与流程

未命名 10-18 阅读:99 评论:0


1.本发明属于航天测运控信息系统技术领域,应用于系统中各类软件的管理过程中,具体为面向航天测运控信息系统的集装箱式软件包管理方法。


背景技术:

2.传统的航天测运控信息系统,整体规模较小;系统中硬件部分通常由一台或多台服务器组成,软件部分则采用客户端、服务端架构设计;对于软件在系统中的安装、部署和更新等,多采用人工手动的方式实现。
3.近年来,随着航天技术及业务能力的飞速发展,航天测运控信息系统的整体规模有了显著增长。为了满足系统的业务需求和业务能力,现有技术在系统的硬件部分上采用了基于云计算的硬件平台或大规模的服务器集群,在软件部分上采用了微服务框架或大型分布式架构的体系,具有数量众多的管理软件、中间软件和各类异构业务软件等。
4.然而,正因为软件的数量和种类有了极大提升,目前的航天测运控信息系统已显露出对软件管理工作的能力缺陷;由于各软件的信息不同,没有统一的方式方法和自动化智能化的手段加持,软件管理工作很大程度上仍由传统的人工手动方式实现;这导致系统中各类软件的部署、运行、管理、升级维护过程繁琐复杂,耗时耗力,给整体系统的可靠运行带来了极大的挑战,使系统难以面临日益增长的航天业务需求。
5.因此,如何设计能针对多类软件的统一管控方法,提升航天测运控信息系统的软件运维管控能力,保障系统核心业务功能的可靠运行并达到发展需求,便成为了本领域技术人员进行研究的核心要点。


技术实现要素:

6.本发明的目的是为了解决航天测运控信息系统中各类软件在部署、运行、管理和升级等方面的困境,以使系统适应日益增长的航天业务需求;本发明针对航天测运控信息系统中软件管理平台及各类软件的特点,通过集装箱式的管理理念,对软件包进行管理,具有管理过程统一、稳定、可靠的优点,能在智能化、信息化技术的帮助下着重解决各类软件的管控运维难题。
7.本发明采用了以下技术方案来实现目的:一种面向航天测运控信息系统的集装箱式软件包管理方法,所述方法包括如下步骤:s1、准备集装箱式软件包,完成集装箱式软件包的适配过程;s2、将适配完成后的集装箱式软件包上传至航天测运控信息系统的管控平台中;s3、管控平台对上传的集装箱式软件包进行统一管理和控制,依据集装箱式软件包中的核心动作,下发任务指令至驱动引擎;s4、驱动引擎接收任务指令,调取管控平台中的集装箱式软件包,校验合格后,执行任务指令,完成集装箱式软件包中对应的核心动作。
8.航天测运控信息系统中的各类软件包括系统软件、中间软件和业务软件,系统软件实现了对系统的运维管控,中间软件实现了对业务软件的支撑,业务软件实现了系统的具体业务功能。由于系统中的各类软件在部署、运行、维护上存在较大差异,因此,在本发明中通过集装箱式软件包对各类软件进行统一封装,供管控平台集中管理。
9.进一步的,步骤s1中,集装箱式软件包的准备及适配过程为:提取航天测运控信息系统中各类软件的原始信息,整合原始信息后,以统一封装形式进行打包,形成集装箱式软件包;集装箱式软件包由内核适配包和平台驱动包组成。
10.具体的,各类软件的原始信息包括管控特征、运维特征、运行环境和运行模式;运行环境用于描述软件在不同内核、不同操作系统中的适应性,由软件本体信息和依赖库组成;运行模式用于描述软件的核心动作,核心动作包括启动、停止、部署、卸载和状态监测。
11.进一步的,步骤s2中,集装箱式软件包的上传过程具体为:用户通过管控平台的镜像管理界面,选择需上传的集装箱式软件包,执行上传操作;在上传前,依据管控平台的命名规范,为集装箱式软件包命名;上传过程中,管控平台对集装箱式软件包进行规范性检查,将满足规范要求的集装箱式软件包,按照软件类型、操作系统及内核、软件名、版本号的格式,存储至管控平台中服务器的镜像仓库。
12.进一步的,步骤s3中,管控平台对集装箱式软件包的管控过程具体为:依据用户对软件的功能需求和镜像仓库中的集装箱式软件包,管控平台创建任务配置清单,任务配置清单包括镜像名称、镜像版本、运行端口、待动作硬件主机、自定义配置和核心动作类别;随后,依据任务配置清单的内容,管控平台实时创建任务指令,将任务指令与任务配置清单绑定后,再将任务指令下发至驱动引擎,并等待驱动引擎上报动作执行结果。
13.进一步的,步骤s4中,驱动引擎完成集装箱式软件包中核心动作的过程具体为:驱动引擎接收任务指令后,读取与任务指令绑定的任务配置清单,依据任务配置清单的内容,从镜像仓库中调取对应镜像名称、对应镜像版本的集装箱式软件包;接着,驱动引擎进行校验及前置条件检查操作,校验任务配置清单的合法性、集装箱式软件包的完整性、集装箱式软件包与待动作硬件主机操作系统及内核的适配性;对于校验后不满足前置条件检查的任务指令,驱动引擎将校验结果上报至管控平台;对于校验后满足前置条件检查的任务指令,驱动引擎依据任务配置清单中不同的核心动作类别,采用不同的驱动模式完成对应的核心动作。
14.综上所述,由于采用了本技术方案,本发明的有益效果如下:本发明通过统一有效的集装箱式管理方法,将航天测运控信息系统中,诸如管理软件、中间软件和异构业务软件等各类软件进行了统一管控,使得软件的运维过程不再采用传统的人工手动方式,因此极大的提升了系统对各类软件的运维管控能力,也就增强了系统的业务效率。
15.通过本发明方法,针对各类软件在部署、运行、管理和升级等方面的困境进行解决,保障了航天测运控信息系统的核心业务功能始终得到可靠运行,满足了系统的内在要求,适应了不断发展的航天业务。
附图说明
16.图1为本发明方法的整体执行过程的流程示意图;
图2为本发明中集装箱式软件包的组成及适配关系示意图。
具体实施方式
17.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以按各种不同的配置来布置和设计。
18.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
19.实施例1一种面向航天测运控信息系统的集装箱式软件包管理方法,该方法的流程示意可参看图1,以下为主要步骤:s1、准备集装箱式软件包,完成集装箱式软件包的适配过程;s2、将适配完成后的集装箱式软件包上传至航天测运控信息系统的管控平台中;s3、管控平台对上传的集装箱式软件包进行统一管理和控制,依据集装箱式软件包中的核心动作,下发任务指令至驱动引擎;s4、驱动引擎接收任务指令,调取管控平台中的集装箱式软件包,校验合格后,执行任务指令,完成集装箱式软件包中对应的核心动作。
20.本实施例将对该方法中各步骤的具体细节做详细说明。
21.在航天测运控信息系统中,主要包括三类软件,分别为:系统软件、中间软件和业务软件;系统软件实现了对系统的运维管控,中间软件实现了对业务软件的支撑,业务软件实现了系统的具体业务功能。由于系统中的各类软件在部署、运行、维护上存在较大差异,因此,在本实施例中通过集装箱式软件包对各类软件进行统一封装,供管控平台集中管理。
22.步骤s1中,集装箱式软件包的准备与适配过程,是指将某个软件转换为集装箱式软件包的过程;其主要解决两个问题,第一个问题是适配问题,集装箱式软件包需要支持在不同的硬件平台、不同的操作系统上部署运行;第二个问题是管控问题,集装箱式软件包需要能够被航天测运控信息系统的管控平台统一管理,从而便于部署运维。
23.因此,本实施例中,首先提取航天测运控信息系统中各类软件的原始信息,整合原始信息后,以统一封装形式进行打包,形成集装箱式软件包。各类软件的原始信息包括管控特征、运维特征、运行环境和运行模式;运行环境用于描述软件在不同内核、不同操作系统中的适应性,由软件本体信息和依赖库组成;运行模式用于描述软件的核心动作,核心动作包括启动、停止、部署、卸载和状态监测。
24.集装箱式软件包的具体组成及适配关系,可参看图2的示意;作为一种最优的设置方式,集装箱式软件包由内核适配包和平台驱动包组成;内核适配包由适配硬件内核平台的原生软件包与对应的依赖包组成,原生软件包和依赖包的类型均包括rpm包、deb包和源码形式;平台驱动包由任务执行脚本和标准接口脚本组成,通过任务执行脚本解析管控平台下发的任务指令,通过标准接口脚本完成对应软件的核心动作。
25.集装箱式软件包的准备与适配完成后,就可以进行上传过程;在步骤s2中,用户通过管控平台的镜像管理界面,选择需上传的集装箱式软件包,执行上传操作;在上传前,依据管控平台的命名规范,为集装箱式软件包命名;上传过程中,管控平台对集装箱式软件包进行规范性检查,将满足规范要求的集装箱式软件包,按照软件类型、操作系统及内核、软件名、版本号的格式,存储至管控平台中服务器的镜像仓库。
26.作为优选方式,当需要对镜像仓库中的集装箱式软件包进行操作时,用户通过管控平台的镜像管理界面,查看并选择对应的集装箱式软件包,执行编辑、更新或删除操作;管控平台对各类操作进行规范性检查,满足规范要求后执行相关操作;在统一的集装箱式软件包理念下,用户对于系统中所需软件的运维和升级过程,能通过管控平台清晰明了的查阅和编辑,而且能避开各硬件体系结构的复杂管理过程,使得软件管控效率提升。
27.可见,本实施例中航天测运控信息系统的管控平台,作为软件管理中心,除具有服务器级的镜像仓库外,还具有相应的镜像管理界面,负责为用户实时展示各类软件的信息状态,支持用户对各类软件进行远程操作,保障了系统核心业务功能的可靠效率。
28.以下内容具体介绍本实施例中管控平台对集装箱式软件包的具体管理和控制过程,即步骤s3;管控平台总体的管理架构为任务管理体系,通过任务的方式实现部署、卸载、启动和停止集装箱式软件包的过程,并支持实时监测集装箱式软件包的运行状态,最终满足各类软件的管控需求。
29.步骤s3中,依据用户对软件的功能需求和镜像仓库中的集装箱式软件包,管控平台创建任务配置清单,任务配置清单包括镜像名称、镜像版本、运行端口、待动作硬件主机、自定义配置和核心动作类别;随后,依据任务配置清单的内容,管控平台实时创建任务指令,将任务指令与任务配置清单绑定后,再将任务指令下发至驱动引擎,并等待驱动引擎上报动作执行结果。
30.下表1给出了任务配置清单的主要字段及定义样例,可作为最优的清单内容模板进行设置,实际的任务配置清单中内容字段及定义可按需调整。
31.表1 任务配置清单的主要字段及定义示例表紧接着,步骤s4中,驱动引擎接收任务指令后,读取与任务指令绑定的任务配置清单,依据任务配置清单的内容,从镜像仓库中调取对应镜像名称、对应镜像版本的集装箱式软件包;接着,驱动引擎进行校验及前置条件检查操作,校验任务配置清单的合法性、集装
箱式软件包的完整性、集装箱式软件包与待动作硬件主机操作系统及内核的适配性;对于校验后不满足前置条件检查的任务指令,驱动引擎将校验结果上报至管控平台,管控平台在收到校验不通过的结果后,会调整配置内容,创建一份新的任务配置清单,形成新的任务指令后再次下发,直至驱动引擎的校验通过。
32.对于校验后满足前置条件检查的任务指令,驱动引擎依据任务配置清单中不同的核心动作类别,采用不同的驱动模式完成对应的核心动作;对于启动和停止操作,驱动引擎采用同步调度模式,结果返回后同步上报至管控平台;对于部署和卸载操作,驱动引擎采用异步调度模式,结果返回后异步上报至管控平台;对于状态监测操作,驱动引擎通过定时方式,以特定的时间间隔,访问并监测对应软件的运行状态,并在每次访问监测后将当次结果上报至管控平台。
33.本实施例中,驱动引擎会依据核心动作类别,调用具体的驱动,完成对集装箱式软件包的操作;也就是说,在下发任务指令后,驱动引擎负责执行,而具体的驱动负责完成对应动作;本实施例采用的驱动类型包括java和脚本两种,驱动引擎将依据驱动类型,调用不同的驱动接口完成对应操作,操作结果上报至管控平台。
34.综上,本实施例的方法着重解决了航天测运控信息系统中运行的各类软件的管控运维问题,有效提升了航天测运控信息系统的可靠性和稳定性。
35.实施例2在实施例1的基础上,本实施例给出方法实现过程中的关键程序代码,以更好的说明本发明方法的运用情况,并提供方法实现的理论编程思路。
36.本实施例中,被管控的软件对象为mysql软件,需适配的硬件主机操作系统为麒麟v10,芯片为arm芯片;各个过程的具体实现如下:一、集装箱式软件包的打包。
37.依据本发明的方法原理,打包过程主要为系统适配和驱动开发两个部分;系统适配工作主要是:将软件本体信息和依赖库在指定的硬件主机平台及操作系统上适配,实现对mysql软件的正常操作;驱动开发工作主要是:实现管控平台用于下发过程的任务接口和集装箱式软件包的标准操作接口。
38.本实施例中,采用基于shell脚本的实现模式,对应于集装箱式软件包中描述软件的核心动作,具体的实现逻辑中关键程序代码作如下展示:(1)部署方法如下:function install() {judgemem 1024000checkdependgetshelloptions $paramsgetconfig "install"downloadpkg "mysql"createinstalldircheckprocesscheckportcleanmysql
setlinuxadduserinstallmysqlsetcurrshellconfig "${install_home}/${sh_home}"}(2)启动方法如下:function start() {if serviceisalive; thenloginfo "${servicename}已经启动!"returnfiif echo $(sysv) | grep kylinv4&》/dev/null; thenservice mysqld start&》/dev/null&elsesu
ꢀ‑ꢀ
mysql
ꢀ‑
c "service mysqld start"&》/dev/null&fiif [[ ${install_type} = "cluster" ]]; thensystemctl start keepalived.service&》/dev/null&loginfo " keepalived服务启动完成!"filocal step=5local res=1local bool=1for ((i = 0; i《40; i = (i + step))); doserviceisaliveres=$?if [ ${res} = 1 ]; thenloginfo "mysql服务启动中..."elif [ ${res} = 2 ]; thenloginfo "msyql服务启动中..."elseloginfo "msyql服务已正常启动!"bool=0printreturnfisleep $stepdoneif [ ${bool}
ꢀ‑
eq 1 ]; thenlocal pid=""
pid=$(ps
ꢀ‑
el | grep "\bmysqld\b" | grep
ꢀ‑
v grep | awk '{print $4}')[[ ${pid} != "" ]]&&kill
ꢀ‑
9 "${pid}"logerror "$(onemarkreplace "$example_start_failed" "${servicename}")"fi }(3)停止方法如下:function stop() {serviceisaliveif [ $?
ꢀ‑
eq 1 ]; thenloginfo "${servicename}已经停止!"returnfiif [[ ${install_type} = "cluster" ]]; thensystemctl stop keepalived.service&》/dev/null&loginfo " keepalived服务停止完成!"fiif echo $(sysv) | grep kylinv4&》/dev/null;thenservice mysqld stop&》/dev/null&elsesu
ꢀ‑ꢀ
mysql
ꢀ‑
c "service mysqld stop"&》/dev/null&filocal step=5for ((i = 0; i《40; i = (i + step))); doserviceisaliveif [ $? = 1 ]; thenloginfo "mysql服务已停止!"returnelseloginfo "msyql服务停止中..."fisleep $stepdonelocal mysqldsafepid=$(ps
ꢀ‑
el | grep "\bmysqld_safe\b" | awk '{print $4}')local mysqldpid=$(ps
ꢀ‑
el | grep "\bmysqld\b" | awk '{print $4}')[[ $mysqldsafepid != "" ]]&&kill
ꢀ‑
9 $mysqldsafepid[[ $mysqldpid != "" ]]&&kill
ꢀ‑
9 $mysqldpidloginfo "mysql服务已停止!" }(4)卸载方法如下:function uninstall() {
stopsed
ꢀ‑
i '/###mysql_path_env_s/,/###mysql_path_env_e/d' /etc/profilesed
ꢀ‑
i '/###mysql_config_s###/,/###mysql_config_e###/d' /etc/sysctl.conf /etc/security/limits.conf /etc/pam.d/login /etc/profile# shellcheck disable=sc1091source /etc/profilesysctl
ꢀ‑
p》/dev/null 2》&1if id mysql&》/dev/null; thenuserdel mysqlif [
ꢀ‑
e /home/mysql ]; then rm
ꢀ‑
rf /home/mysql; fifiif [
ꢀ‑
e "/opt/${servicename}" ]; thenrm
ꢀ‑
rf "/opt/${servicename}/"if [
ꢀ‑
e "/opt/${servicename}" ]; then rm
ꢀ‑
rf "/opt/${servicename}"; fifiif [[ ${install_type} = "cluster" ]]; thenrm
ꢀ‑
rf /etc/keepalivedrm
ꢀ‑
rf /etc/sysconfig/keepalivedrm
ꢀ‑
rf /lib/systemd/system/keepalived.servicesystemctl daemon-reloadfiif [
ꢀ‑
e /opt/${servicename} ]; then rm
ꢀ‑
rf /opt/${servicename}; firm
ꢀ‑
rf /etc/init.d/mysqldrm
ꢀ‑
rf /etc/my.cnfif [[
ꢀ‑
l /tmp/mysql.sock ]]; thenrm
ꢀ‑
rf /tmp/mysql.sockfiif [[ ${data_dir} != "" ]]&&[
ꢀ‑
e ${data_dir} ]; thenrm
ꢀ‑
rf ${data_dir}/*rm
ꢀ‑
rf ${data_dir}firm
ꢀ‑
rf "${taskbasedir}"/"${servicename}"*if [
ꢀ‑
e ${package_full_way}/mysql ]; then rm
ꢀ‑
rf ${package_full_way}/mysql; filoginfo "mysql卸载完成!" }(5)状态监测方法如下:function checkstatus() { serviceisalive }function serviceisalive() {
setlocalipgetshelloptions $paramsgetconfig ""if [[ ${servicename} = "" ]]; thenlogerror "$shell_params_not_null"fiinstall_home=/opt/${servicename}cd "${install_home}" || logerror "$(onemarkreplace "$dir_not_exist" "${install_home}")"local pid=""pid=$(ps
ꢀ‑
el | grep "\bmysqld\b" | grep
ꢀ‑
v grep | awk '{print $4}')if [
ꢀ‑
z "${pid}" ]; thenreturn 1elselocal mysqldport=""mysqldport=$(netstat
ꢀ‑
tlnp | grep "\b${pid}\b" | wc
ꢀ‑
l)if [[ "${mysqldport}" != "" ]]; thenreturn 0elsereturn 2fifi }以上关键程序代码即为集装箱式软件包在准备和适配的打包过程中,软件核心动作的程序实现展示,可参考实施。
[0039]
经过上述封装打包后,mysql软件的集装箱式软件包的目录结构如下:# 最终压缩的集装箱式软件包
‑‑ꢀ
mysql_8.0.24_kylinv10_arm.tgz## 原来的软件
‑‑‑‑
primary
‑‑‑‑‑‑ꢀ
mysql-8.0.24-linux-arm64.tar.gz## 依赖库
‑‑‑‑
lib
‑‑‑‑‑‑ꢀ
keepalived-2.2.0-bin.tar.gz
‑‑‑‑‑‑ꢀ
libaio-0.3.111-5.ky10.aarch64.rpm## 驱动
‑‑‑‑
driver
‑‑‑‑‑‑ꢀ
task.sh
‑‑‑‑‑‑ꢀ
execute.sh打包过程就此完成。
[0040]
二、集装箱式软件包的上传。
[0041]
集装箱式软件包打包完成后,用户在管控平台的镜像管理界面,点击上传按钮,进行上传操作;可选择软件类型,从而上传对应的集装箱式软件包。
[0042]
三、管控平台操作集装箱式软件包本实施例以核心动作中的部署为例,用户输入虚拟机、操作系统、版本等软件配置信息,下达对集装箱式软件包的部署操作。管控平台接收用户输入后,可先在自身数据库中创建一份任务表,如下表2所示。
[0043]
表2 部署操作任务表管控平台在任务表的设定时间执行此项任务,将表中信息组装为任务配置清单,创建任务指令后下发至驱动引擎。
[0044]
四、驱动引擎解析校验并执行。
[0045]
驱动引擎接收管控平台下发的任务指令,解析任务配置清单后,进行校验及执行过程。本实施例中对于mysql软件部署动作的任务配置清单如下:{ "pkg_name": "mysql_8.0.24_kylinv10_arm.tgz","pkg_url": "http://192.168.196.151:9206/file/download?id=2c36c3b989104ac3a8ade5f743b71207","port": "3306","platform_vm_type": "kylinv10_arm","root_password": "123456","serve_type": 1,"agentdbvo": {"action": 1,"instancenickname": "mysql单机","model": 0,"runstat": 1,"serviceid": "304e3a39d3ca4d3bb35594729b3024e9","servicename": "mysqlstandalone_global","shname": "mysqlctl.sh","taskid": mysqlstandalone_global_magic_1655897280564_magic_1"},"vm_info": "192.168.196.126_magic_root_magic_huawei01","data_dir": "","install_type": "standalone" }任务配置清单解析及校验完成后,驱动引擎采用异步调度模式,创建异步任务,执行部署操作,完成mysql软件在航天测运控信息系统中的部署。

技术特征:
1.一种面向航天测运控信息系统的集装箱式软件包管理方法,其特征在于:所述方法包括如下步骤:s1、准备集装箱式软件包,完成集装箱式软件包的适配过程;s2、将适配完成后的集装箱式软件包上传至航天测运控信息系统的管控平台中;s3、管控平台对上传的集装箱式软件包进行统一管理和控制,依据集装箱式软件包中的核心动作,下发任务指令至驱动引擎;s4、驱动引擎接收任务指令,调取管控平台中的集装箱式软件包,校验合格后,执行任务指令,完成集装箱式软件包中对应的核心动作。2.根据权利要求1所述的面向航天测运控信息系统的集装箱式软件包管理方法,其特征在于:步骤s1中,集装箱式软件包的准备及适配过程为:提取航天测运控信息系统中各类软件的原始信息,整合原始信息后,以统一封装形式进行打包,形成集装箱式软件包;集装箱式软件包由内核适配包和平台驱动包组成。3.根据权利要求2所述的面向航天测运控信息系统的集装箱式软件包管理方法,其特征在于:航天测运控信息系统中的各类软件包括系统软件、中间软件和业务软件,各类软件的原始信息包括管控特征、运维特征、运行环境和运行模式;运行环境用于描述软件在不同内核、不同操作系统中的适应性,由软件本体信息和依赖库组成;运行模式用于描述软件的核心动作,核心动作包括启动、停止、部署、卸载和状态监测。4.根据权利要求2所述的面向航天测运控信息系统的集装箱式软件包管理方法,其特征在于:内核适配包由适配硬件内核平台的原生软件包与对应的依赖包组成,原生软件包和依赖包的类型均包括rpm包、deb包和源码形式;平台驱动包由任务执行脚本和标准接口脚本组成,通过任务执行脚本解析管控平台下发的任务指令,通过标准接口脚本完成对应软件的核心动作。5.根据权利要求1所述的面向航天测运控信息系统的集装箱式软件包管理方法,其特征在于:步骤s2中,集装箱式软件包的上传过程具体为:用户通过管控平台的镜像管理界面,选择需上传的集装箱式软件包,执行上传操作;在上传前,依据管控平台的命名规范,为集装箱式软件包命名;上传过程中,管控平台对集装箱式软件包进行规范性检查,将满足规范要求的集装箱式软件包,按照软件类型、操作系统及内核、软件名、版本号的格式,存储至管控平台中服务器的镜像仓库。6.根据权利要求5所述的面向航天测运控信息系统的集装箱式软件包管理方法,其特征在于:当需要对镜像仓库中的集装箱式软件包进行操作时,用户通过管控平台的镜像管理界面,查看并选择对应的集装箱式软件包,执行编辑、更新或删除操作;管控平台对各类操作进行规范性检查,满足规范要求后执行相关操作。7.根据权利要求5所述的面向航天测运控信息系统的集装箱式软件包管理方法,其特征在于:步骤s3中,管控平台对集装箱式软件包的管控过程具体为:依据用户对软件的功能需求和镜像仓库中的集装箱式软件包,管控平台创建任务配置清单,任务配置清单包括镜像名称、镜像版本、运行端口、待动作硬件主机、自定义配置和核心动作类别;随后,依据任务配置清单的内容,管控平台实时创建任务指令,将任务指令与任务配置清单绑定后,再将任务指令下发至驱动引擎,并等待驱动引擎上报动作执行结果。8.根据权利要求7所述的面向航天测运控信息系统的集装箱式软件包管理方法,其特
征在于:步骤s4中,驱动引擎完成集装箱式软件包中核心动作的过程具体为:驱动引擎接收任务指令后,读取与任务指令绑定的任务配置清单,依据任务配置清单的内容,从镜像仓库中调取对应镜像名称、对应镜像版本的集装箱式软件包;接着,驱动引擎进行校验及前置条件检查操作,校验任务配置清单的合法性、集装箱式软件包的完整性、集装箱式软件包与待动作硬件主机操作系统及内核的适配性;对于校验后不满足前置条件检查的任务指令,驱动引擎将校验结果上报至管控平台。9.根据权利要求8所述的面向航天测运控信息系统的集装箱式软件包管理方法,其特征在于:对于校验后满足前置条件检查的任务指令,驱动引擎依据任务配置清单中不同的核心动作类别,采用不同的驱动模式完成对应的核心动作;对于启动和停止操作,驱动引擎采用同步调度模式,结果返回后同步上报至管控平台;对于部署和卸载操作,驱动引擎采用异步调度模式,结果返回后异步上报至管控平台;对于状态监测操作,驱动引擎通过定时方式,以特定的时间间隔,访问并监测对应软件的运行状态,并在每次访问监测后将当次结果上报至管控平台。10.根据权利要求9所述的面向航天测运控信息系统的集装箱式软件包管理方法,其特征在于:驱动引擎完成对应核心动作的过程中,依据核心动作类别,调用具体的驱动,驱动完成具体的动作后,实现对集装箱式软件包的具体操作;驱动类型包括java和脚本,驱动引擎依据驱动类型,调用不同的驱动接口完成对应操作。

技术总结
本发明提供面向航天测运控信息系统的集装箱式软件包管理方法,属于航天测运控信息系统技术领域,方法包括:S1、准备集装箱式软件包并完成适配过程;S2、将集装箱式软件包上传至航天测运控信息系统的管控平台中;S3、管控平台对上传的集装箱式软件包进行统一管理和控制,依据集装箱式软件包中的核心动作,下发任务指令至驱动引擎;S4、驱动引擎接收任务指令,调取管控平台中的集装箱式软件包,校验合格后,执行任务指令,完成集装箱式软件包中对应的核心动作;本发明针对航天测运控信息系统中各类软件特点,通过集装箱式理念管控,具有管理统一、稳定、可靠的优点,在信息技术的帮助下解决了各类软件的管控运维难题。解决了各类软件的管控运维难题。解决了各类软件的管控运维难题。


技术研发人员:马彬彬 陶孙杰 缪霖 丁恒 何玉
受保护的技术使用者:中国电子科技集团公司第十研究所
技术研发日:2023.09.06
技术公布日:2023/10/15
版权声明

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

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

分享:

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

相关推荐