Nova虚拟机迁移


这里根据我的配置环境只讲述冷迁移(Migrate Instance)需要进行的计算节点配置而不包含热迁移(Live Migrate Instance),后者需要共享存储及Hypervisor的支持。


 compute1compute2为两个计算节点(nova-compute),创建一个虚拟机vm1vm1被调度运行在compute1节点上。选择“Migrate Instance”时,出现如下错误信息:


 

 

可以看到是ssh执行时认证出错,192.168.10.106compute2的管理IPNova在进行迁移时,以“nova”用户的身份执

行命令,这样我们就想到了是密码出错或是在迁移时候因没有配置ssh自动登录因此需要输入密码造成的。

 

进入到compute1系统中,执行“ssh nova@compute2”命令测试一下,果然无法自动登录,因此需要对compute1

compute2分别进行以下配置来解决:

 

计算节点配置

 

compute1系统中:

 

1. 执行命令“usermod -s /bin/bash nova”;

2. 执行命令“su - nova”,使之后的命令以nova身份运行;

3. 执行命令“ssh-keygen”生成公钥和私钥,一路按“Enter”键到结束;

4. 执行命令“ssh-copy-id compute2”,将compute1的公钥拷贝到compute2

5. 生成/home/nova/.ssh/config文件,添加如下图内容:

 

 

compute2系统中:

执行和上面同样的命令序列,把“ssh-copy-id compute2”改为“ssh-copy-id compute1”即可。

 

迁移虚拟机


配置完毕,在Horizon界面选择“Migrate Instance”,界面如下:


 

 

迁移完毕时,看到如下图,vm1Host变成了compute2:


 

 

原文地址:https://www.cnblogs.com/woshiweige/p/4518413.html