一 介绍
迁移是指将虚拟机从一个计算节点迁移到另外一个节点上。冷迁移是相对热迁移而言,区别在于冷迁移过程中虚拟机是关机或处于不可用状态,而热迁移则需要保证虚拟机时刻运行。
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命令将其复制到刚才新建的目录里。

Nova冷迁移与Resize相关推荐

  1. Nova组件源码分析之冷迁移与Resize

    冷迁移与Resize 1.迁移是指将虚拟机从一个计算节点迁移到另外一个节点上.冷迁移过程中虚拟机是关机或是处于不可用的状态,而热迁移则需要保证虚拟机时刻运行. 2.Resize则是指根据需求调整虚拟机 ...

  2. nova 冷迁移配置nova用户互信

    openstack 虚拟机冷迁移是nova用户通过scp命令将镜像文件拷贝至目标服务器,该过程需要设置nova用户各个节点之间(如compute81.compute82.compute83)互信,操作 ...

  3. openstack冷迁移/Resize源码分析(二)

    接上一篇 openstack冷迁移/Resize源码分析(一) 执行冷迁移/Resize /nova_queens/nova/compute/manager.py @wrap_exception()@ ...

  4. openstack 热迁移(Live Migration)和冷迁移(Cold Migration)

    一.迁移分类 1.冷迁移(cold migration),也叫静态迁移. 在迁移到另外的计算节点时,这段时间虚拟机实例是处于宕机状态的,即关闭电源的虚拟机进行迁移.      通过冷迁移,可以选择将关 ...

  5. (fuel)openstack 冷迁移+热迁移

    前言:在已经搭建好的openstack上进行虚拟机迁移,在此之前需要先创建一个虚拟机实例,具体创建过程自行百度(随便创建一下就好了,作为demo也不需要这个实例能联网啥的),参考博客openstack ...

  6. KVM虚拟机共享存储动态迁移与冷迁移

    运行环境 一. 配置nfs共享服务器 二. 配置KVM虚拟化 三. 创建桥接网卡 四. 配置kvm服务器并实现动态迁移 五. 配置冷迁移 运行环境 KVM虚拟机两台(linux 7.4) IP地址:1 ...

  7. 2021 => KVM冷迁移与热迁移

    KVM冷迁移

  8. Linux MySQL数据库冷迁移采坑记录

    Linux MySQL数据库冷迁移采坑记录 当前文件系统已满,需要将MySQL默认路径迁移到新文件系统下. MySQL数据库文件原位置:/var/lib/mysql . 要移动至:/mysql/mys ...

  9. mysql2ora datacopy,oracle的clone及冷迁移(直接拷贝数据文件)

    最近做了个oracle 10g数据冷迁移,很简单,但还是写一下基本的操作过程: 首先是准备迁移目标服务器,初始化环境,安装数据软件. 基本的环境初始化.依赖包先安装好.相关目录.用户都需要安装好(目标 ...

最新文章

  1. python configuration_Python(2.7.6) 标准日志模块 - Logging Configuration
  2. 【斜率优化】Cats Transport(luogu-CF 311B)
  3. java - 菱形输出
  4. vue路由+ elementUI表格组件:loop文章列表页enter内容页(vue路由传参userid)- 代码篇
  5. 【译】响应式CSS动画
  6. 回调机制在 Android 监听用户界面操作中的体现
  7. 计算机基础知识教程职称怎么计算,2017年职称计算机考试基础知识教程详解(二十一)...
  8. 在vsphere上迁移某台虚拟机的连锁步骤
  9. perl软件使用报错总结
  10. MATLAB调用电脑摄像头前安装图像采集工具箱硬件支持包
  11. 用java编写简单的仓库管理_仓库管理系统+可视化界面java编写
  12. CAD中怎么旋转箭头符号?
  13. 百度地图 自定义结果面板+分页+图层标注(标注点+搜索)
  14. 画一幅山水画,有庐山,日出,牛
  15. Lua语言历险记1.1——最简单最便捷的安装编译环境方式
  16. TP5.1自定义创建命令(php think make:controller app\index\User)
  17. SpringBoot教程目录
  18. 信号系统中使用的继电器
  19. 【解决SQL Server sa连接服务器失败】用户‘sa‘登录失败。已成功与服务器建立连接,但是在登录过程中发生错误
  20. Mock.js有什么用

热门文章

  1. redis hscan field数量 >= 512,开始分页!!!
  2. Java异常面试题(总结最全面的面试题)
  3. JS逆向实战17——猿人学第七题 动态字体 随风漂移
  4. SVN版本控制分支、合并功能使用
  5. 【NOIP模拟赛】逛公园
  6. STA系列 - 芯片的鲁棒性OCV之set_time_derate
  7. (一)ossim综述
  8. 安利一波VGGNet
  9. kafka生产者参数配置,灵魂拷问
  10. OPPO 发布智能助理 Breeno, 将在 5G 时代全面发力 IoT...