Openstack虚拟机迁移失败,解决虚拟机显示resize_prep状态的问题

题记:

很多用户习惯使用horizon对Openstack环境进行操作,但是我们也经常会碰到执行状态的问题,例如当我们遇到一些未知错误,系统经常会出现一些让我们纠结的现象。曾经在进行虚拟机在不同宿主机测试的过程中,一直出现mirgating状态,会由一直出现进度条,但是这个可能已经产生错误了,其中有一个不太严格的办法就是直接修改数据库来解决,通过SQL语句来更新状态值,不过这种做法需要推敲。我们也曾经遇到相关问题,跟各位进行分享。



在openstack i版本中,如果迁移调度到当前计算节点,虚拟会处于resize_prep 状态

root@controller:/var/log/nova# nova list
+--------------------------------------+-----------+--------+-------------+-------------+---------------------------+
| ID                                   | Name      | Status | Task State  | Power State | Networks                  |
+--------------------------------------+-----------+--------+-------------+-------------+---------------------------+
| 667911ae-2ebb-44e2-b453-9d3a4ff634fb | JobMaster | RESIZE | resize_prep | Running     | sharednet1=192.168.12.139 |
| 300f0dc6-ac1f-4104-a52f-2132172a3cee | JobWorker | ACTIVE | -           | Running     | sharednet1=192.168.12.140 |
| ee91f3c0-ae50-4377-8ecf-59d59bc2e08b | RabbitMQ  | ACTIVE | -           | Running     | sharednet1=192.168.12.138 |
+--------------------------------------+-----------+--------+-------------+-------------+---------------------------+

compute 日志

2016-01-13 10:32:31.466 1924 INFO nova.compute.manager [-] [instance: 582dddf4-5d33-4689-a946-d5958aa263d6] During sync_power_state the instance has a pending task (resize_prep). Skip.


解决办法,通过数据库重置虚拟机状态

先查询数据库状态

use nova;
select task_state,vm_state,power_state,display_name,deleted from instances where display_name="JobMaster";

Openstack虚拟机迁移失败,解决虚拟机显示resize_prep状态的问题_第1张图片

修改 update instances set task_state = NULL, vm_state = 'stopped', power_state = 4 where display_name="JobMaster" and deleted=0;

Openstack虚拟机迁移失败,解决虚拟机显示resize_prep状态的问题_第2张图片


nova list

root@controller:/var/log/nova# nova list
+--------------------------------------+-----------+---------+------------+-------------+---------------------------+
| ID                                   | Name      | Status  | Task State | Power State | Networks                  |
+--------------------------------------+-----------+---------+------------+-------------+---------------------------+
| 667911ae-2ebb-44e2-b453-9d3a4ff634fb | JobMaster | SHUTOFF | -          | Shutdown    | sharednet1=192.168.12.139 |
| 300f0dc6-ac1f-4104-a52f-2132172a3cee | JobWorker | ACTIVE  | -          | Running     | sharednet1=192.168.12.140 |
| ee91f3c0-ae50-4377-8ecf-59d59bc2e08b | RabbitMQ  | ACTIVE  | -          | Running     | sharednet1=192.168.12.138 |
+--------------------------------------+-----------+---------+------------+-------------+---------------------------+


你可能感兴趣的:(Openstack虚拟机迁移失败,解决虚拟机显示resize_prep状态的问题)