CN103207802B - 软件操作系统及方法 - Google Patents

软件操作系统及方法 Download PDF

Info

Publication number
CN103207802B
CN103207802B CN201210009214.6A CN201210009214A CN103207802B CN 103207802 B CN103207802 B CN 103207802B CN 201210009214 A CN201210009214 A CN 201210009214A CN 103207802 B CN103207802 B CN 103207802B
Authority
CN
China
Prior art keywords
software
virtual machine
agent
sent
control module
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
CN201210009214.6A
Other languages
English (en)
Other versions
CN103207802A (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.)
Shanghai Shangda Networking Development Co., Ltd.
Original Assignee
SHANGHAI SHANGDA NETWORKING DEVELOPMENT 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 SHANGHAI SHANGDA NETWORKING DEVELOPMENT Co Ltd filed Critical SHANGHAI SHANGDA NETWORKING DEVELOPMENT Co Ltd
Priority to CN201210009214.6A priority Critical patent/CN103207802B/zh
Publication of CN103207802A publication Critical patent/CN103207802A/zh
Application granted granted Critical
Publication of CN103207802B publication Critical patent/CN103207802B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明涉及一种软件操作系统及方法,所述系统包括:终端服务模块,用于获取用户的操作请求并发送给所述调度控制模块;调度控制模块,用于根据所述操作请求生成操作指令并发送给所述宿主机Agent;宿主机Agent,用于将所述操作指令发送给虚拟机Agent;虚拟机Agent,用于执行所述操作指令;所述软件仓库管理模块,用于存储和提供各种软件包。本发明为用户提供依赖虚拟化平台提供的软件安装服务平台,用户通过终端服务模块可一键安装软件到用户相关的虚拟机中,通过虚拟化框架提供的通讯机制在随时触发虚拟机的软件安装或卸载过程,利用此技术用户可更方便部署、管理自己的集群环境。

Description

软件操作系统及方法
技术领域
本发明涉及一种软件操作系统及方法。
背景技术
目前主流的云计算服务平台,主要研究提供各种资源的使用和管理的平台,包括IaaS(Infrastructure as a Service基础设施即服务)、SaaS(Software as a Service软件即服务),而PaaS(Platform as a Servcie)据其提供的服务又呈现出提供各种需求的功能,包括App Engine、数据库云服务平台等等,软件安装服务系统即属于PaaS类型的云计算系统,传统的IaaS系统,主要考虑提供各种基础设施资源给终端用户,在如何充分、方便利用基础设施资源这块,在软件安装服务系统方面其实有很多可发挥和想象的空间。
发明名称为“一种在虚拟化平台中部署应用的方法及虚拟平台管理器”(申请号:200910243973.7)的专利公开了一种在虚拟机的启动阶段增加的软件安装过程的方法,具体是涉及一种方便的集群部署方法,这种方法不但灵活性欠佳而且由于其采用的是挂载虚拟磁盘的方式,所以只能在虚拟机启动阶段触发安装过程。
现有的云计算IaaS平台主要利用虚拟化技术,给用户提供可定制的、按需使用的硬件计算或其他基础设施资源,用户可利用各种终端查阅和管理自己的虚拟基础设施资源(主要包括虚拟机、虚拟存储空间等),在这种模式下,如何实现虚拟机上运行的各种软件在用户终端上一键安装成功,甚至在部署复杂集群时通过终端不但能按配置要求启动虚拟机,而且能同时安装其需要的各种软件是目前业界亟待解决的问题。
发明内容
本发明的目的在于提供一种软件操作系统及方法,用户通过终端服务模块可一键安装软件到用户相关的虚拟机中,通过虚拟化框架提供的通讯机制在随时触发虚拟机的软件安装或卸载过程,利用此技术用户可更方便部署、管理自己的集群环境,且能方便更多的第三方应用开发者提供自己的应用软件包给终端用户使用,可整合IaaS和SaaS两类系统,把硬件资源、软件资源都以非常便捷的方式如通过终端服务模块的终端界面操作方式进行管理和使用。
为解决上述问题,本发明提供一种软件操作系统,包括:终端服务模块、调度控制模块、软件仓库管理模块、宿主机Agent和虚拟机Agent,其中,
所述终端服务模块用于获取用户的操作请求并发送给所述调度控制模块;
所述调度控制模块用于根据操作请求生成操作指令并发送给宿主机Agent;
所述宿主机Agent用于将所述操作指令发送给虚拟机Agent;
所述虚拟机Agent用于执行所述操作指令;
所述软件仓库管理模块用于存储和提供各种软件包。
进一步的,在上述系统中,所述操作请求包括安装软件请求或卸载软件请求。
进一步的,在上述系统中,所述安装软件请求包括虚拟机Agent的名称、宿主机Agent的物理地址、软件标示信息和软件安装路径的信息。
进一步的,在上述系统中,所述卸载软件请求包括虚拟机Agent的名称、宿主机Agent的物理地址、软件标示信息和软件卸载路径的信息。
进一步的,在上述系统中,所述虚拟机Agent还用于向所述调度控制模块发送获取软件包的标准配置文件的请求和报告操作指令执行状况,并向软件仓库管理模块请求下载软件包。
进一步的,在上述系统中,所述调度控制模块还用于在发送所述操作指令的同时向所述宿主机Agent发送一令牌;
所述宿主机Agent还用于在发送所述操作指令的同时向所述虚拟机Agent发送所述令牌。
进一步的,在上述系统中,所述虚拟机Agent还用于生成一密钥,并将所述密钥和令牌发送给所述调度控制模块。
进一步的,在上述系统中,还包括一元数据模块,所述元数据模块用于存储和提供所述标准配置文件;
所述调度控制模块,还用于向所述元数据模块发送获取所述标准配置文件的请求。
进一步的,在上述系统中,还包括一软件包管理模块,所述软件包管理模块用于接受用户的软件上传请求、将软件打包发送到所述软件仓库管理模块和生成所述标准配置文件并发送到所述元数据模块。
进一步的,在上述系统中,所述标准配置文件的格式包括软件名称、版本号和软件在软件包中的相对位置。
进一步的,在上述系统中,所述标准配置文件的格式还包括软件安装脚本相对路径、软件卸载脚本相对路径或软件权限中的一种或任意组合。
进一步的,在上述系统中,所述宿主机Agent根据所述虚拟机Agent的不同虚拟化技术采用相应的消息通讯机制发送所述操作指令给所述虚拟机Agent。
进一步的,在上述系统中,所述宿主机Agent与基于Xen架构的虚拟机Agent通讯时采用Xenstore消息通讯机制发送所述操作指令给所述虚拟机Agent。
根据本发明的另一面,提供一种软件操作方法,包括:
终端服务模块获取用户的操作请求并发送给调度控制模块;
调度控制模块根据所述操作请求生成操作指令并发送给宿主机Agent;
宿主机Agent将所述操作指令发送给虚拟机Agent;
虚拟机Agent执行所述操作指令。
进一步的,在上述方法中,所述操作请求包括安装软件请求或卸载软件请求。
进一步的,在上述方法中,当所述操作请求为安装软件请求时,所述虚拟机Agent执行所述操作指令的步骤中包括:
所述虚拟机Agent从所述调度控制模块获取软件包的标准配置文件;
所述虚拟机Agent分析所述标准配置文件并向软件仓库管理模块请求下载软件包;
所述软件仓库管理模块根据所述请求向所述虚拟机Agent发送软件包;
所述虚拟机Agent向所述调度控制模块报告软件包下载完成;
所述虚拟机Agent安装所述软件包并向所述调度控制模块报告软件安装执行情况。
进一步的,在上述方法统中,当所述操作请求为卸载软件请求时,所述虚拟机Agent执行所述操作指令的步骤中包括:
所述虚拟机Agent从所述调度控制模块获取软件包的标准配置文件;
所述虚拟机Agent卸载所述软件包并向所述调度控制模块报告软件卸载执行情况。
进一步的,在上述方法中,所述调度控制模块将操作指令发送给所述宿主机Agent的同时向所述宿主机Agent发送一令牌;
所述宿主机Agent将所述操作指令发送给虚拟机Agent的同时向所述虚拟机Agent发送所述令牌。
进一步的,在上述方法中,在所述虚拟机Agent从所述调度控制模块获取软件相关的标准配置文件的步骤之前,还包括所述虚拟机Agent生成一密钥,并将所述密钥和令牌发送给所述调度控制模块。
进一步的,在上述方法中,所述调度控制模块从一元数据模块获取所述标准配置文件。
进一步的,在上述方法中,还包括软件包管理模块接受用户的软件上传请求、将软件打包发送到所述软件仓库管理模块以及生成软件包的标准配置文件并发送到所述元数据模块。
进一步的,在上述方法中,所述宿主机Agent将所述操作指令发送给虚拟机Agent的步骤中,所述宿主机Agent根据所述虚拟机Agent的不同虚拟化技术采用相应的消息通讯机制。
进一步的,在上述方法中,所述宿主机Agent与基于Xen架构的虚拟机Agent通讯时采用Xenstore消息通讯机制发送所述操作指令给所述虚拟机Agent。
与现有技术相比,本发明通过终端服务模块先获取用户的操作请求,根据所述操作请求生成操作指令并发送给所述调度控制模块,调度控制模块再将所述操作指令发送给所述宿主机Agent,然后宿主机Agent将所述操作指令发送给虚拟机Agent,最后虚拟机Agent执行所述操作指令,为用户提供依赖虚拟化平台提供的软件安装服务平台,用户通过终端服务模块可一键安装软件到用户相关的虚拟机中,通过虚拟化框架提供的通讯机制在随时触发虚拟机的软件安装或卸载过程,利用此技术用户可更方便部署、管理自己的集群环境。
另外,通过软件包管理模块接受用户的软件上传请求、将软件打包发送到所述软件仓库管理模块以及生成软件相关的标准配置文件并发送到所述元数据模块,可方便更多的第三方应用开发者提供自己的应用软件包给终端用户使用,可整合IaaS和SaaS两类系统,把硬件资源、软件资源都以非常便捷的方式如通过终端服务模块的终端界面操作方式进行管理和使用。
此外,通过调度控制模块先将所述操作指令发送给所述宿主机Agent,然后宿主机Agent将所述操作指令发送给虚拟机Agent,实现利用虚拟化框架的通讯机制来以事件触发方式通知虚拟机Agent,不会占用虚拟机通讯端口,而且虚拟机Agent也更安全可靠。
附图说明
图1是本发明一实施例的软件操作系统的模块示意图;
图2是本发明一实施例的软件操作方法的流程图;
图3是图2中步骤S5的安装软件详细流程图;
图4是图2中步骤S5的卸载软件详细流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1是本发明一实施例的软件操作系统的模块示意图。
如图1所示,本发明还提供一种软件操作系统,所述操作系统负责的操作包括安装软件操作或卸载软件操作,所述操作系统具体包括:软件包管理模块1、终端服务模块2、调度控制模块3、软件仓库管理模块4、宿主机Agent5、虚拟机Agent6和元数据模块7。
软件包管理模块1用于接受用户的软件上传请求、将软件打包发送到所述软件仓库管理模块4和生成标准配置文件并发送到所述元数据模块7,具体的,所述标准配置文件的格式包括软件名称、版本号和软件在软件包中的相对位置,除此之外,所述标准配置文件的格式还可包括软件安装脚本相对路径、软件卸载脚本相对路径或软件权限中的一种或任意组合,其中,安装脚本相对路径或软件卸载脚本相对路径主要是针对shell或者bat脚本的可选项,这样安装软件时将根据软件安装脚本和传入的软件安装目录参数、软件相对位置信息安装软件;没有指定安装脚本时虚拟机Agent采用默认的安装脚本执行安装过程;软件包管理模块1是提供给用户的工具包,可以支持将软件按照格式要求打包、上传到软件仓库管理模块4的功能,终端用户或者系统管理员可按照格式要求制作待安装软件包,主要包括其需要依赖的其他软件名称和版本、上传软件包到系统的软件仓库、填写好软件包的标准配置文件如包括软件名称、使用权限后上传软件包到软件仓库管理模块4,以后即可提供给用户在终端上点击方式安装软件到相关的虚拟机Agent 6上,从而方便更多的第三方应用开发者提供自己的应用软件包给终端用户使用,实现IaaS和SaaS两类系统的整合,把硬件资源、软件资源都以非常便捷的方式如通过终端服务模块的终端界面操作方式进行管理和使用。
所述终端服务模块2用于获取用户的操作请求并发送给所述调度控制模块3,具体的,所述终端服务模块2可设于用户的终端设备上,所述操作请求包括安装软件请求或卸载软件请求,例如在安装软件时,用户可在终端设备上按条件查询到其需要的软件,该软件可以是仅限于用户有使用权限的软件,点击“安装”操作,终端服务模块2提示用户选择需要安装此软件的运行中的虚拟机Agent,用户选择后系统开始根据软件的标准配置安装软件到对应的虚拟机,另外,在卸载软件时,用户通过所述终端服务模块2查询到已安装某软件的运行中虚拟机,点击“卸载软件”操作,系统开始根据相关信息卸载已安装在虚拟机上的软件,其中,所述安装软件请求包括虚拟机Agent的名称、宿主机Agent的物理地址、软件标示信息和软件安装路径的信息,所述卸载软件请求包括虚拟机Agent的名称、宿主机Agent的物理地址、软件标示信息和软件卸载路径的信息。
所述调度控制模块3用于根据所述操作请求生成操作指令并发送给所述宿主机Agent,具体的,调度控制模块3是整个软件操作系统的控制器,支持与终端服务模块交互完成各种操作,支持虚拟机Agent查询软件包的标准配置文件等,若所述标准配置文件存储于一元数据模块7中,所述调度控制模块3还用于向所述元数据模块7发送获取所述标准配置文件的请求,为了保证数据传输的安全可靠,所述调度控制模块3还用于在发送所述操作指令的同时向所述宿主机Agent发送一令牌所述令牌用于供调度控制模块3和虚拟机Agent 6之间互相确认身份。
宿主机Agent 5用于将所述操作指令发送给虚拟机Agent 6,即转发调度控制模块3发送给虚拟机Agent 6的操作指令,具体的,所述宿主机Agent 5根据所述虚拟机Agent 6的不同虚拟化技术采用相应的消息通讯机制发送所述操作指令给所述虚拟机Agent 6,例如所述宿主机Agent 5与基于Xen(开放源代码虚拟机监视器)架构的虚拟机Agent 6通讯时采用Xenstore消息通讯机制发送所述操作指令给所述虚拟机Agent 6,其中,Xenstore主要是用来控制建立来自客户机的共享内存区域的事件通道、管理客户机的通知、收集客户机状态数据的工具,另外,为了保证数据传输安全可靠所述宿主机Agent还用于在发送所述操作指令的同时向所述虚拟机Agent发送从所述调度控制模块3接收到的令牌。
虚拟机Agent 6用于执行所述操作指令,具体的,所述虚拟机Agent6用于接受调度控制模块3发送的软件安装指令,向所述调度控制模块3发送获取软件相关的标准配置文件的请求、分析所述标准配置文件和报告操作指令执行状况、向软件仓库管理模块4请求下载软件包,所述标准配置文件可以包括软件名称、软件在软件包中的位置和软件权限,所述标准配置文件可以直接存储在所述调度控制模块3中,也可以另外存放于一元数据模块7,供所述调度控制模块3在需要时进行调取,另外,所述虚拟机Agent 6还用于生成一密钥,所述虚拟机Agent 6将所述密钥和从所述宿主机Agent 5接收到的令牌发送给所述调度控制模块3,在所述虚拟机Agent 6和调度控制模块3通过令牌握手后,可以通过密钥保证所述虚拟机Agent 6从调度控制模块3获取标准配置文件等后续数据传输的安全可靠,需要说明的是,关于虚拟机Agent 6接受调度控制模块3操作指令的通讯机制中,虚拟机Agent 6如果要接受调度控制模块3下发的操作指令,传统的通讯方式是虚拟机启动服务监听某端口等待调度控制模块访问,但是这样对用户虚拟机的侵入性比较大,本发明通过宿主机Agent 5传递调度控制模块3要发送给虚拟机Agent 6的操作指令,利用这种虚拟化框架的通讯机制来以事件触发方式通知虚拟机Agent 6,首先不会占用虚拟机Agent 6通讯端口,同时虚拟机Agent 6也更安全可靠。
所述软件仓库管理模块4用于存储和提供各种软件包,即接受软件包管理模块1上传软件包和查询软件包信息的指令、接受虚拟机Agent 6的下载软件包的操作指令和标准配置文件、管理各种软件包。
所述元数据模块7用于存储和提供所述标准配置文件。
本发明为用户提供依赖虚拟化平台提供的软件安装服务平台,用户通过终端服务模块可一键安装软件到用户相关的虚拟机中,通过虚拟化框架提供的通讯机制在随时触发虚拟机的软件安装或卸载过程,利用此技术用户可更方便部署、管理自己的集群环境。
另外,虚拟机Agent 6与调度控制模块3交互的安全机制是必须更多考虑的因数,本发明通过在调度控制模块3下发操作指令给虚拟机Agent6的同时传递本次操作所用的令牌,然后虚拟机Agent 6与调度控制模块3可使用该令牌来确认自己的身份,双方握手后,可由虚拟机Agent 6提供本次通话时执行业务数据传递的密钥,从而保证数据传输的安全可靠性。
图2是本发明一实施例的软件操作方法示意图,图3是图2中步骤S5的安装软件详细流程图,图4是图2中步骤S5的卸载软件详细流程图。
如图1至图4所示,本发明提供一种软件操作方法,包括:
步骤S1,软件包管理模块1接受用户的软件上传请求、将软件打包发送到所述软件仓库管理模块4以及生成软件包的标准配置文件并发送到所述元数据模块7,具体的,所述标准配置文件的格式包括软件名称、版本号和软件在软件包中的相对位置,另外,所述标准配置文件的格式还包括软件安装脚本相对路径、软件卸载脚本相对路径或软件权限中的一种或任意组合;
步骤S2,终端服务模块2获取用户的操作请求,根据所述操作请求生成操作指令并发送给所述调度控制模块3,具体的,所述操作请求包括安装软件请求或卸载软件请求,例如,用户在终端设备上选择合适的待安装软件和需要安装此软件的运行中虚拟机后,点击“安装”操作,终端服务模块3接受到用户操作请求后,发送相关的操作指令给调度控制模块,其中,所述安装软件请求包括虚拟机Agent 6的名称、宿主机Agent 5的物理地址、软件标示信息和软件安装路径的信息;所述卸载软件请求包括虚拟机Agent 6的名称、宿主机Agent 5的物理地址、软件标示信息和软件卸载路径的信息;
步骤S3,调度控制模块3将所述操作指令发送给所述宿主机Agent 5,具体的,为了供调度控制模块3和虚拟机Agent 6互相确认身份,保证数据传输安全可靠,所述调度控制模块3将操作指令发送给所述宿主机Agent 5的同时向所述宿主机Agent 5发送一令牌;
步骤S4,宿主机Agent 5将所述操作指令发送给虚拟机Agent 6,具体的,本步骤中所述宿主机Agent 5根据所述虚拟机Agent 6的不同虚拟化技术采用相应的消息通讯机制,例如所述宿主机Agent 5与基于Xen架构的虚拟机Agent 6通讯时采用Xenstore消息通讯机制发送所述操作指令给所述虚拟机Agent 6,另外,为了供调度控制模块3和虚拟机Agent 6互相确认身份,保证数据传输安全可靠,所述宿主机Agent 5将所述操作指令发送给虚拟机Agent 6的同时向所述虚拟机Agent 6发送所述令牌;
步骤S5,虚拟机Agent执行所述操作指令。
具体的,如图3所示,当所述操作请求为安装软件请求时,步骤S5包括:
步骤S511,所述虚拟机Agent 6生成一密钥,并将所述密钥和从所述宿主机Agent5收到的令牌发送给所述调度控制模块,通过密钥保证所述虚拟机Agent 6从调度控制模块3获取标准配置文件等后续数据传输的安全可靠;
步骤S512,所述虚拟机Agent 6从所述调度控制模块3获取软件包的标准配置文件,具体的,所述标准配置文件可直接存储于所述调度控制模块3,也可存储于一元数据模块7中,当所述虚拟机Agent 6需要获取所述标准配置文件时,所述调度控制模块3从一元数据模块7获取所述标准配置文件,例如调度控制模块3向一元数据模块7发送获取所述标准配置文件的请求和密钥,然后元数据模块7将标准配置文件和密钥发送给调度控制模块3,调度控制模块3再将标准配置文件和密钥发送给虚拟机Agent 6;
步骤S513,所述虚拟机Agent 6分析所述标准配置文件并向所述软件仓库管理模块3请求下载指定软件标示信息和版本的软件包;
步骤S514,所述软件仓库管理模块4根据所述请求向所述虚拟机Agent 6发送软件包;
步骤S515,所述虚拟机Agent 6向所述调度控制模块3报告软件包下载完成;
步骤S516,所述虚拟机Agent 6安装所述软件包并向所述调度控制模块3报告软件安装执行情况,如软件安装进度、软件安装完成等情况,所述虚拟机Agent 6可根据标准配置文件中指定的软件安装脚本相对路径安装所述软件包,没有指定安装脚本相对路径时虚拟机Agent采用默认的安装脚本执行安装过程。
如图4所示,当所述操作请求为卸载软件请求时,步骤S5包括:
步骤S521,所述虚拟机Agent 6从所述调度控制模块3获取软件包的标准配置文件;
步骤S522,所述虚拟机Agent 6卸载所述软件包并向所述调度控制模块报告软件卸载执行情况。
本发明通过终端服务模块先获取用户的操作请求,根据所述操作请求生成操作指令并发送给所述调度控制模块,调度控制模块再将所述操作指令发送给所述宿主机Agent,然后宿主机Agent将所述操作指令发送给虚拟机Agent,最后虚拟机Agent执行所述操作指令,为用户提供依赖虚拟化平台提供的软件安装服务平台,用户通过终端服务模块可一键安装软件到用户相关的虚拟机中,通过虚拟化框架提供的通讯机制在随时触发虚拟机的软件安装或卸载过程,利用此技术用户可更方便部署、管理自己的集群环境。
另外,通过软件包管理模块接受用户的软件上传请求、将软件打包发送到所述软件仓库管理模块以及生成软件相关的标准配置文件并发送到所述元数据模块,可方便更多的第三方应用开发者提供自己的应用软件包给终端用户使用,本发明可整合IaaS和SaaS两类系统,把硬件资源、软件资源都以非常便捷的方式如通过终端服务模块的终端界面操作方式进行管理和使用。
此外,通过调度控制模块先将所述操作指令发送给所述宿主机Agent,然后宿主机Agent将所述操作指令发送给虚拟机Agent,实现利用虚拟化框架的通讯机制来以事件触发方式通知虚拟机Agent,不会占用虚拟机通讯端口,而且虚拟机Agent也更安全可靠。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。

Claims (17)

1.一种软件操作系统,其特征在于,包括:终端服务模块、调度控制模块、软件包管理模块、软件仓库管理模块、宿主机Agent和虚拟机Agent,其中,
所述终端服务模块用于获取用户的操作请求并发送给所述调度控制模块;
所述调度控制模块用于根据操作请求生成操作指令并发送给宿主机Agent;
所述宿主机Agent用于将所述操作指令发送给虚拟机Agent;
所述虚拟机Agent用于执行所述操作指令;
所述软件仓库管理模块用于存储和提供各种软件包;
其中,所述操作请求包括安装软件请求或卸载软件请求;
所述软件包管理模块用于接受用户的软件上传请求、将软件打包发送到所述软件仓库管理模块和生成标准配置文件并发送到一元数据模块;
所述调度控制模块还用于在发送所述操作指令的同时向所述宿主机Agent发送一令牌;
所述宿主机Agent还用于在发送所述操作指令的同时向所述虚拟机Agent发送所述令牌。
2.如权利要求1所述的软件操作系统,其特征在于,所述安装软件请求包括虚拟机Agent的名称、宿主机Agent的物理地址、软件标示信息和软件安装路径的信息。
3.如权利要求1所述的软件操作系统,其特征在于,所述卸载软件请求包括虚拟机Agent的名称、宿主机Agent的物理地址、软件标示信息和软件卸载路径的信息。
4.如权利要求1所述的软件操作系统,其特征在于,所述虚拟机Agent还用于向所述调度控制模块发送获取软件包的标准配置文件的请求、分析所述标准配置文件和报告操作指令执行状况,并向软件仓库管理模块请求下载软件包。
5.如权利要求1所述的软件操作系统,其特征在于,
所述虚拟机Agent还用于生成一密钥,并将所述密钥和令牌发送给所述调度控制模块。
6.如权利要求4所述的软件操作系统,其特征在于,所述元数据模块用于存储和提供所述标准配置文件,所述调度控制模块还用于向所述元数据模块发送获取所述标准配置文件的请求。
7.如权利要求6所述的软件操作系统,其特征在于,所述标准配置文件的格式包括软件名称、版本号和软件在软件包中的相对位置。
8.如权利要求7所述的软件操作系统,其特征在于,所述标准配置文件的格式还包括软件安装脚本相对路径、软件卸载脚本相对路径或软件权限中的一种或任意组合。
9.如权利要求1所述的软件操作系统,其特征在于,所述宿主机Agent根据所述虚拟机Agent的不同虚拟化技术采用相应的消息通讯机制发送所述操作指令给所述虚拟机Agent。
10.如权利要求9所述的软件操作系统,其特征在于,所述宿主机Agent与基于Xen架构的虚拟机Agent通讯时采用Xenstore消息通讯机制发送所述操作指令给所述虚拟机Agent。
11.一种软件操作方法,其特征在于,包括:
终端服务模块获取用户的操作请求并发送给调度控制模块;
调度控制模块根据所述操作请求生成操作指令并发送给宿主机Agent;
宿主机Agent将所述操作指令发送给虚拟机Agent;
虚拟机Agent执行所述操作指令;
所述操作请求包括安装软件请求或卸载软件请求;
软件包管理模块接受用户的软件上传请求、将软件打包发送到软件仓库管理模块以及生成软件包的标准配置文件并发送到一元数据模块;
所述调度控制模块将操作指令发送给所述宿主机Agent的同时向所述宿主机Agent发送一令牌;
所述宿主机Agent将所述操作指令发送给虚拟机Agent的同时向所述虚拟机Agent发送所述令牌。
12.如权利要求11所述的软件操作方法,其特征在于,当所述操作请求为安装软件请求时,所述虚拟机Agent执行所述操作指令的步骤中包括:
所述虚拟机Agent从所述调度控制模块获取软件包的标准配置文件;
所述虚拟机Agent分析所述标准配置文件并向软件仓库管理模块请求下载软件包;
所述软件仓库管理模块根据所述请求向所述虚拟机Agent发送软件包;
所述虚拟机Agent向所述调度控制模块报告软件包下载完成;
所述虚拟机Agent安装所述软件包并向所述调度控制模块报告软件安装执行情况。
13.如权利要求11所述的软件操作方法,其特征在于,在所述虚拟机Agent从所述调度控制模块获取软件相关的标准配置文件的步骤之前,还包括所述虚拟机Agent生成一密钥,并将所述密钥和令牌发送给所述调度控制模块。
14.如权利要求11所述的软件操作方法,其特征在于,当所述操作请求为卸载软件请求时,所述虚拟机Agent执行所述操作指令的步骤中包括:
所述虚拟机Agent从所述调度控制模块获取软件包的标准配置文件;
所述虚拟机Agent卸载所述软件包并向所述调度控制模块报告软件卸载执行情况。
15.如权利要求13或14所述的软件操作方法,其特征在于,所述调度控制模块从所述元数据模块获取所述标准配置文件。
16.如权利要求11所述的软件操作方法,其特征在于,所述宿主机Agent将所述操作指令发送给虚拟机Agent的步骤中,所述宿主机Agent根据所述虚拟机Agent的不同虚拟化技术采用相应的消息通讯机制。
17.如权利要求16所述的软件操作方法,其特征在于,所述宿主机Agent与基于Xen架构的虚拟机Agent通讯时采用Xenstore消息通讯机制发送所述操作指令给所述虚拟机Agent。
CN201210009214.6A 2012-01-12 2012-01-12 软件操作系统及方法 Active CN103207802B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210009214.6A CN103207802B (zh) 2012-01-12 2012-01-12 软件操作系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210009214.6A CN103207802B (zh) 2012-01-12 2012-01-12 软件操作系统及方法

Publications (2)

Publication Number Publication Date
CN103207802A CN103207802A (zh) 2013-07-17
CN103207802B true CN103207802B (zh) 2018-10-19

Family

ID=48755033

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210009214.6A Active CN103207802B (zh) 2012-01-12 2012-01-12 软件操作系统及方法

Country Status (1)

Country Link
CN (1) CN103207802B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103425511B (zh) * 2013-08-16 2016-08-24 北京华胜天成科技股份有限公司 云计算环境中应用软件安装部署的系统及方法
CN107608710B (zh) * 2017-08-31 2021-08-31 华为技术有限公司 基于Jenkins工具的软件项目构建任务配置方法及装置
CN107908400A (zh) * 2017-12-07 2018-04-13 中国舰船研究设计中心 一种可重组的显控软件集成框架
CN111930814B (zh) * 2020-05-29 2024-02-27 武汉达梦数据库股份有限公司 一种基于etl系统的文件事件的调度方法和etl系统
CN113064600B (zh) * 2021-04-20 2022-12-02 支付宝(杭州)信息技术有限公司 部署应用的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102110009A (zh) * 2009-12-28 2011-06-29 中国移动通信集团公司 一种在虚拟化平台中部署应用的方法及虚拟平台管理器
CN102122274A (zh) * 2010-01-10 2011-07-13 微软公司 虚拟化解决方案的自动化配置和安装
CN102236554A (zh) * 2011-07-18 2011-11-09 国家电网公司 在线应用软件的构建平台、系统和方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102110009A (zh) * 2009-12-28 2011-06-29 中国移动通信集团公司 一种在虚拟化平台中部署应用的方法及虚拟平台管理器
CN102122274A (zh) * 2010-01-10 2011-07-13 微软公司 虚拟化解决方案的自动化配置和安装
CN102236554A (zh) * 2011-07-18 2011-11-09 国家电网公司 在线应用软件的构建平台、系统和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"虚拟机管理平台中的虚拟机代理服务机制研究";赵彦琨;《中国优秀硕士学位论文全文数据库信息科技辑》;20111215;第2011年卷(第S2期);第2.1节、第4.2节 *

Also Published As

Publication number Publication date
CN103207802A (zh) 2013-07-17

Similar Documents

Publication Publication Date Title
US11275593B2 (en) Leveraging microservice containers to provide tenant isolation in a multi-tenant API gateway
EP3688592B1 (en) Dynamic migration of groups of containers
WO2018103521A1 (zh) 服务器的监控方法、装置和存储介质
CN109478134B (zh) 用跨账户别名执行按需网络代码
KR101507919B1 (ko) 가상 데스크탑 서비스를 위한 방법 및 장치
CN109922106B (zh) 基于Docker容器实现的云端手机系统
CN103207802B (zh) 软件操作系统及方法
CN105453035B (zh) 用于接收对存储在计算机系统处的软件组件的更新的方法
KR101369428B1 (ko) 이종의 게스트 오퍼레이팅 시스템을 지원하는 휴대용 단말을 위한 어플리케이션 관리 장치 및 방법
CN104113430A (zh) 一种云计算数据中心自动化部署软件架构设计
CN112905337A (zh) 软硬件混合部署的MySQL集群调度方法及装置
US11888758B2 (en) Methods and apparatus to provide a custom installable open virtualization application file for on-premise installation via the cloud
KR20140143953A (ko) 가상 데스크탑 서비스를 위한 장치 및 가상 데스크탑 서비스 방법
US20230300406A1 (en) Methods for media streaming content preparation for an application provider in 5g networks
CN110493891A (zh) 资源分配方法、装置及系统
KR20140128017A (ko) 정보처리장치 및 그 제어방법
US20220369073A1 (en) Methods for implementing various uplink streaming deployment scenarios in 5g networks
CN115669000A (zh) 用于5g网络中的即时内容准备的方法和装置
US20140189076A1 (en) Configuration of computer systems via simple object access protocol connections
CN109032684A (zh) 一种基于安卓系统广播插件的实现方法及终端

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
ASS Succession or assignment of patent right

Owner name: SHENGDA NETWORK DEVELOPMENT CO., LTD., SHANGHAI

Free format text: FORMER OWNER: SHANGHAI SHENGXIAO CLOUD COMPUTING TECHNOLOGY CO., LTD.

Effective date: 20141222

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20141222

Address after: 201203 402-B room, No. 727 Zhangjiang Road, Shanghai, Pudong New Area

Applicant after: Shanghai Shangda Networking Development Co., Ltd.

Address before: 201203 Shanghai Guo Shou Jing Road, Zhangjiang High Tech Park of Pudong New Area No. 356 building 3 room 124

Applicant before: Shanghai Shengxiao Cloud Computing Technology Co., Ltd.

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant