Nova冷迁移与Resize

一 介绍
迁移是指将虚拟机从一个计算节点迁移到另外一个节点上。冷迁移是相对热迁移而言,区别在于冷迁移过程中虚拟机是关机或处于不可用状态,而热迁移则需要保证虚拟机时刻运行。
Resize则是根据需求调整虚拟机的计算能力和资源。Resize和冷迁移的工作流程相同,区别只是Resize时必须保持新的Flavor配置大于旧的配置,而冷迁移则要求两者相同。

二 Resize工作流程如下图 
三 流程解析
1 nova-api将虚拟机的状态修改为RESIZE_PREP,Resize与冷迁移属于TaskAPI任务,因此nova-api会通过nova.conductor.rpcapi.ComputeTaskAPI提供的RPC接口migrate_server()调用nova-conductor。
2 nova-conductor根据参数选择Resize的流程,生成request_spec字典,并远程调用nova-scheduler选择一个合适的目标主机,最后远程调用目标主机nova-compute。
3 目标主机上要做一些准备的动作,比如通过Resource Tracker的Claim机制检测一下主机是否满足条件等,之后通过RPC回到源主机,由源主机的nova-compute服务完成迁移。
4 在源主机上,nova-compute获取虚拟机的磁盘,网络等信息,使用cp或scp命令复制需要迁移的资源到目标主机,修改虚拟机的状态为RESIZE_MIGRATED,再通过RPC到目标主机上完成虚拟机的Resize。
5 目标主机的nova-compute根据新虚拟机的参数信息准备资源并创建,然后将虚拟机的状态修改为RESIZED。
6 管理员需要确认是否完成Resize,可以有两种选择,确认完成或回退。当确认时候会清理源主机上的资源。如果选择回退则首先到目标主机上清理资源,再到源主机上恢复到未Resize时状态。

四 配置说明
如果希望能够在本地Resize,则必须在/etc/nova/nova.conf中配置“allow_resize_to_same_host”,选项的值为“True”,默认情况下,执行的Resize都是针对非本地,即将虚拟机从一个源主机迁移到另一个目标主机的情况。执行Resize时:
[root@localhost instances]# ll
total 4
drwxr-xr-x. 2 nova nova 25 Mar 28 20:21 57835459-1d60-40ae-b0c7-381bcbaba738
drwxr-xr-x. 2 nova nova 54 Mar 28 20:23 8c940566-5996-412b-a75f-96ccc5bf810d
drwxr-xr-x. 2 nova nova 54 Mar 27 21:24 8c940566-5996-412b-a75f-96ccc5bf810d_resize
drwxr-xr-x. 2 nova nova 54 Mar 27 21:24 _base
-rw-r--r--. 1 nova nova 44 Mar 28 20:21 compute_nodes
drwxr-xr-x. 2 nova nova 93 Mar 27 21:24 locks
源主机上的虚拟机8c940566-5996-412b-a75f-96ccc5bf810d会首先关闭,并复制一份为8c940566-5996-412b-a75f-96ccc5bf810d_resize,然后以新的复制为基础完成目标主机的复制。
如果源主机和目标主机共享存储,则源主机会直接在共享的存储上使用mkdir命令建立新目录8c940566-5996-412b-a75f-96ccc5bf810d,否则,源主机需要通过SSH连接到目标主机建立这个目录。
新目录成功建立后,源主机需要将虚拟机的镜像转换为RAW格式,并使用cp(共享存储时)或scp命令将其复制到刚才新建的目录里。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值