openstack手動遷移實例

手動遷移實例方法,記載如下:

我的實驗openstack環境,controller只有8G內存,compute1節點64G內存,創建虛擬機時有個重要實例分配在controller節點,用起來很卡,想把這個虛擬機從controller 遷移到compute1去,手動遷移過程如下:

1.查看實例ID

2. 複製實例文件到目標節點 controller--> compute1

在controller主機操作

cd /opt/stack/data/nova/instances
scp -rp 73e4a93e-8be4-42dc-9148-af4982a11c11 [email protected]:/opt/stack/data/nova/instances

3.修改複製文件的權限,在compute1節點操作

cd   /opt/stack/data/nova/instances
chown stack:libvirt  73e4a93e-8be4-42dc-9148-af4982a11c11/ -R

4.在mysql數據庫修改實例節點信息

mysql>use nova_cell1
mysql> select host,node from instances where uuid='73e4a93e-8be4-42dc-9148-af4982a11c11';
+------------+------------+
| host       | node       |
+------------+------------+
| controller | controller |
+------------+------------+
1 row in set (0.00 sec)

mysql> update instances set host='compute1', node='compute1' where uuid='73e4a93e-8be4-42dc-9148-af4982a11c11';
Query OK, 1 row affected (0.04 sec)
Rows matched: 1  Changed: 1  Warnings: 0

5.檢查是否已遷移並能正常啓動

可見實例所在主機已從controller 遷移到了 compute1

啓動實例驗證

正常啓動

6. 刪除原來節點上的實例文件

在節點controller上操作

cd   /opt/stack/data/nova/instances rm -rf 73e4a93e-8be4-42dc-9148-af4982a11c