云主机QGA的功能扩展方法、装置、设备及存储介质制造方法及图纸

技术编号:24089766 阅读:55 留言:0更新日期:2020-05-09 07:32
本发明专利技术公开了一种云主机内置QGA的功能扩展方法,该方法包括:在接收到执行QGA功能的请求后,如果未在本机上查询到该请求,则可自动通过业务网络与管理网络的穿透,从处于管理网络的功能扩展服务器中下载并热加载与该请求对应的功能模块,并执行;通过这种方式,使得QGA在出现新功能后,不需要人工干预进行手动更新,从而节省了大量的人力成本,提高了QGA功能的扩展速度;本发明专利技术还公开了一种云主机内置QGA的功能扩展装置、设备及计算机可读存储介质,同样能实现上述技术效果。

Function expansion methods, devices, devices and storage media of virtual machine QGA

【技术实现步骤摘要】
云主机QGA的功能扩展方法、装置、设备及存储介质
本专利技术涉及功能扩展
,更具体地说,涉及一种云主机内置QGA的功能扩展方法、装置、设备及计算机可读存储介质。
技术介绍
QGA(qemuguestagent)是KVM(Kernel-basedVirtualMachine,开源的系统虚拟化模块)虚拟化
的工具,类似于VMware的vmtools。其作用是安装在云主机内部,辅助计算节点上的虚拟化管理工具(vmware、kvmhypervisor)完成特定功能,例如重置管理员密码,在云主机内部获取监控数据等等。目前开源社区原有的QGA组件,功能模块间的耦合紧密,添加或改动单个功能都需要对QGA整体升级。另外,因为云主机租户网络(业务网络)与云平台的管理网络是隔离的,没法做到在线升级更新。因此在QGA功能不断增加,频繁升级迭代的情况下,由于客户数量多,且集群使用的QGA的版本参差不齐的场景下,频繁手动地逐个升级数量众多的云主机内的QGA需要耗费大量的人力。
技术实现思路
本专利技术的目的在于提供一种云主机内置QGA的功能扩展方法、装置、设备及计算机可读存储介质,以实现简单快速的对云主机内置QGA的功能进行扩展,从而节省人力成本。为实现上述目的,本专利技术提供一种云主机内置QGA的功能扩展方法,包括:接收执行QGA功能的请求;在云主机本机上查找是否存在与所述请求对应的功能模块;其中,功能模块为对QGA进行模块化处理后生成的;若存在,则调用与所述请求对应的功能模块执行所述请求;若不存在,则通过业务网络与管理网络的穿透,从处于管理网络的功能扩展服务器中下载并热加载与所述请求对应的功能模块,并调用热加载的功能模块执行所述请求。其中,所述功能模块为对QGA的各个功能打包成的单独的so文件或者dll文件。其中,所述通过业务网络与管理网络的穿透,从处于管理网络的功能扩展服务器中下载并热加载与所述请求对应的功能模块,包括:通过所述云主机与网络节点之间的业务网络向所述网络节点的URL发送模块标识查询请求,以使所述网络节点采用socket共享的方式将所述模块标识查询请求发送至处于管理网络的功能扩展服务器;接收所述功能扩展服务器按照原请求路径返回的模块标识信息;从所述模块标识信息中确定待下载模块标识,并根据所述待下载模块标识及所述云主机与所述网络节点之间的业务网络,向所述网络节点的URL发送模块下载请求,以使所述网络节点采用socket共享的方式将所述模块下载请求发送至处于管理网络的功能扩展服务器;接收所述功能扩展服务器按照请求路径返回的待下载模块数据,并根据所述待下载模块数据实现功能模块的热加载。其中,所述模块标识查询请求中携带有所述请求中的查询函数,以使所述功能扩展服务器根据预先存储的不同查询函数与不同模块标识之间的对应关系,查找与所述模块标识查询请求对应的模块标识信息;所述模块标识信息包括不同版本的功能模块的模块名称。其中,所述网络节点采用socket共享的方式将所述模块标识查询请求/模块下载请求发送至处于管理网络的功能扩展服务器,包括:所述网络节点通过处于业务网络的ns-inner-proxy服务接收所述模块标识查询请求/模块下载请求,并采用socket共享的方式转发至处于所述管理网络的ns-outer-agent服务,通过所述ns-outer-agent服务将所述模块标识查询请求/模块下载请求发送至所述功能扩展服务器。为实现上述目的,本专利技术进一步提供一种云主机内置QGA的功能扩展装置,包括:接收模块,用于接收执行QGA功能的请求;查找模块,用于在云主机本机上查找是否存在与所述请求对应的功能模块;其中,功能模块为对QGA进行模块化处理后生成的;第一执行模块,用于在云主机本机上查找到与所述请求对应的功能模块后,调用与所述请求对应的功能模块执行所述请求;功能模块获取模块,用于在云主机本机上查找不到与所述请求对应的功能模块后,通过业务网络与管理网络的穿透,从处于管理网络的功能扩展服务器中下载并热加载与所述请求对应的功能模块;第二执行模块,用调用热加载的功能模块执行所述请求。其中,所述功能模块为对QGA的各个功能打包成的单独的so文件或者dll文件。其中,所述功能模块获取模块包括:第一请求发送单元,用于通过所述云主机与网络节点之间的业务网络向所述网络节点的URL发送模块标识查询请求,以使所述网络节点采用socket共享的方式将所述模块标识查询请求发送至处于管理网络的功能扩展服务器;第一接收单元,用于接收所述功能扩展服务器按照原请求路径返回的模块标识信息;标识确定单元,用于从所述模块标识信息中确定待下载模块标识;第二请求发送单元,用于根据所述待下载模块标识及所述云主机与所述网络节点之间的业务网络,向所述网络节点的URL发送模块下载请求,以使所述网络节点采用socket共享的方式将所述模块下载请求发送至处于管理网络的功能扩展服务器;第二接收单元,用于接收所述功能扩展服务器按照请求路径返回的待下载模块数据;热加载单元,用于根据所述待下载模块数据实现功能模块的热加载。为实现上述目的,本专利技术进一步提供一种云主机内置QGA的功能扩展设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述的功能扩展方法的步骤。为实现上述目的,本专利技术进一步提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的功能扩展方法的步骤。通过以上方案可知,本专利技术实施例提供的一种云主机内置QGA的功能扩展方法,包括:接收执行QGA功能的请求;在云主机本机上查找是否存在与请求对应的功能模块;其中,功能模块为对QGA进行模块化处理后生成的;若存在,则调用与请求对应的功能模块执行请求;若不存在,则通过业务网络与管理网络的穿透,从处于管理网络的功能扩展服务器中下载并热加载与请求对应的功能模块,并调用热加载的功能模块执行请求。可见,在本申请中,在接收到执行QGA功能的请求后,如果未在本机上查询到该请求,则可自动通过业务网络与管理网络的穿透,从处于管理网络的功能扩展服务器中下载并热加载与该请求对应的功能模块,并执行;通过这种方式,使得QGA在出现新功能后,不需要人工干预进行手动更新,从而节省了大量的人力成本,提高了QGA功能的扩展速度;本专利技术还公开了一种云主机内置QGA的功能扩展装置、设备及计算机可读存储介质,同样能实现上述技术效果。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例公开的一种本文档来自技高网...

【技术保护点】
1.一种云主机内置QGA的功能扩展方法,其特征在于,包括:/n接收执行QGA功能的请求;/n在云主机本机上查找是否存在与所述请求对应的功能模块;其中,功能模块为对QGA进行模块化处理后生成的;/n若存在,则调用与所述请求对应的功能模块执行所述请求;/n若不存在,则通过业务网络与管理网络的穿透,从处于管理网络的功能扩展服务器中下载并热加载与所述请求对应的功能模块,并调用热加载的功能模块执行所述请求。/n

【技术特征摘要】
1.一种云主机内置QGA的功能扩展方法,其特征在于,包括:
接收执行QGA功能的请求;
在云主机本机上查找是否存在与所述请求对应的功能模块;其中,功能模块为对QGA进行模块化处理后生成的;
若存在,则调用与所述请求对应的功能模块执行所述请求;
若不存在,则通过业务网络与管理网络的穿透,从处于管理网络的功能扩展服务器中下载并热加载与所述请求对应的功能模块,并调用热加载的功能模块执行所述请求。


2.根据权利要求1所述的功能扩展方法,其特征在于,所述功能模块为对QGA的各个功能打包成的单独的so文件或者dll文件。


3.根据权利要求1或2所述的功能扩展方法,其特征在于,所述通过业务网络与管理网络的穿透,从处于管理网络的功能扩展服务器中下载并热加载与所述请求对应的功能模块,包括:
通过所述云主机与网络节点之间的业务网络向所述网络节点的URL发送模块标识查询请求,以使所述网络节点采用socket共享的方式将所述模块标识查询请求发送至处于管理网络的功能扩展服务器;
接收所述功能扩展服务器按照原请求路径返回的模块标识信息;
从所述模块标识信息中确定待下载模块标识,并根据所述待下载模块标识及所述云主机与所述网络节点之间的业务网络,向所述网络节点的URL发送模块下载请求,以使所述网络节点采用socket共享的方式将所述模块下载请求发送至处于管理网络的功能扩展服务器;
接收所述功能扩展服务器按照请求路径返回的待下载模块数据,并根据所述待下载模块数据实现功能模块的热加载。


4.根据权利要求3所述的功能扩展方法,其特征在于,
所述模块标识查询请求中携带有所述请求中的查询函数,以使所述功能扩展服务器根据预先存储的不同查询函数与不同模块标识之间的对应关系,查找与所述模块标识查询请求对应的模块标识信息;所述模块标识信息包括不同版本的功能模块的模块名称。


5.根据权利要求3所述的功能扩展方法,其特征在于,所述网络节点采用socket共享的方式将所述模块标识查询请求/模块下载请求发送至处于管理网络的功能扩展服务器,包括:
所述网络节点通过处于业务网络的ns-inner-proxy服务接收所述模块标识查询请求/模块下载请求,并采用socket共享的方式转发至处于所述管理网络的ns-outer-agent服务,通过所述ns-out...

【专利技术属性】
技术研发人员:郭敬宇
申请(专利权)人:济南浪潮数据技术有限公司
类型:发明
国别省市:山东;37

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

1