一种在虚拟化平台中部署应用的方法及虚拟平台管理器技术

技术编号:6994838 阅读:230 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种在虚拟化平台中部署应用的方法及虚拟平台管理器。所述方法包括:预先制作虚拟机的操作系统镜像以及应用软件包的安装脚本,所述操作系统镜像中安装有一个自动执行的应用部署程序;根据应用的部署请求产生应用请求号和虚拟机号,并在为所述应用分配物理机后,将所述部署请求对应的应用软件包和安装脚本存储到所述应用请求号对应的存储位置;将操作系统镜像拷贝到物理机上,并在所述物理机上将所述操作系统镜像作为虚拟机的虚拟磁盘启动;虚拟机启动后,所述操作系统镜像中的应用部署程序获取本虚拟机对应的应用请求号和虚拟机号后自动执行。依照本发明专利技术,能够对应用进行自动化的动态配置和部署,降低了应用部署的难度和工作量。

【技术实现步骤摘要】

本专利技术涉及计算机系统虚拟化
,特别涉及一种在虚拟化平台中部署应用 的方法及虚拟平台管理器。
技术介绍
近年来,随着计算机虚拟化技术的飞速发展,虚拟化平台得到了越来越广泛的应 用。通过虚拟化技术实现的快速部署、应用隔离、资源调度和服务器整合等技术,可以大大 提高硬件资源利用率、简化服务器安装过程和降低IT管理和维护成本。图1为现有技术中虚拟化平台管理系统的结构示意图。如图1所示,大量的物理 机组成了硬件资源池,在每个物理机上运行着虚拟机监控器(VMM),虚拟机监控器负责管理 底层的硬件资源和上层的虚拟机,每个虚拟机监控器可以启动和管理运行在本地物理机上 的多个虚拟机;在每个虚拟机中可以安装不同的操作系统(如windows或linux)和应用, 这些应用犹如运行在真实的物理机一样。由于每个虚拟机监控器只能管理本物理机上的虚 拟机,因此在上层需要一个虚拟平台管理器,负责调度所有的底层硬件资源,通过每个物理 机上的虚拟机监控器,动态创建和管理虚拟机,从而达到资源按需供应的目的。在对虚拟机进行部署时,典型的做法是将某种类型的操作系统做成虚拟机镜像文 件,以该镜像文件作为模版,当需要动态创建虚拟机时,只需要对模版镜像文件进行拷贝, 就可以将该镜像文件作为虚拟机的虚拟磁盘进行启动。镜像文件中包含安装好的操作系 统,虚拟机启动后用户可以直接使用虚拟机,而不需要进行操作系统安装的过程。而且,对 于较为完善的虚拟化平台管理系统会通过自动化的方法对虚拟机的操作系统进行网络环 境设置,大大方便和简化了用户使用。然而,相比于自动化的操作系统部署,目前虚拟化平台上并没有简单易用的应用 部署方法,用户通常采用以下两种方法进行应用部署1.手动部署,即用户申请和启动虚 拟机后,完全通过手动的方式进行应用的安装和部署;2.镜像部署,即将应用与操作系统 一起做成磁盘镜像。手动部署的方式存在着较大的复杂度,往往造成大量的简单重复的劳 动;而镜像部署方式通常只适合于单机版的应用,对于复杂的分布式的多机应用,往往需要 在应用部署时进行动态配置,对于事先静态生成的镜像无法满足动态配置的需求。通过以上的分析,可以发现有的基于镜像的部署方案尽管提供了简单易用的操作 系统部署方案,但是无法解决分布式应用动态部署的需求。举个简单的例子,假如用户希望 申请三个虚拟机运行一个网络服务的应用,并且要求这三个虚拟机分别运行apache web服 务器、jboss应用服务器和mysql数据库。为了让apache、jboss和mysql有机的组成多层 结构的网络服务整体,需要在动态申请到虚拟机资源后对每一个部件进行合理的配置,如 在apache web服务器的配置文件中生成jboss应用服务器的IP地址或主机名,在jboss 的jdbc连接的配置文件中生成mysql数据库的地址。然而,由于IP地址等网络环境是随 着虚拟机调度动态而分配的,静态产生的镜像无法满足应用动态配置和部署的要求。
技术实现思路
本专利技术的目的是提供一种在虚拟化平台中部署应用的方法及虚拟平台管理器,以 解决现有技术中无法对应用进行自动化的动态配置和部署的问题。为解决上述技术问题,本专利技术提供技术方案如下一种在虚拟化平台中部署应用的方法,包括预先制作虚拟机的操作系统镜像以及应用软件包的安装脚本,所述操作系统镜像 中安装有一个自动执行的应用部署程序,所述应用部署程序的执行参数为应用请求号和虚 拟机号;根据应用的部署请求产生应用请求号和虚拟机号,并在为所述应用分配物理机 后,将所述部署请求对应的应用软件包和安装脚本存储到所述应用请求号对应的存储位 置;将操作系统镜像拷贝到物理机上,并在所述物理机上将所述操作系统镜像作为虚 拟机的虚拟磁盘启动;虚拟机启动后,所述操作系统镜像中的应用部署程序获取本虚拟机对应的应用请 求号和虚拟机号后自动执行。上述的方法,其中,所述操作系统镜像被配置为动态获取IP地址;在虚拟机启动后,所述方法还包括通过动态主机配置协议(DHCP)服务器动态配 置虚拟机的网络环境,所述网络环境包括虚拟机的IP地址、虚拟机的主机名、网关和域名 服务器(DNS)地址。上述的方法,其中,虚拟机的主机名被配置为包括本虚拟机对应的应用请求号和 虚拟机号;所述应用部署程序获取本虚拟机对应的应用请求号和虚拟机号为从虚拟机的主 机名中解析应用请求号和虚拟机号。上述的方法,其中,所述应用部署程序中包括从与所述应用请求号对应的存储位 置中调用所述安装脚本,并将所述应用请求号和虚拟机号传递给所述安装脚本后执行所述 安装脚本的指令。上述的方法,其中,所述应用部署程序中还包括虚拟机是否为首次启动的指令,以 及,如果虚拟机不是首次启动则结束的指令。上述的方法,其中,所述安装脚本中包括根据所述虚拟机号为各虚拟机分配角色 的指令,根据所述角色从所述应用请求号对应的存储位置中获取相应的应用软件包并安装 所述应用软件包的指令,以及,根据所述角色对应用进行配置的指令。上述的方法,其中,所述根据所述角色对应用进行配置的指令具体用于执行如下 操作根据所述角色,获取其他虚拟机的IP地址和/或主机名;将获取到的IP地址和/或主机名写入到所述应用在本虚拟机上的配置文件中。一种虚拟平台管理器,包括部署请求接收模块,用于接收应用的部署请求,所述部署请求中包括请求的虚拟 机的个数、每个虚拟机的配置、每个虚拟机需要安装的操作系统镜像、应用所需的软件包以 及安装脚本;所述操作系统镜像中安装有一个自动执行的应用部署程序,所述应用部署程序的执行参数为应用请求号和虚拟机号;资源分配模块,用于根据所述部署请求产生应用请求号和虚拟机号,并在为所述 应用分配物理机后,将所述部署请求对应的应用软件包和安装脚本存储到所述应用请求号 对应的存储位置;操作系统镜像分发模块,用于将所述操作系统镜像拷贝到物理机上,使得所述物 理机将所述操作系统镜像作为虚拟机的虚拟磁盘启动,以及,在虚拟机启动后,所述操作系 统镜像中的应用部署程序获取本虚拟机对应的应用请求号和虚拟机号后自动执行。上述的虚拟平台管理器,其中,所述操作系统镜像被配置为动态获取IP地址,使 得在虚拟机启动后,所述虚拟机通过动态主机配置协议DHCP服务器动态配置网络环境,所 述网络环境包括虚拟机的IP地址、虚拟机的主机名、网关和域名服务器DNS地址。上述的虚拟平台管理器,其中,虚拟机的主机名被配置为包括本虚拟机对应的应 用请求号和虚拟机号,使得所述应用部署程序从虚拟机的主机名中解析应用请求号和虚拟 机号。上述的虚拟平台管理器,其中,所述应用部署程序中包括从与所述应用请求号对 应的存储位置中调用所述安装脚本,并将所述应用请求号和虚拟机号传递给所述安装脚本 后执行所述安装脚本的指令。上述的虚拟平台管理器,其中,所述应用部署程序中还包括虚拟机是否为首次启 动的指令,以及,如果虚拟机不是首次启动则结束的指令。上述的虚拟平台管理器,其中,所述安装脚本中包括根据所述虚拟机号为各虚拟 机分配角色的指令,根据所述角色从所述应用请求号对应的存储位置中获取相应的应用软 件包并安装所述应用软件包的指令,以及,根据所述角色对应用进行配置的指令。上述的虚拟平台管理器,其中,所述根据所述角色对应用进行配置的指令具体用 于执行如下本文档来自技高网
...

【技术保护点】
1.一种在虚拟化平台中部署应用的方法,其特征在于,包括:预先制作虚拟机的操作系统镜像以及应用软件包的安装脚本,所述操作系统镜像中安装有一个自动执行的应用部署程序,所述应用部署程序的执行参数为应用请求号和虚拟机号;根据应用的部署请求产生应用请求号和虚拟机号,并在为所述应用分配物理机后,将所述部署请求对应的应用软件包和安装脚本存储到所述应用请求号对应的存储位置;将操作系统镜像拷贝到物理机上,并在所述物理机上将所述操作系统镜像作为虚拟机的虚拟磁盘启动;虚拟机启动后,所述操作系统镜像中的应用部署程序获取本虚拟机对应的应用请求号和虚拟机号后自动执行。

【技术特征摘要】

【专利技术属性】
技术研发人员:张志宏赵鹏
申请(专利权)人:中国移动通信集团公司
类型:发明
国别省市:11

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

1