一种虚拟机内存故障测试系统方法及系统与流程
- 国知局
- 2024-07-31 23:06:50
本发明涉及网络,具体涉及一种虚拟机内存故障测试系统方法及系统。
背景技术:
1、传统方式下,服务器故障通常只会影响有限的业务和用户,而在kvm(kernel-based virtual machine)虚拟化环境下,宿主机故障会导致部署在宿主机上的多台不同业务的虚拟机出现问题,进而扩大了故障影响面,对业务整体稳定性造成冲击。虚拟化环境下硬件故障是造成宿主机宕机的主要原因,而在众多的硬件故障中,内存故障所占比例是最高的,随着内存制程越来越小,容量越来越大,内存故障发生率越来越高。
2、针对硬件稳定性,业界提出了ras(reliabilityavailability serviceability)解决方案,而内存ras特性在虚拟化平台的开发和应用需要采用故障注入的方式进行测试和验证。现有技术中,内存故障注入工具依赖向宿主机确定的物理内存地址注入相应类型的错误来进行测试,以确定注入故障的内存是否存在问题,进而判断整个内存是否正常。
3、在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
4、在虚拟化环境下,现有的内存错误注入工具无法直接将测试用故障注入到虚拟机进程所在的指定内存地址的,也不能确定所选取的注入测试用故障的物理内存地址是否在虚拟机所占用的内存范围内,因此无法验证虚拟机所占用内存发生错误时,内存ras特性是否生效,以及是否会影响到宿主机的整体稳定性。也就是说,即现有技术中内存故障测试结果的精确度不高,不能对虚拟机占用的内存进行直接测试。因此,如何直接对虚拟机所占用内存的进行内存故障测试,是需要解决的问题。
技术实现思路
1、本发明实施例提供一种虚拟机内存故障测试系统方法及系统,用以直接对虚拟机所占用内存的进行内存故障测试,提高内存故障测试结果的精确度。
2、为达上述目的,一方面,本发明实施例提供一种虚拟机内存故障测试系统方法,包括:从宿主机上选取一台虚拟机作为待测试虚拟机;在待测试虚拟机上创建进程;从进程占用的内存空间中选取一个内存地址作为测试注入目标;其中,内存地址表征测试注入目标在待测试虚拟机中的虚拟机虚拟地址;通过测试注入目标的虚拟机虚拟地址,获取测试注入目标的宿主机物理地址;根据测试注入目标的宿主机物理地址,向测试注入目标注入测试用故障;通过测试用故障,对待测试虚拟机进行内存故障测试,得到故障测试结果。
3、另一方面,本发明实施例提供一种虚拟机内存故障测试系统,包括:
4、测试注入目标确定模块,用于从宿主机上选取一台虚拟机作为待测试虚拟机;在待测试虚拟机上创建进程;从进程占用的内存空间中选取一个内存地址作为测试注入目标;其中,内存地址表征测试注入目标在待测试虚拟机中的虚拟机虚拟地址;测试注入目标转换模块,用于通过测试注入目标的虚拟机虚拟地址,获取测试注入目标的宿主机物理地址;内存故障测试模块,用于根据测试注入目标的宿主机物理地址,向测试注入目标注入测试用故障;通过测试用故障,对待测试虚拟机进行内存故障测试,得到故障测试结果。
5、同时,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述的虚拟机内存故障测试方法。
6、此外,本发明实施例还提供一种计算机设备,其包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现前述的虚拟机内存故障测试方法。
7、上述技术方案具有如下有益效果:
8、本技术方案中,将待测试的虚拟机进程所占用的内存转换为宿主机物理内存地址,从而通过内存故障测试工具,直接将测试用故障注入到虚拟机进程占用的真实物理内存地址中,完成对虚拟机的内存故障测试,从而判断出虚拟机占用内存发生故障时是否会影响宿主机的稳定性,进而提高虚拟化环境下内存故障测试的准确率。
技术特征:1.一种虚拟机内存故障测试方法,其特征在于,包括:
2.如权利要求1所述的虚拟机内存故障测试方法,其特征在于,所述通过测试注入目标的虚拟机虚拟地址,获取所述测试注入目标的宿主机物理地址,具体包括:
3.如权利要求2所述的虚拟机内存故障测试方法,其特征在于,所述通过所述测试注入目标的虚拟机虚拟地址,得到所述测试注入目标的虚拟机物理地址,具体包括:
4.如权利要求2所述的虚拟机内存故障测试方法,其特征在于,所述通过所述测试注入目标的虚拟机物理地址,得到所述测试注入目标的宿主机虚拟地址,具体包括:
5.如权利要求2所述的虚拟机内存故障测试方法,其特征在于,所述通过所述测试注入目标的宿主机虚拟地址,得到所述测试注入目标的宿主机物理地址,具体包括:
6.如权利要求1所述的虚拟机内存故障测试方法,其特征在于,通过所述测试用故障,对所述待测试虚拟机进行内存故障测试,得到故障测试结果,包括:
7.一种虚拟机内存故障测试系统,其特征在于,包括:
8.如权利要求7所述的虚拟机内存故障测试系统,其特征在于,所述测试注入目标转换模块,包括第一转换子模块、第二转换子模块和第三转换子模块,其中:
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任意一项所述的虚拟机内存故障测试方法。
10.一种计算机设备,其特征在于,其包括:
技术总结本发明实施例提供一种虚拟机内存故障测试方法,包括:从宿主机上选取待测试虚拟机并创建进程;从进程占用的内存空间中选取一个内存地址作为测试注入目标;通过测试注入目标的虚拟机虚拟地址获取其宿主机物理地址;根据测试注入目标的宿主机物理地址,向测试注入目标注入测试用故障;通过测试用故障,对待测试虚拟机进行内存故障测试,得到故障测试结果。采用本技术方案,可以确定出虚拟机占用内存所对应的真实物理内存地址,从而直接将内存故障测试工具注入到其真实物理内存地址中,完成对虚拟机的内存故障测试,从而判断虚拟机占用内存发生故障时是否会影响宿主机的稳定性,进而提高KVM虚拟化环境下内存故障测试的准确率。技术研发人员:尹哲,邱春武受保护的技术使用者:新浪技术(中国)有限公司技术研发日:技术公布日:2024/7/29本文地址:https://www.jishuxx.com/zhuanli/20240730/196019.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表