当前位置: 首页 > 专利查询>SAP欧洲公司专利>正文

传统本地部署应用的容器插件制造技术

技术编号:37059290 阅读:13 留言:0更新日期:2023-03-29 19:36
各种示例涉及用于将插件安装到云实现的数据库管理应用的系统和方法。共享容器文件系统可以在云环境被开启。插件容器图像可以被访问,其中插件容器图像包括向数据库管理应用描述第一插件的插件有效载荷数据和副本可执行文件。插件容器可以在云环境被启动,其中插件容器至少部分地基于插件容器图像。插件容器可以被挂载到共享容器文件系统。副本可执行文件可以被运行以将插件有效载荷数据复制到共享容器文件系统。第一插件可以安装到在云环境中运行的数据库管理应用实例。运行的数据库管理应用实例。运行的数据库管理应用实例。

【技术实现步骤摘要】
传统本地部署应用的容器插件

技术介绍

[0001]传统上,软件是独立的,并在一个或多个本地机器上运行。希望使用软件工具的企业构建本地部署(on

premises)计算系统并运行软件应用以在该计算系统上提供工具。软件应用可以由企业开发和/或从第三方软件提供者处购买。用户直接从计算系统或通过联网的用户计算设备远程访问软件工具。
附图说明
[0002]本公开在以下附图中通过示例而不是限制的方式来说明。
[0003]图1是示出用于向在云环境中运行的传统本地部署应用提供插件支持的环境的一个示例的示图。
[0004]图2是示出可以在图1的环境中运行以在应用实例上安装或升级插件的处理流的一个示例的流程图。
[0005]图3是示出可以在图1的环境中运行以在应用实例中卸载插件的处理流的一个示例的流程图。
[0006]图4是示出用于将插件安装到在云环境中运行的传统本地部署应用的布置的一个示例的示图。
[0007]图5是示出插件容器图像的一个示例布置的示图。
[0008]图6

图8是示出可以在布置(诸如图4的布置)中实现的向应用实例安装插件的处理流600的一个示例的流程图。
[0009]图9是示出用于管理在云环境中运行的传统本地部署应用处的插件的布置的一个示例的示图。
[0010]图10和图11是示出考虑版本兼容性的用于将插件安装到应用实例的处理流的一个示例的流程图。
[0011]图12和图13是示出考虑插件版本兼容性升级应用实例的处理流的一个示例的流程图。
[0012]图14是示出用于计算设备的软件架构的一个示例的框图。
[0013]图15是计算机系统的示例形式的机器的框图,其中可以执行指令以使机器执行本文讨论的任何一个或多个方法。
具体实施方式
[0014]本地部署(on

premises)软件应用通常由企业在现场或本地部署的计算系统执行。本地部署应用可以被实现为包括一个或多个可执行文件(executable)、库等的集合,由驻留在本地部署计算系统的可执行文件、库等的集合实现。与企业相关联的用户从本地部署计算系统访问软件应用。
[0015]本地部署软件应用的典型特征是发布周期长。例如,可以通过改变一个或多个可执行文件和/或库来实现对本地部署应用的一项功能的改变。然而,本地部署应用的可执行
文件、库等通常会实现多种功能。这意味着对本地部署应用的一项功能的改变可能需要重新测试修改的可执行文件和/或库文件提供的许多不同功能。此外,当本地部署应用是数据库管理系统或与数据持久性接口的其他应用时,对用于实现应用的可执行文件(或多个)和/或库的改变可能会改变应用与持久性接口的方式。因此,升级本地部署应用可以包括以持久性执行数据迁移(例如,从一个模式到目标模式)。因此,可以批量改变本地部署应用。这样,可以同时测试、调试和部署一批多个改变。
[0016]与本地部署实现相反,一些软件应用在云环境中被运行。云环境包括实现一个或多个虚拟和/或硬件服务器的一个或多个数据中心。云环境运行云应用的实例。例如,云应用的实例可以运行以向一组用户(例如,与购买对软件工具的访问的实体相关联的一组用户)提供软件工具。云应用的每个实例包括在云环境中运行的一个或多个虚拟机和/或容器的集合。
[0017]云本原应用专门被开发用于在云环境中运行。因此,许多云本原应用是根据微服务架构设计的。在微服务架构中,软件应用的实例由在云环境运行的松散耦合微服务集合实现。每个微服务还可以包括单个可执行文件,该单个可执行文件在由云环境实现的单独虚拟机(VM)或容器中运行。在微服务架构中,每个微服务都被编程为执行定义的任务或一小组任务,并以定义的方式与其他微服务交互,例如,根据应用编程接口(API)。
[0018]微服务架构应用中微服务之间的独立程度简化了测试和升级的处理。例如,由于微服务架构的性质,对一个微服务的改变可能对其他微服务和/或微服务架构应用使用的数据持久性的影响有限。因此,许多云本原微服务架构应用支持通过持续或持续处理进行测试和更新,诸如持续集成/持续交付(CI/CD)流水线。在CI/CD流水线中,开发人员可以对构成应用实例的微服务子集进行改变。这些改变被实现为应用的修改版本。修改的构建被部署到各种集成和测试环境。如果修改的构建通过了各种集成和测试环境的测试,则它可以作为新构建被部署到一个或多个云环境。如果发现新构建有缺陷或包括bug,则可以通过恢复到构建的先前版本来回滚。
[0019]在一些示例中,希望将设计用于本地部署执行的软件应用转换到云环境。由于云环境和本地部署计算系统环境之间的差异,这样的转变可能不是微不足道的。在一些示例中,本地部署应用的可执行文件、库等被配置为在云环境的一个或多个容器中执行。云环境中的编排(orchestration)服务可以管理在云环境运行的容器,以将应用的实例提供给与不同客户相关联的用户组。
[0020]在一些示例中,可以完全重构和重新编码传统的本地部署应用以符合微服务架构。一旦发生这种重构和重新编码,则现在的云本原应用可以使用CI/CD流水线或类似的连续技术不断升级。然而,通常不希望对传统的本地部署应用执行完全重构和重新编码。例如,这种转换可能是时间和劳动密集型的。本地部署应用可能会受到部分重构,而不是完全重构和重新编码。在一些示例中,本地部署应用的现有可执行文件(或多个)和库仅被配置为在由一个或多个云服务管理的云环境运行的容器中运行。
[0021]当本地部署应用未完全被转换为微服务架构格式时,应用的最终云实现可能不太适合持续更新。例如,容器实现的可执行文件和/或改编自本地部署实现的库可能不像云本原应用那样独立。因此,对由可执行文件或库实现的一个功能的改变可能需要对由相同可执行文件或库或者其他可执行文件和/或库实现的其他功能进行更广泛的测试。
[0022]此外,具有容器实现的可执行文件和/或库的云应用可能不独立于应用使用的持久性的一个或多个模式。因此,在云上更新应用可以包括以一个或多个云持久性来执行数据迁移以使那些持久性与升级的应用一致。这种数据迁移可能是时间和资源密集型的,因此在出现故障或其他错误时难以回滚。
[0023]将本地部署应用迁移到云环境时出现的另一个挑战与插件有关,有时也称为应用扩展或扩展。插件是扩展或以其他方式修改应用实例的功能性的软件。例如,将插件安装到应用可以包括修改和/或补充应用的现有实例,而不是执行应用的不同实例。
[0024]在本地部署实现中,应用开发人员向现场应用管理员提供插件,例如,通过下载或交付到本地部署的物理介质。应用管理员有权访问其上执行应用实例的服务器或其他计算设备,包括适当的安全授权和运行插件安装程序以安装、升级或删除插件的访问权。安装插件可能包括,例如,将一个或多个附加可执行文件加载到现场机器,将新库或OSGi包添加到本地部署机器,添加结构化查询语言(SQL)或其他数据库协议过程等。
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于将插件安装到云实现的数据库管理应用的系统,所述系统包括:至少一个处理器,被编程以执行操作,包括:在云环境开启共享容器文件系统;访问插件容器图像,插件容器图像包括向数据库管理应用描述第一插件的插件有效载荷数据和副本可执行文件;在云环境启动插件容器,插件容器至少部分地基于插件容器图像;将插件容器挂载到共享容器文件系统;运行副本可执行文件以将插件有效载荷数据复制到共享容器文件系统;以及将第一插件安装到在云环境运行的数据库管理应用实例,所述安装至少部分地基于共享容器文件系统处的插件有效载荷数据。2.根据权利要求1所述的系统,还包括:在云环境启动插件部署容器;将插件部署容器挂载到共享容器文件系统;以及通过插件部署容器从共享容器文件系统处的插件有效载荷数据中提取插件存档数据,将第一插件安装到数据库管理应用实例至少部分地基于插件存档数据。3.根据权利要求2所述的系统,还包括:将插件部署容器连接到数据库管理应用实例。4.根据权利要求1所述的系统,所述访问插件容器图像包括从容器图像注册表访问插件容器图像。5.根据权利要求1所述的系统,所述副本可执行文件是静态链接的。6.根据权利要求1所述的系统,所述插件容器图像还包括静态链接的安全可执行文件,操作还包括运行安全可执行文件以对插件有效载荷数据执行至少一次安全检查。7.根据权利要求1所述的系统,所述插件容器图像还包括静态链接的扫描可执行文件,操作还包括运行扫描可执行文件以执行插件有效载荷数据的至少一次扫描。8.根据权利要求1所述的系统,还包括:通过在云环境运行的前端服务接收来自与第一用户组相关联的第一用户的插件请求,数据库管理应用实例与第一用户组相关联;通过前端服务确定数据库管理应用实例的版本;以及通过前端服务访问插件目录以确定与数据库管理应用兼容的至少一个插件,所述至少一个插件包括第一插件。9.一种用于将插件安装到云实现的数据库管理应用的方法,所述方法包括:在云环境开启共享容器文件系统;访问插件容器图像,插件容器图像包括向数据库管理应用描述第一插件的插件有效载荷数据和副本可执行文件;在云环境启动插件容器,插件容器至少部分地基于插件容器图像;将插件容器挂载到共享容器文件系统;运行副本可执行文件以将插件有效载荷数据复制到共享容器文件系统;以及将第一插件安装到在云环境运行的数据库管理应用实例,所述安装至少部分地基于共享容器文件系统处的插件有效载荷数据。10...

【专利技术属性】
技术研发人员:D克尔姆西
申请(专利权)人:SAP欧洲公司
类型:发明
国别省市:

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

1