CN117234545B - 应用程序安装方法、装置、终端设备以及存储介质 - Google Patents

应用程序安装方法、装置、终端设备以及存储介质 Download PDF

Info

Publication number
CN117234545B
CN117234545B CN202311526157.3A CN202311526157A CN117234545B CN 117234545 B CN117234545 B CN 117234545B CN 202311526157 A CN202311526157 A CN 202311526157A CN 117234545 B CN117234545 B CN 117234545B
Authority
CN
China
Prior art keywords
package
cloud native
application
application program
installation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311526157.3A
Other languages
English (en)
Other versions
CN117234545A (zh
Inventor
周悦
董兴水
徐泽威
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Everything Safety Technology Co ltd
Original Assignee
Shenzhen Everything Safety Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Everything Safety Technology Co ltd filed Critical Shenzhen Everything Safety Technology Co ltd
Priority to CN202311526157.3A priority Critical patent/CN117234545B/zh
Publication of CN117234545A publication Critical patent/CN117234545A/zh
Application granted granted Critical
Publication of CN117234545B publication Critical patent/CN117234545B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明公开了一种应用程序安装方法、装置、终端设备以及存储介质,通过响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群;通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序,在离线断网的情况下,可以通过加载云原生离线应用包至边缘云原生集群,并解析得到装箱清单、程序包配置信息以及程序包镜像,进而完成云原生应用程序的安装,提供了一种云原生应用程序的离线安装方法,满足了断网场景下的云原生应用程序快速安装需求。

Description

应用程序安装方法、装置、终端设备以及存储介质
技术领域
本发明涉及互联网技术领域,尤其涉及一种应用程序安装方法、装置、终端设备以及存储介质。
背景技术
云原生应用程序是一种设计和构建方式,旨在充分利用云计算平台的弹性、可伸缩性和灵活性。这种应用程序设计方法的主要目标是使应用程序更容易部署、管理和维护,以满足现代云计算环境的需求。
目前的云原生应用程序安装方式常见于在线安装,难以满足断网场景下的云原生应用程序快速安装需求。
因此,有必要提供一种云原生应用程序的离线安装方法,以满足断网场景下的云原生应用程序快速安装需求。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种应用程序安装方法、装置、终端设备以及存储介质,旨在提供一种云原生应用程序的离线安装方法,以满足断网场景下的云原生应用程序快速安装需求。
为实现上述目的,本发明提供一种应用程序安装方法,所述应用程序安装方法包括:
响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群;
通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;
基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序。
可选地,所述加载预设的云原生离线应用包至边缘云原生集群的步骤之前还包括:
获取原始云原生应用程序;
通过持续集成系统对所述原始云原生应用程序进行编译和/或打包,输出所述云原生离线应用包。
可选地,所述对所述原始云原生应用程序进行编译和/或打包,输出所述云原生离线应用包的步骤包括:
将所述原始云原生应用程序中的至少一程序包配置信息存放至程序包配置信息目录;
将所述原始云原生应用程序中的程序包镜像存放至程序包镜像目录;
将所述原始云原生应用程序中的装箱清单存放至压缩包根目录;
根据所述程序包配置信息目录、程序包镜像目录以及压缩包根目录得到所述云原生离线应用包。
可选地,所述基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序的步骤包括:
识别所述安装请求对应的目标应用程序名称及目标版本号;
根据所述目标应用程序名称及目标版本号查询所述装箱清单,确定安装信息;
根据所述安装信息结合所述程序包配置信息及程序包镜像,安装所述云原生应用程序。
可选地,所述云原生应用程序包括中间件和/或微服务。
可选地,所述响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群的步骤包括:
响应于接收到云原生应用程序的安装请求,生成加载子命令;
通过所述加载子命令,加载所述云原生离线应用包至边缘云原生集群的内部仓库。
可选地,所述基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序的步骤之后还包括:
响应于接收到所述云原生应用程序对应的卸载子命令,卸载所述云原生应用程序。
此外,为实现上述目的,本发明还提供一种应用程序安装装置,所述应用程序安装装置包括:
加载模块,用于响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群;
解析模块,用于通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;
安装模块,用于基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序。
此外,为实现上述目的,本发明还提供一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的应用程序安装程序,所述应用程序安装程序被所述处理器执行时实现如上所述的应用程序安装方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有应用程序安装程序,所述应用程序安装程序被处理器执行时实现如上所述的应用程序安装方法的步骤。
本发明实施例提出的一种应用程序安装方法、装置、终端设备以及存储介质,通过响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群;通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序,提供了一种云原生应用程序的离线安装方法,满足了断网场景下的云原生应用程序快速安装需求。
附图说明
图1为本发明应用程序安装装置所属终端设备的功能模块示意图;
图2为本发明应用程序安装方法一示例性实施例的流程示意图;
图3为本发明实施例中的加载过程示意图;
图4为本发明实施例中的解析过程示意图;
图5为本发明实施例中的程序安装和/或卸载过程示意图;
图6为本发明应用程序安装方法另一示例性实施例的流程示意图;
图7为本发明实施例中的压缩包生成过程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:通过响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群;通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序,提供了一种云原生应用程序的离线安装方法,满足了断网场景下的云原生应用程序快速安装需求。
本发明实施例涉及的技术术语:
持续集成系统(简称CI系统)是一种自动化工具或平台,用于实施持续集成实践,这是一种软件开发流程,通过将代码的不断变更集成到共享代码库中,并自动运行构建、测试和部署流程,以确保软件质量和稳定性。CI系统的主要目标是减少开发团队在代码集成和测试上的工作,从而加速交付新功能和修复bug。
具体地,参照图1,图1为本发明应用程序安装装置所属终端设备的功能模块示意图。该应用程序安装装置可以为独立于终端设备的、能够进行应用程序安装的装置,其可以通过硬件或软件的形式承载于终端设备上。该终端设备可以为手机、平板电脑等具有数据处理功能的智能移动终端,还可以为具有数据处理功能的固定终端设备或服务器等。
在本实施例中,该应用程序安装装置所属终端设备至少包括输出模块110、处理器120、存储器130以及通信模块140。
存储器130中存储有操作系统以及应用程序安装程序,应用程序安装装置可以将接收到的云原生应用程序的安装请求、加载的云原生离线应用包、通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到的装箱清单、程序包配置信息以及程序包镜像等信息存储于该存储器130中;输出模块110可为显示屏等。通信模块140可以包括WIFI模块、移动通信模块以及蓝牙模块等,通过通信模块140与外部设备或服务器进行通信。
其中,存储器130中的应用程序安装程序被处理器执行时实现以下步骤:
响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群;
通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;
基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序。
进一步地,存储器130中的应用程序安装程序被处理器执行时还实现以下步骤:
获取原始云原生应用程序;
通过持续集成系统对所述原始云原生应用程序进行编译和/或打包,输出所述云原生离线应用包。
进一步地,存储器130中的应用程序安装程序被处理器执行时还实现以下步骤:
将所述原始云原生应用程序中的至少一程序包配置信息存放至程序包配置信息目录;
将所述原始云原生应用程序中的程序包镜像存放至程序包镜像目录;
将所述原始云原生应用程序中的装箱清单存放至压缩包根目录;
根据所述程序包配置信息目录、程序包镜像目录以及压缩包根目录得到所述云原生离线应用包。
进一步地,存储器130中的应用程序安装程序被处理器执行时还实现以下步骤:
识别所述安装请求对应的目标应用程序名称及目标版本号;
根据所述目标应用程序名称及目标版本号查询所述装箱清单,确定安装信息;
根据所述安装信息结合所述程序包配置信息及程序包镜像,安装所述云原生应用程序。
进一步地,存储器130中的应用程序安装程序被处理器执行时还实现以下步骤:
响应于接收到云原生应用程序的安装请求,生成加载子命令;
通过所述加载子命令,加载所述云原生离线应用包至边缘云原生集群的内部仓库。
进一步地,存储器130中的应用程序安装程序被处理器执行时还实现以下步骤:
响应于接收到所述云原生应用程序对应的卸载子命令,卸载所述云原生应用程序。
本实施例通过上述方案,具体通过响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群;通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序,提供了一种云原生应用程序的离线安装方法,满足了断网场景下的云原生应用程序快速安装需求。
基于上述终端设备架构但不限于上述架构,提出本发明方法实施例。
本实施例方法的执行主体可以为一种应用程序安装装置或终端设备等,本实施例以应用程序安装装置进行举例。
参照图2,图2为本发明应用程序安装方法一示例性实施例的流程示意图。所述应用程序安装方法包括:
步骤S10,响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群;
具体地,云原生应用程序是一种能够根据需求自动扩展和缩减,以应对流量波动的设计和构建方式,旨在充分利用云计算平台的弹性、可伸缩性和灵活性。这种应用程序设计方法的主要目标是使应用程序更容易部署、管理和维护,以满足现代云计算环境的需求。
可选地,所述云原生应用程序包括中间件和/或微服务。
可选地,在没有外网访问权限的边缘云原生集群中,存在安装中间件及微服务等应用程序的需求,因此,本发明实施例中提供了一种通用的、自描述的、自包含的云原生离线应用包的打包格式和规范,把离线环境安装应用程序所需的所有资源(装箱清单、Docker镜像、Helm包)全部封装到一个压缩包中,一个压缩包可以包含一个或多个应用程序,并且遵循特定的目录结构和格式规范,以此解耦了CI系统和云原生包管理程序。
参照图3,图3为本发明实施例中的加载过程示意图,如图3所示,云原生离线应用包管理程序是一个命令行程序,命名为k8s-package-manager,可以用于通过load子命令加载压缩包到k8s内部仓库,还可以用于通过install子命令一键安装应用程序,还可以用于通过delete子命令一键卸载应用程序。
可选地,所述响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群的步骤包括:
响应于接收到云原生应用程序的安装请求,生成加载子命令;
通过所述加载子命令,加载所述云原生离线应用包至边缘云原生集群的内部仓库。
可选地,如果接收到云原生应用程序的安装请求,即可加载预设的云原生离线应用包至边缘云原生集群,其中,云原生离线应用包是由CI(Conitnuous Intergration,持续集成)系统按规范打包得到的压缩包。
可选地,边缘云原生集群可以是k8s集群(又称Kubernetes集群),是一组运行Kubernetes容器编排平台的计算资源,用于管理和部署容器化应用程序。Kubernetes是一个开源工具,用于自动化容器化应用程序的部署、扩展、管理和运维。Kubernetes集群由多个计算节点组成,这些节点可以是物理服务器、虚拟机或云实例。
步骤S20,通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;
进一步地,加载CI系统按规范打包得到的云原生离线应用包至边缘云原生集群后,即可通过边缘云原生集群中的云原生包管理程序解析云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像。
参照图4,图4为本发明实施例中的解析过程示意图,如图4所示,对云原生离线应用包(即压缩包)进行解析后,可以得到Helm包、Docker 镜像以及装箱清单。
可选地,程序包配置信息可以是Helm包,Helm 是一个用于 Kubernetes 应用程序打包、部署和管理的包管理工具。Helm 使用一种称为 Helm Charts 的模板化方式来描述Kubernetes 应用程序的部署,并允许用户创建、共享和重用这些 Charts。这些 Charts 包含了 Kubernetes 对象定义、配置文件、模板以及与应用程序相关的其他资源。
可选地,程序包镜像可以是Docker 镜像(Docker Image),是用于创建 Docker 容器的轻量级可执行软件包。它包含了运行应用程序所需的内容,包括代码、运行时、系统工具、系统库以及预配置的环境变量。Docker 镜像的设计目标是可移植性和可复制性,这使得开发人员可以在不同的计算机上、不同的环境中以相同的方式运行应用程序。
步骤S30,基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序。
更进一步地,通过边缘云原生集群中的云原生包管理程序解析云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像后,即可基于装箱清单、程序包配置信息以及程序包镜像安装云原生应用程序。
可选地,所述基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序的步骤包括:
识别所述安装请求对应的目标应用程序名称及目标版本号;
根据所述目标应用程序名称及目标版本号查询所述装箱清单,确定安装信息;
根据所述安装信息结合所述程序包配置信息及程序包镜像,安装所述云原生应用程序。
可选地,在解析的云原生离线应用包中,可能包含一个或多个云原生应用程序,通过识别出的安装请求对应的目标应用程序名称及目标版本号,结合装箱清单中的应用程序名称及版本号,可以确定待安装的云原生应用程序对应的安装信息,进而选择不同的程序包配置信息及程序包镜像完成所述云原生应用程序的离线安装。
可选地,所述基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序的步骤之后还包括:
响应于接收到所述云原生应用程序对应的卸载子命令,卸载所述云原生应用程序。
类似地,基于装箱清单、程序包配置信息以及程序包镜像安装云原生应用程序之后,可以通过类似方式实现对云原生应用程序的一键卸载。
参照图5,图5为本发明实施例中的程序安装和/或卸载过程示意图,如图5所示,本发明实施例中通过load子命令加载压缩包到k8s内部仓库,通过install子命令一键安装应用程序,通过delete子命令一键卸载应用程序,命令示例如下:
load子命令:k8s-package-manager load uap-middlewares.tar.gz
install子命令:k8s-package-manager install uap-mysql-cli --version=1.1.0 --namespace=iottepa
delete子命令:k8s-package-manager delete uap-mysql-cli --namespace=iottepa
在本实施例中,通过响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群;通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序,提供了一种云原生应用程序的离线安装方法,满足了断网场景下的云原生应用程序快速安装需求。
参照图6,图6为本发明应用程序安装方法另一示例性实施例的流程示意图。基于上述图2所示的实施例,在本实施例中,在加载预设的云原生离线应用包至边缘云原生集群的步骤之前,所述应用程序安装方法还包括:
步骤S01,获取原始云原生应用程序;
步骤S02,通过持续集成系统对所述原始云原生应用程序进行编译和/或打包,输出所述云原生离线应用包。
具体地,参照图7,图7为本发明实施例中的压缩包生成过程示意图,如图7所示,通过CI系统可以对获取到的原始云原生应用程序进行编译和/或打包,生成自描述自包含的云原生离线应用包。
可选地,所述对所述原始云原生应用程序进行编译和/或打包,输出所述云原生离线应用包的步骤包括:
将所述原始云原生应用程序中的至少一程序包配置信息存放至程序包配置信息目录;
将所述原始云原生应用程序中的程序包镜像存放至程序包镜像目录;
将所述原始云原生应用程序中的装箱清单存放至压缩包根目录;
根据所述程序包配置信息目录、程序包镜像目录以及压缩包根目录得到所述云原生离线应用包。
具体地,CI系统打包输出为一个tar.gz压缩包,包括helm-charts和docker-images子目录,helm-charts目录存放了一个或多个Helm包,docker-images目录存放了Helm包所依赖的全部的Docker镜像,压缩包根目录有index.json装箱清单。
可选地,Helm包是标准的Helm包,由helm package命令编译打包而得。Docker镜像是标准的Docker镜像,由docker save -o命令导出而得。
index.json装箱清单是元数据,文件格式和文件内容举例如下:
{
"docker-images": [{
"path": "uap-kcat-1.7.1.tar",
"tag": "docker.iottepa.cn:32011/uap-kcat:1.7.1"
}, {
"path": "uap-package-updater-1.0.1.tar",
"tag": "docker.iottepa.cn:32011/uap-package-updater:1.0.1"
}, {
"path": "uap-mysql-cli-debian-stretch-slim.tar",
"tag": "docker.iottepa.cn:32011/uap-mysql-cli:debian-stretch-slim"
}],
"helm-charts": [{
"path": "uap-mysql-cli-1.1.0.tgz",
"name": "uap-mysql-cli",
"version": "1.1.0"
}, {
"path": "uap-package-updater-1.0.1.tgz",
"name": "uap-package-updater",
"version": "1.0.1"
}]
}
本实施例通过上述方案,具体通过获取原始云原生应用程序;通过持续集成系统对所述原始云原生应用程序进行编译和/或打包,输出所述云原生离线应用包,提供了一个通用的、自描述的、自包含的云原生离线应用包的打包格式和规范,把离线环境安装应用程序所需的所有资源(装箱清单、Docker镜像、Helm包)全部封装到一个压缩包中,一个压缩包可以包含一个或多个应用程序,并且遵循特定的目录结构和格式规范,以此解耦了CI系统和云原生包管理程序,进而用于实现云原生应用程序的一键安装和/或一键卸载。
此外,本发明实施例还提出一种应用程序安装装置,所述应用程序安装装置包括:
加载模块,用于响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群;
解析模块,用于通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;
安装模块,用于基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序。
本发明实施例中,在没有外网访问权限的边缘云原生集群中,提供了一个通用的、自描述的、自包含的云原生离线应用包的打包格式和规范,把离线环境安装应用程序所需的所有资源(装箱清单、Docker镜像、Helm包)全部封装到一个压缩包中,一个压缩包可以包含一个或多个应用程序,并且遵循特定的目录结构和格式规范,以此解耦了CI系统和云原生包管理程序。CI系统按规范打包为一个压缩包,压缩包被上传到没有外网访问权限的边缘云原生集群中,云原生包管理程序解析压缩包,提取装箱清单、Docker镜像、Helm包,根据装箱清单的应用程序名称、版本号实现一键安装、一键卸载。
本实施例实现应用程序安装的原理及实施过程,请参照上述各实施例,在此不再赘述。
此外,本发明实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的应用程序安装程序,所述应用程序安装程序被所述处理器执行时实现如上所述的应用程序安装方法的步骤。
由于本应用程序安装程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有应用程序安装程序,所述应用程序安装程序被处理器执行时实现如上所述的应用程序安装方法的步骤。
由于本应用程序安装程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
相比现有技术,本发明实施例提出的应用程序安装方法、装置、终端设备以及存储介质,通过响应于接收到云原生应用程序的安装请求,加载预设的云原生离线应用包至边缘云原生集群;通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;基于所述装箱清单、程序包配置信息以及程序包镜像安装所述云原生应用程序,提供了一种云原生应用程序的离线安装方法,满足了断网场景下的云原生应用程序快速安装需求。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本申请每个实施例的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种应用程序安装方法,其特征在于,所述应用程序安装方法包括以下步骤:
响应于接收到云原生应用程序的安装请求,通过加载子命令加载预设的云原生离线应用包至边缘云原生集群,其中,所述加载子命令包括k8s-package-manager load uap-middlewares.tar.gz;
通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;
基于所述装箱清单、程序包配置信息以及程序包镜像,通过安装子命令安装所述云原生应用程序,其中,所述云原生应用程序包括中间件,所述安装子命令包括k8s-package-manager install uap-mysql-cli --version=1.1.0 --namespace=iottepa;
所述基于所述装箱清单、程序包配置信息以及程序包镜像,通过安装子命令安装所述云原生应用程序的步骤之后还包括:
响应于接收到所述云原生应用程序对应的卸载子命令,根据所述装箱清单中的应用程序名称及版本号卸载所述云原生应用程序,其中,所述卸载子命令包括k8s-package-manager delete uap-mysql-cli --namespace=iottepa;
所述加载预设的云原生离线应用包至边缘云原生集群的步骤之前还包括:
获取原始云原生应用程序;
通过持续集成系统对所述原始云原生应用程序进行编译和/或打包,输出所述云原生离线应用包。
2.如权利要求1所述的应用程序安装方法,其特征在于,所述对所述原始云原生应用程序进行编译和/或打包,输出所述云原生离线应用包的步骤包括:
将所述原始云原生应用程序中的至少一程序包配置信息存放至程序包配置信息目录;
将所述原始云原生应用程序中的程序包镜像存放至程序包镜像目录;
将所述原始云原生应用程序中的装箱清单存放至压缩包根目录;
根据所述程序包配置信息目录、程序包镜像目录以及压缩包根目录得到所述云原生离线应用包。
3.如权利要求1所述的应用程序安装方法,其特征在于,所述基于所述装箱清单、程序包配置信息以及程序包镜像,通过安装子命令安装所述云原生应用程序的步骤包括:
识别所述安装请求对应的目标应用程序名称及目标版本号;
根据所述目标应用程序名称及目标版本号查询所述装箱清单,确定安装信息;
根据所述安装信息结合所述程序包配置信息及程序包镜像,安装所述云原生应用程序。
4.如权利要求1所述的应用程序安装方法,其特征在于,所述云原生应用程序还包括微服务。
5.如权利要求1所述的应用程序安装方法,其特征在于,所述响应于接收到云原生应用程序的安装请求,通过加载子命令加载预设的云原生离线应用包至边缘云原生集群的步骤包括:
响应于接收到云原生应用程序的安装请求,生成加载子命令;
通过所述加载子命令,加载所述云原生离线应用包至边缘云原生集群的内部仓库。
6.一种应用程序安装装置,其特征在于,所述应用程序安装装置包括:
加载模块,用于响应于接收到云原生应用程序的安装请求,通过加载子命令加载预设的云原生离线应用包至边缘云原生集群,其中,所述加载子命令包括k8s-package-managerload uap-middlewares.tar.gz;
解析模块,用于通过所述边缘云原生集群中的云原生包管理程序解析所述云原生离线应用包,得到装箱清单、程序包配置信息以及程序包镜像;
安装模块,用于基于所述装箱清单、程序包配置信息以及程序包镜像,通过安装子命令安装所述云原生应用程序,其中,所述云原生应用程序包括中间件,所述安装子命令包括k8s-package-manager install uap-mysql-cli --version=1.1.0 --namespace=iottepa,所述安装模块还用于响应于接收到所述云原生应用程序对应的卸载子命令,根据所述装箱清单中的应用程序名称及版本号卸载所述云原生应用程序,其中,所述卸载子命令包括k8s-package-manager delete uap-mysql-cli --namespace=iottepa;
所述加载模块还用于获取原始云原生应用程序;通过持续集成系统对所述原始云原生应用程序进行编译和/或打包,输出所述云原生离线应用包。
7.一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的应用程序安装程序,所述应用程序安装程序被所述处理器执行时实现如权利要求1-5中任一项所述的应用程序安装方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有应用程序安装程序,所述应用程序安装程序被处理器执行时实现如权利要求1-5中任一项所述的应用程序安装方法的步骤。
CN202311526157.3A 2023-11-16 2023-11-16 应用程序安装方法、装置、终端设备以及存储介质 Active CN117234545B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311526157.3A CN117234545B (zh) 2023-11-16 2023-11-16 应用程序安装方法、装置、终端设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311526157.3A CN117234545B (zh) 2023-11-16 2023-11-16 应用程序安装方法、装置、终端设备以及存储介质

Publications (2)

Publication Number Publication Date
CN117234545A CN117234545A (zh) 2023-12-15
CN117234545B true CN117234545B (zh) 2024-03-08

Family

ID=89086653

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311526157.3A Active CN117234545B (zh) 2023-11-16 2023-11-16 应用程序安装方法、装置、终端设备以及存储介质

Country Status (1)

Country Link
CN (1) CN117234545B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114237651A (zh) * 2021-12-24 2022-03-25 建信金融科技有限责任公司 云原生应用的安装方法、装置、电子设备和介质
CN114691153A (zh) * 2022-03-30 2022-07-01 奇安信科技集团股份有限公司 Kubernetes集群的部署方法及装置
CN114840226A (zh) * 2022-04-27 2022-08-02 杭州指令集智能科技有限公司 基于sa进行微服务升级版本的管理系统及方法
CN115421740A (zh) * 2022-09-15 2022-12-02 京东科技信息技术有限公司 云原生应用的部署方法和装置
CN115705210A (zh) * 2021-08-10 2023-02-17 中兴通讯股份有限公司 云平台管理架构及管理方法、管理设备、存储介质
CN116301951A (zh) * 2023-05-17 2023-06-23 北京长亭科技有限公司 一种基于kubernetes的微服务应用安装升级方法及装置
CN116483394A (zh) * 2023-04-26 2023-07-25 北京远舢智能科技有限公司 一种基于容器的Kubernetes离线安装方法及装置
CN116566811A (zh) * 2023-05-17 2023-08-08 统信软件技术有限公司 一种集群部署方法、计算设备及可读存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11381476B2 (en) * 2018-12-11 2022-07-05 Sap Se Standardized format for containerized applications
US11625256B2 (en) * 2020-06-22 2023-04-11 Hewlett Packard Enterprise Development Lp Container-as-a-service (CAAS) controller for selecting a bare-metal machine of a private cloud for a cluster of a managed container service

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115705210A (zh) * 2021-08-10 2023-02-17 中兴通讯股份有限公司 云平台管理架构及管理方法、管理设备、存储介质
CN114237651A (zh) * 2021-12-24 2022-03-25 建信金融科技有限责任公司 云原生应用的安装方法、装置、电子设备和介质
CN114691153A (zh) * 2022-03-30 2022-07-01 奇安信科技集团股份有限公司 Kubernetes集群的部署方法及装置
CN114840226A (zh) * 2022-04-27 2022-08-02 杭州指令集智能科技有限公司 基于sa进行微服务升级版本的管理系统及方法
CN115421740A (zh) * 2022-09-15 2022-12-02 京东科技信息技术有限公司 云原生应用的部署方法和装置
CN116483394A (zh) * 2023-04-26 2023-07-25 北京远舢智能科技有限公司 一种基于容器的Kubernetes离线安装方法及装置
CN116301951A (zh) * 2023-05-17 2023-06-23 北京长亭科技有限公司 一种基于kubernetes的微服务应用安装升级方法及装置
CN116566811A (zh) * 2023-05-17 2023-08-08 统信软件技术有限公司 一种集群部署方法、计算设备及可读存储介质

Also Published As

Publication number Publication date
CN117234545A (zh) 2023-12-15

Similar Documents

Publication Publication Date Title
US11599348B2 (en) Container image building using shared resources
CN108958796B (zh) 业务请求处理方法及装置、业务请求处理系统
US8738589B2 (en) Classloading technique for an application server that provides dependency enforcement
US8302093B2 (en) Automated deployment of defined topology in distributed computing environment
CN111198744A (zh) 自动化应用程序容器化和镜像备份发布的方法
US20080288962A1 (en) Method and System for Dynamic Remote injection of In-process Agents into Virtual Machine based Applications
CN111767092A (zh) 作业执行方法、装置、系统及计算机可读存储介质
US11226830B2 (en) System for building, managing, deploying and executing reusable analytical solution modules for industry applications
WO2021164367A1 (zh) 一种容器镜像的提供方法、加载方法及相关设备和系统
CN114077423A (zh) 基于移动跨平台的机场app开发容器架构
US11068243B2 (en) Application stack builder based on node features
US20200159536A1 (en) Unicontainers
CN110688174A (zh) 容器启动方法、存储介质和电子设备
US9009667B2 (en) Application server that supports multiple component models
US20230259358A1 (en) Documentation enforcement during compilation
CN112769706A (zh) 组件化路由方法及系统
CN113835713B (zh) 源码包下载方法、装置、计算机设备和存储介质
CN117112122A (zh) 一种集群部署方法和装置
CN117234545B (zh) 应用程序安装方法、装置、终端设备以及存储介质
CN113138768A (zh) 应用程序包生成方法、装置、电子设备以及可读存储介质
CN116301951A (zh) 一种基于kubernetes的微服务应用安装升级方法及装置
US20180341475A1 (en) Just In Time Deployment with Package Managers
CN115525396A (zh) 基于云原生的应用管理方法及装置
CN115113972A (zh) 应用改造方法、系统、集群、介质及程序产品
CN114911481A (zh) 代码编译方法、装置以及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant