[发明专利]一种虚拟机启动过程中的数据获取方法和云计算系统有效
申请号: | 201680003333.7 | 申请日: | 2016-11-24 |
公开(公告)号: | CN108475201B | 公开(公告)日: | 2021-02-26 |
发明(设计)人: | 邬肖元 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F9/455 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 熊永强;李稷芳 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 虚拟机 启动 过程 中的 数据 获取 方法 计算 系统 | ||
1.一种虚拟机启动过程中的数据获取方法,应用于云计算系统,所述云计算系统包括服务器、第一存储设备和第二存储设备,所述第二存储设备为镜像存储设备,所述服务器上运行虚拟化平台,其特征在于,所述方法包括以下步骤:
所述虚拟化平台的虚拟磁盘驱动接收所述虚拟机发送的读数据请求;所述读数据请求中携带有第一虚拟磁盘标识、需读取的数据块的大小值和所述需读取的数据块的偏移量,其中,所述第一虚拟磁盘标识为所述第一存储设备中为所述虚拟机分配的第一虚拟磁盘的标识;
所述虚拟磁盘驱动根据虚拟磁盘标识与操作系统标识之间的对应关系查找到所述第一虚拟磁盘标识对应的第一操作系统标识,所述第一操作系统标识是所述虚拟机需要安装的操作系统的标识;
所述虚拟磁盘驱动根据所述第一操作系统标识、所述需读取的数据块的大小值和所述需读取的数据块的偏移量,确定缓存区中是否存储有需读取的数据块,所述缓存区用于存储所述虚拟机需要读取的操作系统用于启动所述虚拟机的必要数据,所述必要数据为所述虚拟机处于启动完成状态时已读取的所述操作系统的数据;
当所述缓存区中存储有所述需读取的数据块时,所述虚拟磁盘驱动从所述缓存区中读取所述需读取的数据块,返回所述虚拟机;
当所述缓存区中没有存储所述需读取的数据块时,所述虚拟磁盘驱动根据所述第一操作系统标识、所述需读取的数据块的大小值和所述需读取的数据块的偏移量在所述第二存储设备中查找所述需读取的数据块,并将查找到的所述需读取的数据块返回给所述虚拟机。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若在所述第二存储设备中查找到的所述需读取的数据块为所述操作系统用于启动所述虚拟机的必要数据,所述虚拟磁盘驱动将所述查找到的数据块写入所述缓存区。
3.根据权利要求1所述的方法,其特征在于,所述第一操作系统标识为所述虚拟机对应的虚拟机模板的操作系统虚拟磁盘的标识。
4.根据权利要求1-3任一所述的方法,其特征在于,所述操作系统用于启动所述虚拟机的必要数据为所述虚拟机处于启动完成状态时已读取的所述操作系统的数据,所述启动完成状态包括:所述缓存区中写入的所述操作系统的数据的数量大于预定数量,所述虚拟机的CPU占用率小于预定阈值,或者所述虚拟磁盘驱动接收到所述虚拟机读写非操作系统虚拟磁盘的操作请求数量超过预定阈值。
5.根据权利要求1-3任一所述的方法,其特征在于,所述方法还包括:所述虚拟磁盘驱动将所述需读取的数据块写入所述第一虚拟磁盘。
6.根据权利要求5所述的方法,其特征在于,所述方法包括:
所述虚拟磁盘驱动将所述操作系统的非必要数据写入所述第一虚拟磁盘。
7.根据权利要求1-3任一所述的方法,其特征在于,所述缓存区位于所述服务器中或者位于所述第一存储设备中。
8.根据权利要求1-3任一所述的方法,其特征在于,所述方法还包括:
所述虚拟磁盘驱动采用缓冲链表的方式来记录写入所述缓存区的数据块的操作系统标识、数据块的大小值和数据块的偏移量。
9.根据权利要求7所述的方法,其特征在于,所述虚拟磁盘驱动确定所述缓存区中没有存储所述需读取的数据块,且在所述第二存储设备中查找到的所述需读取的数据块的数据为所述操作系统用于启动所述虚拟机的必要数据时,所述方法还包括:
在对应所述操作系统的缓冲链表的描述对象上记录所述查找到的数据块的大小值和数据块的偏移量,并把所述查找到的数据块保存在所述缓存区中的地址保存到对应所述操作系统的所述缓冲链表的最后一个描述对象上。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680003333.7/1.html,转载请声明来源钻瓜专利网。