一种在线修改虚拟机内部配置的方法技术

技术编号:24120465 阅读:50 留言:0更新日期:2020-05-13 02:55
一种在线修改虚拟机内部配置的方法,首先确定物理主机与客户虚拟机之间的通信规则,然后在各个客户虚拟机上分别加载串口设备,实现各个客户虚拟机和物理主机用户空间的IO,最后控制物理主机转发各个客户虚拟机的命令至对应客户虚拟机,当虚拟机发现有命令或者参数数据时,通过相应串口设备接收后根据通信规则解析得到命令或者参数数据,进行执行并将执行结果通过相应串口设备送至物理主机,完成在线修改虚拟机内部配置。本发明专利技术与现有技术相比,不用登陆到虚拟机中,可以实现批量对虚拟机配置文件的修改,提升了工作效率,节省了工作时间。

【技术实现步骤摘要】
一种在线修改虚拟机内部配置的方法
本专利技术涉及一种在线修改虚拟机内部配置的方法。
技术介绍
近年来,在虚拟化领域的管理越来越重要,包括存储虚拟化管理、网络虚拟化管理、内存虚拟化管理、虚拟机配置管理,其中,虚拟机配置管理,由于与用户关系更密切,重要性也越来越突出。虚拟机配置管理可以分为如下几类:外部配置管理,主要是指虚拟机硬件的配置,包括虚拟机选项、配置视频和声卡设置,以及将虚拟机移动到其他主机系统或同一主机系统的其他位置,具体包括:1、更改虚拟机名称,运行虚拟机时,虚拟机的名称会显示在标题栏中,使用虚拟机的原始名称为存储虚拟机文件的目录命名;2、更改虚拟机的客户机操作系统,在虚拟机中安装的客户机操作系统,或是在创建虚拟机时指定了错误的操作系统版本,必须要更改虚拟机所配置的客户机操作系统类型;3、更改虚拟机的工作目录,更改工作目录来提高性能,例如,要在大容量快速磁盘上创建分页文件,但要将虚拟磁盘和配置文件存储在其他磁盘上,更改工作目录,将其放在快速磁盘上;4、更改虚拟机的内存分配,调整分配给虚拟机的内存量;5、配置视频和声音,为得到最好的色彩和图形显示,需要调整主机和客户机操作系统的颜色设置;6、将在中创建的虚拟机移到其他主机系统或同一主机系统的其他位置,并通过VNC客户端连接虚拟机;7、删除虚拟机,从主机文件系统中删除一个虚拟机及其所有文件;8、查看虚拟机的消息日志。内部配置管理,是指虚拟机内部的管理,具体包括如下:1、虚拟机ip管理;2、虚拟机cpu/内存信息的显示;3、虚拟机用户名密码管理;4、虚拟机内部的其它管理。上述外部配置管理可以通过系统管理员进行管理,内部配置管理只能用户进行管理,管理员不能进行统一管理,或者管理员在得知用户密码的情况下进行一个个的手动管理。虚拟机外部配置管理可以满足基本的虚拟化管理的需要,但是随着系统在实际业务当中的应用,又提出了一些新需求,包括虚拟机内部管理需求,比如直接修改虚拟机的ip、虚拟机的系统的名字等虚拟机内部的系统配置,但这方面的功能并未提供,目前对虚拟机内部配置的修改,是用户登陆到系统进行修改,比如修改虚拟机的用户密码,只能是一个个的修改。综上所述现有的虚拟机配置管理的缺陷包括:1、无法准确获取系统信息,只能进入系统才能获取系统信息;2、效率低下,手动登录系统进行一个个的操作,费时费力。因此需要针对当前情况,利用虚拟化的程序架构,并结合当前虚拟机系统的情况,开发出一种能够在线修改虚拟机内部配置的方法。
技术实现思路
本专利技术解决的技术问题是:克服现有技术的不足,提供了一种在线修改虚拟机内部配置的方法,利用虚拟机的串口设备,实现虚拟机与主机的消息传递,在此基础上实现在线修改虚拟机内部配置和获取虚拟机内部信息的功能。本专利技术的技术解决方案是:一种在线修改虚拟机内部配置的方法,包括如下步骤:(1)确定物理主机与客户虚拟机之间的通信规则;其中,物理主机上可运行多个客户虚拟机;(2)在各个客户虚拟机上分别加载串口设备,实现各个客户虚拟机和物理主机用户空间的IO,其中,各个客户虚拟机实时轮询其串口设备,以监测是否有物理主机发送的命令或者参数数据;(3)控制物理主机转发各个客户虚拟机的命令至对应客户虚拟机;(4)当虚拟机发现有命令或者参数数据时,通过相应串口设备接收后根据通信规则解析得到命令或者参数数据,进行执行并将执行结果通过相应串口设备送至物理主机,完成在线修改虚拟机内部配置。所述的物理主机与客户虚拟机之间的通信规则规定两者通信所需的命令和参数取值范围,命令包括获取客户虚拟机的网络信息、设置客户虚拟机的网络信息、控制客户虚拟机与物理主机通信。所述的步骤(3)中物理主机利用多线程技术转发各个客户虚拟机的命令至对应客户虚拟机,每个客户虚拟机对应一个线程。所述的客户虚拟机通过执行物理主机发送的命令或参数,避免分别登录实现操作。一种在线修改虚拟机内部配置的架构,包括管理端、主机端、虚拟机端,其中:管理端,实时显示主机端中物理主机、虚拟机端中客户虚拟机的操作、执行命令的数据信息,发起客户虚拟机的命令执行动作;主机端,包括物理主机,解析管理端发送的内容,将解析得到的命令或者参数数据转发至虚拟机端;虚拟机端,包括客户虚拟机,根据转发的命令和参数数据执行相应的命令,再把结果返回到主机端。本专利技术与现有技术相比的优点在于:(1)本专利技术与现有技术相比,能够批量修改虚拟机内部配置文件、不用登陆到虚拟机中、可以实现批量对虚拟机配置文件的修改,通过上述功能,系统管理员可以实现对虚拟机批量管理,比如统一设置用户名和密码,统一设置ip地址等等,提升了工作效率,节省了工作时间;(2)本专利技术与现有技术相比,能够准确获取虚拟机内部的信息,比如系统信息、用户信息,可以准确获取系统的cpu/内存使用率、获取操作系统的类型等。附图说明图1为本专利技术一种在线修改虚拟机内部配置的方法通信模式图;图2为本专利技术一种在线修改虚拟机内部配置的方法序列图。具体实施方式本专利技术针对现有技术的不足,提出一种在线修改虚拟机内部配置的方法,利用虚拟机的串口设备实现与主机的通信,并且在虚拟机内部编程实现在线修改虚拟机配置的功能。下面结合附图对本专利技术方法进行更详细的解释和说明,如图1所示为本专利技术一种在线修改虚拟机内部配置的方法通信模式图,如图2所示为本专利技术一种在线修改虚拟机内部配置的方法序列图。本专利技术方法具体包括如下步骤:第一、约定好通信规则通信规则体现在物理主机与客户虚拟机之间的通信,其中物理主机上运行有多个客户虚拟机,其通信规则如下:{type:{key:value,key:value,......}}Type:就是信息类型,比如get-ip:得到客户虚拟机的网络信息,set-ip:设置客户虚拟机的网络信息;key:value就是关键字与其关键字所对应的值,比如:name:nic1ip:192.168.1.2掩码netmask:255.255.255.0网关gateway:192.168.1.254通信规则约定完成后,客户虚拟机就依据通信规则,执行对应的方法,因此通信规则是双方通信的逻辑基础。第二、客户虚拟机加载串口设备串口设备是物理主机与客户虚拟机通信的物理基础,串口设备的特性将当前的单端口virti-console设备(virti-console设备是一个虚拟的串口设备,起到连接物理主机与客户虚拟机的作用)修改为运行在qemu和kvm上设备(即加载在客户虚拟机上),把串口设备加载到客户虚拟机上。它以简单char设备的形式向客户虚拟机公开多个端口,用于客户虚拟机和物理主机用户空间之间的简单IO。它还允许公开多个这样的设备,取消了当前单个设备的限制,其形式如下:在虚拟机里面这样显示:/dev/vportNpn。第三、主机进行命令转发本文档来自技高网
...

【技术保护点】
1.一种在线修改虚拟机内部配置的方法,其特征在于包括如下步骤:/n(1)确定物理主机与客户虚拟机之间的通信规则;其中,物理主机上可运行多个客户虚拟机;/n(2)在各个客户虚拟机上分别加载串口设备,实现各个客户虚拟机和物理主机用户空间的IO,其中,各个客户虚拟机实时轮询其串口设备,以监测是否有物理主机发送的命令或者参数数据;/n(3)控制物理主机转发各个客户虚拟机的命令至对应客户虚拟机;/n(4)当虚拟机发现有命令或者参数数据时,通过相应串口设备接收后根据通信规则解析得到命令或者参数数据,进行执行并将执行结果通过相应串口设备送至物理主机,完成在线修改虚拟机内部配置。/n

【技术特征摘要】
1.一种在线修改虚拟机内部配置的方法,其特征在于包括如下步骤:
(1)确定物理主机与客户虚拟机之间的通信规则;其中,物理主机上可运行多个客户虚拟机;
(2)在各个客户虚拟机上分别加载串口设备,实现各个客户虚拟机和物理主机用户空间的IO,其中,各个客户虚拟机实时轮询其串口设备,以监测是否有物理主机发送的命令或者参数数据;
(3)控制物理主机转发各个客户虚拟机的命令至对应客户虚拟机;
(4)当虚拟机发现有命令或者参数数据时,通过相应串口设备接收后根据通信规则解析得到命令或者参数数据,进行执行并将执行结果通过相应串口设备送至物理主机,完成在线修改虚拟机内部配置。


2.根据权利要求1所述的一种在线修改虚拟机内部配置的方法,其特征在于:所述的物理主机与客户虚拟机之间的通信规则规定两者通信所需的命令和参数取值范围,命令包括获取客户虚拟机的网络信息、设置客户虚拟机的网络信息、...

【专利技术属性】
技术研发人员:周江福卫宁张哲李国兵陈卓刘毅枫王晔毛可绪
申请(专利权)人:中国船舶工业系统工程研究院
类型:发明
国别省市:北京;11

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

1