FusionCompute虚拟机修改内存规格后启动失败、迁移磁盘提示磁盘不存在

发布时间:  2016-12-05 浏览次数:  100 下载次数:  0
问题描述

虚拟机修改内存规格重启过程中,主机突然发生重启,主机恢复后,虚拟机启动失败、迁移提示磁盘不存在。

告警信息


处理过程

1.  根据提示磁盘不存在,查看数据库:

select * from tbl_vm_volume where instance_id='虚拟机ID';

返回结果如下图:


select * from tbl_vs_volume where vol_id=(选择上图中的VOLUME_ID);

发现有一个vol_id查无结果,他的VOLUMT_TYPE类型是MEM_SNAPSHOT_VOL

2. 取消虚拟机的内存交换磁盘,然后重新配置内存交换磁盘。或者在数据库表tbl_vs_volume里删除内存交换磁盘记录。

3. 执行service vrmd restart

4. 等待2分钟,重新打开FusionCompute,对此虚拟机打开电源,成功启动。

根因

因为修改了虚拟机内存配置后,需要重启虚拟机才能生效,但是在虚拟机未完全启动的情况下,重启了主机,导致tbl_vm_volumetbl_vs_volume数据库中记录的内存卷信息不一致,从而在启动虚拟机的时候,找到了内存卷,但是在底层发现此卷又不存在,从而提示磁盘不存在,不能迁移和启动失败。

解决方案
取消虚拟机的内存交换磁盘,然后重新配置内存交换磁盘。
建议与总结
修改虚拟机的配置时再重启的过程中,不建议重启主机,以防数据库更新失败导致数据表数据不一致。

END