云原生应用的部署方法和装置制造方法及图纸

技术编号:35830819 阅读:11 留言:0更新日期:2022-12-03 13:59
本发明专利技术公开了一种云原生应用的部署方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:根据云原生应用的应用部署所需资源和集群部署所需资源生成镜像构建指令文件;根据镜像构建指令文件构建镜像;将镜像保存为离线部署包,并根据离线部署包进行云原生应用的部署。该实施方式简化了离线部署包的制作过程,节省了离线部署包开发和更新所耗费的时间,提高了离线部署包的制作效率;基于离线部署包只需要执行应用容器引擎的执行命令,即可一键同时把Kubernetes集群和应用部署起来,简化了应用离线部署的操作,提高了应用离线部署的效率解决了离线部署包制作时安装包依赖等复杂问题。等复杂问题。等复杂问题。

【技术实现步骤摘要】
云原生应用的部署方法和装置


[0001]本专利技术涉及计算机
,尤其涉及一种云原生应用的部署方法和装置。

技术介绍

[0002]随着云原生Cloud Native的持续发展,云服务在互联网市场上占据了非常重要的地位,越来越多的开发人员和公司开始往云上部署应用,即云原生应用。但是这同时给应用交付带来了麻烦,在企业私有云环境当中,出于对数据安全的考虑以及满足网络安全等级的要求。一般会禁止生产环境访问外部网络,在这种无法访问公网的环境中部署Kubernetes集群及云原生应用时往往需要基于离线包的形式部署。
[0003]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0004]目前市面上的绝大多数部署工具对离线部署Kubernetes的支持并不友好,且不支持Kubernetes和应用的一键部署。同时,离线部署包制作繁琐,往往需要编写并维护大量复杂的脚本将应用离线部署包的各个部件组装到一起,且在应用因为需要修复漏洞或者添加新功能而导致变更时,变更离线部署包耗费时间。另外,在适配多架构场景时,离线部署包的制作需要解决安装包依赖等复杂问题。

技术实现思路

[0005]有鉴于此,本专利技术实施例提供一种云原生应用的部署方法和装置,能够简化离线部署包的制作过程,节省了离线部署包开发和更新所耗费的时间,提高了离线部署包的制作效率;基于离线部署包只需要执行应用容器引擎的执行命令,即可一键同时把Kubernetes集群和应用部署起来,简化了应用离线部署的操作,提高了应用离线部署的效率。而且,借助于基于buildx技术的多架构镜像构建命令来进行镜像构建,构建的这些离线资源原生支持多体系架构,解决了离线部署包制作时安装包依赖等复杂问题。
[0006]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种云原生应用的部署方法,包括:
[0007]根据云原生应用的应用部署所需资源和集群部署所需资源生成镜像构建指令文件;
[0008]根据所述镜像构建指令文件构建镜像;
[0009]将所述镜像保存为离线部署包,并根据所述离线部署包进行云原生应用的部署。
[0010]可选地,所述镜像构建指令文件包括:基础镜像的来源指令、复制指令、运行指令和命令行指令,所述基础镜像的来源指令用于指定构建离线部署包的基础镜像文件;所述复制指令用于将构建所述镜像的资源文件和执行命令文件复制到所述镜像中;所述运行指令用于将构建所述镜像所依赖的镜像的分层文件和应用创建必要信息加载到所述镜像的指定目录下;所述命令行指令用于记录应用部署和集群部署时所需要的执行命令。
[0011]可选地,根据所述镜像构建指令文件构建镜像,包括:通过执行应用容器引擎的构建命令,以根据所述镜像构建指令文件中的基础镜像的来源指令、复制指令和运行指令构
建镜像。
[0012]可选地,所述应用容器引擎的构建命令是基于buildx技术的多架构镜像构建命令。
[0013]可选地,将所述镜像保存为离线部署包,包括:通过执行应用容器引擎的保存命令将所述镜像保存为离线部署包。
[0014]可选地,根据所述离线部署包进行云原生应用的部署,包括:通过执行应用容器引擎的加载命令从所述离线部署包中载入所述镜像;通过执行应用容器引擎的执行命令,根据所述镜像启动集群并部署所述云原生应用。
[0015]根据本专利技术实施例的另一方面,提供了一种云原生应用的部署装置,包括:
[0016]指令文件生成模块,用于根据云原生应用的应用部署所需资源和集群部署所需资源生成镜像构建指令文件;
[0017]镜像构建模块,用于根据所述镜像构建指令文件构建镜像;
[0018]离线部署模块,用于将所述镜像保存为离线部署包,并根据所述离线部署包进行云原生应用的部署。
[0019]可选地,所述镜像构建指令文件包括:基础镜像的来源指令、复制指令、运行指令和命令行指令,所述基础镜像的来源指令用于指定构建离线部署包的基础镜像文件;所述复制指令用于将构建所述镜像的资源文件和执行命令文件复制到所述镜像中;所述运行指令用于将构建所述镜像所依赖的镜像的分层文件和集群创建必要信息加载到所述镜像的指定目录下;所述命令行指令用于记录应用部署和集群部署时所需要的执行命令。
[0020]可选地,所述镜像构建模块还用于:通过执行应用容器引擎的构建命令,以根据所述镜像构建指令文件中的基础镜像的来源指令、复制指令和运行指令构建镜像。
[0021]可选地,所述应用容器引擎的构建命令是基于buildx技术的多架构镜像构建命令。
[0022]可选地,所述离线部署模块还用于:通过执行应用容器引擎的保存命令将所述镜像保存为离线部署包。
[0023]可选地,所述离线部署模块还用于:通过执行应用容器引擎的加载命令从所述离线部署包中载入所述镜像;通过执行应用容器引擎的执行命令,根据所述镜像启动集群并部署所述云原生应用。
[0024]根据本专利技术实施例的又一方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术实施例所提供的云原生应用的部署方法。
[0025]根据本专利技术实施例的再一方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本专利技术实施例所提供的云原生应用的部署方法。
[0026]上述专利技术中的一个实施例具有如下优点或有益效果:通过根据云原生应用的应用部署所需资源和集群部署所需资源生成镜像构建指令文件;根据镜像构建指令文件构建镜像;将镜像保存为离线部署包,并根据离线部署包进行云原生应用的部署的技术方案,能够基于镜像构建指令文件将应用部署所需资源和集群部署所需资源集成到一个镜像当中,并将镜像保存为离线部署包,简化了离线部署包的制作过程,节省了离线部署包开发和更新所耗费的时间,提高了离线部署包的制作效率;基于离线部署包只需要执行应用容器引擎
的执行命令,即可一键同时把Kubernetes集群和应用部署起来,简化了应用离线部署的操作,提高了应用离线部署的效率。而且,借助于基于buildx技术的多架构镜像构建命令来进行镜像构建,构建的这些离线资源原生支持多体系架构,解决了离线部署包制作时安装包依赖等复杂问题。
[0027]上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
[0028]附图用于更好地理解本专利技术,不构成对本专利技术的不当限定。其中:
[0029]图1是根据本专利技术实施例的云原生应用的部署方法的主要步骤示意图;
[0030]图2是根据本专利技术实施例的云原生应用的部署装置的主要模块示意图;
[0031]图3是本专利技术实施例可以应用于其中的示例性系统架构图;
[0032]图4是适于用来实现本专利技术实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
[0033]以下结合附本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种云原生应用的部署方法,其特征在于,包括:根据云原生应用的应用部署所需资源和集群部署所需资源生成镜像构建指令文件;根据所述镜像构建指令文件构建镜像;将所述镜像保存为离线部署包,并根据所述离线部署包进行云原生应用的部署。2.根据权利要求1所述的方法,其特征在于,所述镜像构建指令文件包括:基础镜像的来源指令、复制指令、运行指令和命令行指令,所述基础镜像的来源指令用于指定构建离线部署包的基础镜像文件;所述复制指令用于将构建所述镜像的资源文件和执行命令文件复制到所述镜像中;所述运行指令用于将构建所述镜像所依赖的镜像的分层文件和应用创建必要信息加载到所述镜像的指定目录下;所述命令行指令用于记录应用部署和集群部署时所需要的执行命令。3.根据权利要求2所述的方法,其特征在于,根据所述镜像构建指令文件构建镜像,包括:通过执行应用容器引擎的构建命令,以根据所述镜像构建指令文件中的基础镜像的来源指令、复制指令和运行指令构建镜像。4.根据权利要求3所述的方法,其特征在于,所述应用容器引擎的构建命令是基于buildx技术的多架构镜像构建命令。5.根据权利要求1所述的方法,其特征在于,将所述镜像保存为离线部署包,包括:通过执行应用容器引擎的保存命令将所述镜像保存为离线部署包。6.根据权利要求1所述的方法,其特征在于,根据所述离线部署包进行云原生应用的部署,包括:通过执行应用容器引擎的加载命令从所...

【专利技术属性】
技术研发人员:姜鲁何小锋
申请(专利权)人:京东科技信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1