2冷迁移
冷迁移有两种方式:
一种方式只能在同一个openstack集群中做,另一种可以再相同或者不同的集群中做
在做冷迁移之前记得把要迁移的实例关机
2.1方法1
把主机名为YUN-19上的实例迁移到YUN-20上,两个节点在同一个集群中,其中YUN-19是控制节点
2.1.1在YUN-19上,修改数据库
(修改数据库必须要在控制节点上做)
# mysql
mysql> use nova;
mysql> update instances set host='YUN-20' where hostname='test1';
2.1.2实例文件拷贝
在YUN-19上,把实例的文件拷贝到目的端
切换到/var/lib/nova/inctances目录
# scp -r a8814340-98d5-4ed3-b99b-32ee38cfb78f/ root@192.168.0.20:/var/lib/nova/instances/
2.1.3查看文件
在YUN-20上可以看到拷贝过来的文件
[root@YUN-20 instances]# ll
total 20
drwxr-xr-x. 2 nova nova 4096 Apr 28 20:55 1c11a4b1-5df8-48f8-be5d-6e1c5efb7f99
drwxr-xr-x. 2 root root 4096 Apr 28 21:41 a8814340-98d5-4ed3-b99b-32ee38cfb78f
drwxr-xr-x. 2 nova nova 4096 Apr 28 20:55 _base
-rw-r--r--. 1 nova nova 29 Apr 28 21:28 compute_nodes
drwxr-xr-x. 2 nova nova 4096 Apr 23 23:49 locks
2.1.4新建与迁移的实例关联的网桥
切换到迁移过来实例的目录下
[root@YUN-20 a8814340-98d5-4ed3-b99b-32ee38cfb78f]# virsh define libvirt.xml
Domain instance-00000001 defined from libvirt.xml
[root@YUN-20 a8814340-98d5-4ed3-b99b-32ee38cfb78f]# virsh start instance-00000001
error: Failed to start domain instance-00000001
error: Cannot get interface MTU on 'qbr95221104-b9': No such device
通过上边的出错信息可以看到实例所绑定的网桥信息
新建网桥并查看
在新建网桥前,首先应该把YUN-19上的网桥删除
再删除之前首先关闭网桥
可以输入ifconfig命令查看到网桥信息
关闭网桥
[root@YUN-19 ~]# ifconfig qbr95221104-b9 down
删除网桥
[root@YUN-19 ~(keystone_admin)]# brctl delbr qbr95221104-b9
[root@YUN-20 a8814340-98d5-4ed3-b99b-32ee38cfb78f]# brctl addbr qbr95221104-b9
[root@YUN-20 a8814340-98d5-4ed3-b99b-32ee38cfb78f]# brctl show
bridge name bridge id STP enabled interfaces
qbr482b0524-26 8000.ea9b0ced7d50 no qvb482b0524-26
tap482b0524-26
qbr95221104-b9 8000.000000000000 no
show 8000.000000000000 no
virbr0 8000.525400d2ae89 yes virbr0-nic
[root@YUN-20 a8814340-98d5-4ed3-b99b-32ee38cfb78f]# virsh define libvirt.xml
Domain instance-00000001 defined from libvirt.xml
上边命令执行成功了
开启实例
[root@YUN-20 a8814340-98d5-4ed3-b99b-32ee38cfb78f]# virsh start instance-00000001
Domain instance-00000001 started
昨晚上面开启实例的操作后,在dash中并没有发现该实例启动,在dash中再点击“开启云主机”。
2.2方法2
把YUN-11集群中的实例迁移到YUN-19所在的集群
要迁移的实例选择linux的系统,在系统中创建目录、编辑文件,迁移后查看创建的目录和修改的文档是否正常
迁移之前关闭要迁移的实例
关闭之后把实例所在的目录做下备份,目录是2dccde39-31a4-48d5-8f62-0f963ffec481_copy
YUN-17是YUN-11所在集群上的一个计算节点
进入拷贝后的目录
[root@YUN-17 2dccde39-31a4-48d5-8f62-0f963ffec481_copy]# ll
total 6896
-rw-r-----. 1 root root 1 Apr 30 10:18 console.log
-rw-r--r--. 1 root root 7536640 Apr 30 10:18 disk
-rw-r--r--. 1 root root 79 Apr 30 10:18 disk.info
-rw-r--r--. 1 root root 1635 Apr 30 10:18 libvirt.xml
2.2.1转换镜像格式
[root