Migrate 操作会先将Instance停掉,也就是所谓的 冷迁移 。而 Live Migrate 是热迁移,也就在线迁移,Instance不会停机,
 
Live Migrate 分两种:
 
    1、源和目标节点没有共享存储,Instance 在迁移的时候需要将其镜像文件从源节点传到目标节点,这叫做Block Migrate (块迁移)
    2、源和目标节点使用共享存储,Instance的镜像文件不需要迁移,只需要将 Instance 的状态迁移到目标节点
 
源和目标节点需要满足一些条件才能支持 Live Migrate :
 
    1、源和目标节点的CPU类型要一致
    2、源和目标节点的Libvirt版本要一致
    3、源和目标节点能互相识别对方的主机名称,比如可以在 /etc/hosts 中加入对方的条目
    4、在源和目标节点的 /etc/nova/nova.conf 中指明在线迁移时使用 TCP 协议
 
[libvirt]
live_migration_uri = qemu+tcp://stack@%s/system
cpu_mode = none
virt_type = kvm
 
    5、Instance 使用config Driver 保存其metadata。在block Migrate过程中,该config driver 也需要迁移到目标节点。由于目前libvirt 只支持 vfat 类型的config driver,所以必须在 /etc/nova/nova.conf 中指明 launch instance 时创建 config driver
 
[DEFAULT]
config_driver_format = vfat
 
    6、源和目标节点的Libvirt TCP 远程监听服务得打开,需要在下面两个配置文件中做一点配置
 
/etc/default/libvirt-bin
 
    start_libvirtd="yes"
    libvirtd_opts="-d -l"
 
 
/etc/libvirt/libvirtd.conf
 
    listen_tls = 0
    listen_tcp = 1
    unix_sock_group = "libvirtd"
    unix_sock_ro_perms = "0777"
    unix_sock_rw_perms = "0770"
    auth_unix_ro = "none"
    auth_unix_rw = "none"
    auth_tcp = "none"
 
然后重启libvirtd 服务  service libvirt-bin restart
 
下面是非共享存储操作流程
 
Web UI 操作
 
 
迁移的时候如果使用的不是共享存储,需要勾选 Block Migrate
还有一个 Disk Over Commit 选项,nova在检查目标接地那磁盘空间是否够用时,按磁盘文件定义的大小计算,否则按照磁盘文件的实际大小计算。
 
在nova-compute上
 
    1、目标节点执行迁移前的准备工作,首先将instance 的数据迁移过来,主要包括镜像文件、虚拟网络等资源,日志见 n-cpu.log
    2、源节点启动迁移操作,暂停instance
    3、在目标节点上Resume instance
    4、在源节点上执行迁移的后处理工作,删除instance
    5、在目标节点上执行迁移的后处理工作,创建XML,在Hypervisor中定义instance ,使之下次能够正常启动
 
在整个迁移过程中,长ping instance,可以发现也就是一个包的延时大了一些,可以在迁移过程中instance不会停机。
 
 
下面是共享存储迁移流程
 
有很多方式可以实现共享存储,比如可以将 instance 的镜像文件放在NFS上,或者使用NAS服务器,或者分布式文件系统。
 
我们可以使用NFS方案进行实验,将NFS路径挂载到 /opt/stack/data/nova/instances 目录
 
共享存储的迁移过程和 Block Migrate 基本上一样,只是几个环境有点区别:
 
    1、向 nova-api 提交请求的时候,不能勾选 Block Migrate
    2、因为源和目标节点都能直接访问instance 的镜像,所以目标节点在准备阶段不需要传输镜像文件,源节点在迁移后的处理阶段也不需要删除instance的目录
    3、只有instance 的状态需要从源节点传输到目标节点,整个迁移速度要快很多
 
 

O042、Live Migrate 操作的更多相关文章

  1. Live Migrate 操作 - 每天5分钟玩转 OpenStack(42)

    Migrate 操作会先将 instance 停掉,也就是所谓的“冷迁移”.而 Live Migrate 是“热迁移”,也叫“在线迁移”,instance不会停机. Live Migrate 分两种: ...

  2. Migrate Instance 操作详解 - 每天5分钟玩转 OpenStack(40)

    Migrate 操作的作用是将 instance 从当前的计算节点迁移到其他节点上. Migrate 不要求源和目标节点必须共享存储,当然共享存储也是可以的. Migrate 前必须满足一个条件:计算 ...

  3. O040、Migrate Instance 操作详解

    参考https://www.cnblogs.com/CloudMan6/p/5538599.html   Migrate 操作的作用是将instance 从当前的计算节点迁移到其他的计算节点上.   ...

  4. Unshelve Instance 操作详解 - 每天5分钟玩转 OpenStack(39)

    上一节我们 shelve instance 到 Glance,本节讨论如何通过 unshelve 操作恢复该 instance. 因为 Glance 中保存了 instance 的 image,uns ...

  5. Laravel Migrate

    artisan命令行创建migrate 格式: php artisan make:migration YourFileName 示例: php artisan make:migration creat ...

  6. OpenStack(企业私有云)万里长征第五步——虚拟机Migrate&Resize

    一.前言 上一篇文章讲了OpenStack的部署和简单操作,今天介绍一下如何实现虚拟机的Migrate以及Resize.Migrate操作和Resize操作基本上属于同一种操作,Migrate操作只是 ...

  7. rails数据库操作rake db一点心得

    问题描述,对于很多的新手rails lover来说,搞定db是件头疼的事情,当建立了一个model,测试了半天发现我草列名写错了,再过一会儿发现association里面竟然没有xxx_id,这下子s ...

  8. 1122 django中orm操作

    目录 1. 静态文件的配置 手动静态文件的访问资源 静态文件的动态绑定 2.request方法 2.1 请求方式 2.2 获取前端的请求方式 request.method 2.3 request方法 ...

  9. 1122 django属性操作orm字段数据操作

    目录 1. 静态文件的配置 手动静态文件的访问资源 静态文件的动态绑定 2.request方法 2.1 请求方式 2.2 获取前端的请求方式 request.method 2.3 request方法 ...

随机推荐

  1. git 将本地项目关联到远程仓库

    初始化 在本地需要关联到远程仓库的项目根目录下执行 git init 然后关联远程仓库 [project].你需要存在一个远程仓库,名字随意,然后执行下面的命令(去掉中括号)就可以关联到该仓库. gi ...

  2. 机器学习之Xgboost算法

    知识点 """ xgboost:是一种提升算法,串行的决策树 过程: 第一棵树:目标值:1000 ,预测值:950 第二颗树:目标值:1000-950=50(残差作为输入 ...

  3. FullSync不支持中文文件名

    FullSync,能实现多种方式.协议的目录同步软件,但不支持中文文件名.

  4. centos7操作

    一.安装系统 1.下载(Minimal ISO)http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1 ...

  5. redis集群 应该注意的问题

    redis cluster注意的问题 : ‘cluster-require-full-coverage’参数的设置.该参数是redis配置文件中cluster模式的一个参数,从字面上基本就能看出它的作 ...

  6. sqlalchemy 的操作

    使用PyMySQL的前提: 1. 先建好表 2. 自己动手需要手动去写多条SQL语句 改进: 类 ------>  表 实例化 -> 数据 这种思想叫:ORM(Object Relatio ...

  7. Nmap简介

    nmap — 网络探测工具和安全/端口扫描器,参考<Nmap参考指南> 描述: Nmap (“Network Mapper(网络映射器)”) 是一款开放源代码的 网络探测和安全审核的工具. ...

  8. 【Adobe Air程序开发】用Adobe Flex3开发AIR应用程序–入门指南

    1 安装Adobe AIR 运行时,和java的JVM类似.Adobe AIR 运行时允许在桌面运行AIR应用程序,脱离游览器的束缚.下载安装文件http://labs.adobe.com/downl ...

  9. 现代化的拷贝文字---clipboard.js

    参考链接:http://www.clipboardjs.cn/

  10. PTA(Advanced Level)1083.List Grades

    Given a list of N student records with name, ID and grade. You are supposed to sort the records with ...