应用实例构建方法、装置和设备制造方法及图纸

技术编号:33966653 阅读:8 留言:0更新日期:2022-06-30 01:35
本申请提供的一种应用实例构建方法、装置和设备,可用于云计算技术领域或其他领域,通过获取包括按照相同机制定义的虚拟机运行定义块和容器运行定义块的第一实例信息;根据第一实例信息中的虚拟机运行定义块创建目标虚拟机实例;根据第一实例信息中的容器运行定义块创建目标容器实例;生成目标虚拟机实例与目标容器实例之间的映射关系;根据映射关系构建包含目标虚拟机实例和目标容器实例的应用实例。由于利用自定义资源对象,不但在同一模板下对容器实例和虚拟机实例进行统一调度,且实现了容器实例和虚拟机实例在工作节点上的亲和性管理。和性管理。和性管理。

【技术实现步骤摘要】
应用实例构建方法、装置和设备


[0001]本申请涉及云计算技术,尤其涉及一种应用实例构建方法、装置和设备。

技术介绍

[0002]随着容器技术的发展与推广,大部分无状态业务都开始容器化部署,尽管虚拟机的使用被相对压缩,但目前许多业务场景下虚拟机的作用仍不可替代,所以未来虚拟机还会长期存在。
[0003]目前,在分布式系统中需要同时使用容器和虚拟机来运行应用实例时,使用虚拟机专用调度系统(例如“Openstack”虚拟机调度系统)来创建和调度虚拟机实例,使用容器专用调度系统(例如“Kubernetes”容器调度系统)来创建和调度容器实例。
[0004]随着分布式系统的发展,分布式系统越来越复杂,分布式系统中各个组件的管理和调度也越来越复杂。
[0005]因此,如何降低分布式系统的管理和调度复杂度,成为亟待解决的问题。

技术实现思路

[0006]本申请提供一种应用实例构建方法、装置和设备,用以解决现有技术中容器与虚拟机无法统一编排调度的技术问题。
[0007]第一方面,本申请提供一种应用实例构建方法,包括:获取第一实例信息,第一实例信息包括虚拟机运行定义块和容器运行定义块,虚拟机运行定义块和容器运行定义块中的内容是按照相同的机制定义的;根据第一实例信息中的虚拟机运行定义块创建目标虚拟机实例;根据第一实例信息中的容器运行定义块创建目标容器实例;生成目标虚拟机实例与目标容器实例之间的映射关系;根据映射关系构建包含目标虚拟机实例和目标容器实例的应用实例。
[0008]本申请提供的应用实例构建方法,通过自定义一个包含虚拟机定义模板和容器定义模板的自定义资源对象,实现虚拟机和容器在同一模板下的编排调度管理,有效减少运维的成本,降低了系统的对容器和虚拟机进行调度管理的复杂度,且可在同一模板下对容器和虚拟机的进行亲和性配置,让虚拟机和容器间形成对应的映射关系,通过提升通信效率,有效提升应用服务响应的速率。
[0009]在一种可能实现的方式中,第一实例信息还包括第一副本数,第一副本数用于指示需要生成的虚拟机实例的第一数量;根据第一实例信息中的虚拟机运行定义块创建目标虚拟机实例,包括:根据第一实例信息中的虚拟机运行定义块创建第一数量的目标虚拟机实例。
[0010]本申请提供的应用实例构建方法,通过预先定义的副本数,生成与副本数相同的虚拟机实例,其中一个虚拟机实例在被使用时,可调用其他的空闲的虚拟机实例提供服务,实现应用的负载均衡,提升应用服务的反应效率。
[0011]在一种可能实现的方式中,虚拟机运行定义块包括第一亲和性配置信息,第一亲
和性配置信息用于指示多个工作节点;相应地,第一数量的目标虚拟机实例中至少两个目标虚拟机实例部署在多个工作节点中不同的工作节点上。
[0012]本申请提供的应用实例构建方法,通过设定亲和性配置信息实现对生成的多个虚拟机实例的亲和性管理。当不使用这种亲和性配置时,多个虚拟机实例可能会部署在同一工作节点中,当这一个工作节点出现故障时,会导致运行在该节点的多个虚拟机实例均无法提供服务。因此,通过第一亲和性配置信息将生产的多个虚拟机实例分布在不同的工作节点上进行部署,实现了应用的高可用性。
[0013]在一种可能实现的方式中,第一实例信息还包括第二副本数,第二副本数用于指示需要生成的容器实例的第二数量;根据第一实例信息中的容器运行定义块创建目标容器实例,包括:根据第一实例信息中的容器运行定义块创建第二数量的目标容器实例。
[0014]本申请提供的应用实例构建方法,通过预先定义的副本数,生成与副本数相同的容器实例,其中一个容器实例在被使用时,可调用其他的空闲的容器实例提供服务,实现应用的负载均衡,提升应用服务的反应效率。
[0015]在一种可能实现的方式中,容器运行定义块包括第二亲和性配置信息,第二亲和性配置信息用于指示多个工作节点;相应地,第二数量的目标容器实例中至少两个目标容器实例部署在多个工作节点中不同的工作节点上。
[0016]本申请提供的应用实例构建方法,通过设定亲和性配置信息实现对生成的多个容器实例的亲和性管理。当不使用这种亲和性配置时,多个容器实例可能会部署在同一工作节点中,当这一个工作节点出现故障时,会导致运行在该节点的多个容器实例均无法提供服务。因此,通过第一亲和性配置信息将生产的多个容器实例分布在不同的工作节点上进行部署,实现了应用的高可用性。
[0017]在一种可能实现的方式中,第一实例信息中还包括第三亲和性配置信息,第三亲和性配置信息用于指示目标虚拟机实例或目标容器实例所在的工作节点;相应地,目标虚拟机实例与目标容器实例根据第三亲和性配置信息,部署在同一工作节点上。
[0018]本申请提供的应用实例构建方法,通过设定亲和性配置信息实现虚拟机实例和容器实例在同一节点的部署。当虚拟机实例和容器实例部署在同一工作节点时,可以利用该工作节点本身的通信通道进行高速通信,有效避免当网络通信存在故障或延迟带来的掉线问题,提升通信稳定性和速率,能够进一步提升应用服务的瞬时反应速度。
[0019]第二方面,本申请提供一种应用实例构建装置,包括:获取模块:用于获取第一实例信息,第一实例信息包括虚拟机运行定义块和容器运行定义块,虚拟机运行定义块和容器运行定义块中的内容是按照相同的机制定义的;虚拟机创建模块:用于根据第一实例信息中的虚拟机运行定义块创建目标虚拟机实例;容器创建模块:用于根据第一实例信息中的容器运行定义块创建目标容器实例;构建模块:生成目标虚拟机实例与目标容器实例之间的映射关系;根据映射关系构建包含目标虚拟机实例和目标容器实例的应用实例。
[0020]第三方面,本申请提供一种电子设备,包括:处理器,以及与处理器通信连接的存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,以实现第一方面的应用实例构建方法。
[0021]第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现第一方面的应用实例构方法。
[0022]第五方面,本申请提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面的应用实例构方法。
[0023]本申请提供的一种应用实例构建方法、装置和设备,通过获取包括按照相同机制定义的虚拟机运行定义块和容器运行定义块的第一实例信息;根据第一实例信息中的虚拟机运行定义块创建目标虚拟机实例;根据第一实例信息中的容器运行定义块创建目标容器实例;生成目标虚拟机实例与目标容器实例之间的映射关系;根据映射关系构建包含目标虚拟机实例和目标容器实例的应用实例。由于利用自定义资源对象,不但在同一模板下对容器实例和虚拟机实例进行统一调度,且实现了容器实例和虚拟机实例在工作节点上的亲和性管理。
附图说明
[0024]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
[0025]图1本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种应用实例构建方法,其特征在于,包括:获取第一实例信息,所述第一实例信息包括虚拟机运行定义块和容器运行定义块,所述虚拟机运行定义块和所述容器运行定义块中的内容是按照相同的机制定义的;根据所述第一实例信息中的虚拟机运行定义块创建目标虚拟机实例;根据所述第一实例信息中的容器运行定义块创建目标容器实例;生成所述目标虚拟机实例与所述目标容器实例之间的映射关系;根据所述映射关系构建基于所述目标虚拟机实例和所述目标容器实例的应用实例。2.根据权利要求1所述的方法,其特征在于,所述第一实例信息还包括第一副本数,所述第一副本数用于指示需要生成的虚拟机实例的第一数量;所述根据所述第一实例信息中的虚拟机运行定义块创建目标虚拟机实例,包括:根据所述第一实例信息中的虚拟机运行定义块创建所述第一数量的目标虚拟机实例。3.根据权利要求2所述的方法,其特征在于,所述虚拟机运行定义块包括第一亲和性配置信息,所述第一亲和性配置信息用于指示多个工作节点;相应地,所述第一数量的目标虚拟机实例中至少两个目标虚拟机实例部署在所述多个工作节点中不同的工作节点上。4.根据权利要求1所述的方法,其特征在于,所述第一实例信息还包括第二副本数,所述第二副本数用于指示需要生成的容器实例的第二数量;所述根据所述第一实例信息中的容器运行定义块创建目标容器实例,包括:根据所述第一实例信息中的容器运行定义块创建所述第二数量的目标容器实例。5.根据权利要求4所述的方法,其特征在于,所述容器运行定义块包括第二亲和性配置信息,所述第二亲和性配置信息用于指示多个工作节点;相应地,所述第二数量的目标容器实例中至少两个...

【专利技术属性】
技术研发人员:袁晓阳孙政清白佳乐蔡中原
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

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

1