由于VM是可能存在于不同节点上,所以当一个计算节点挂掉后,可以把挂掉的节点运行的VM在新的节点上继续运行。

虽然快照功能可以做恢复使用,但是毕竟快照只能恢复固定时间的VM,所以虚拟机备份很重要!对做好热备份有很大的帮助!
 
注:以测试集群为例,把c01上的vm1备份到c02上面
 
步骤:
1.首先,查看待备份vm1的信息:
     在目录“/var/lib/nova/instances/$VM_ID/”下面有如下文件:
      console.log  disk  libvirt.xml
     其中,disk里面没有包含数据,只是一个包含vm基本信息的文件。
2.在“/var/lib/nova/instances/$VM_ID/”目录下输入如下信息: kvm-img info disk
3.在/var/lib/nova/instances/下新建目录backup_vm1,把上述信息备份到c02下的一个目录/var/lib/nova/instances/backup_vm1下面。
4.用disk生成新的磁盘文件newdisk:qemu-img convert disk –O qcow2 newdisk
5.在c02上新建和vm1同配置的虚拟机vm2,保持vm2关闭状态。
6.进入到c02上的/etc/libvirt/qemu/,编辑执行对应得编号:virsh edit $instance-Number
(使用virsh edit,直接用使用vi后,在define会覆盖修改内容)
7.把file和path的路径都改成备份文件backup_vm1中文件的路径。
<disk type='file' device='disk'> 
      <driver name='qemu' type='qcow2' cache='none'/> 
      <source file= '/var/lib/nova/instances/backup_vm1/newdisk' /> 
      <target dev='vda' bus='virtio'/> 
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> 
    </disk> 
    <controller type='usb' index='0'> 
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> 
    </controller> 
    <interface type='bridge'> 
      <mac address='fa:16:3e:f9:55:56'/> 
      <source bridge='br-int'/> 
      <virtualport type='openvswitch'> 
        <parameters interfaceid='e5198be1-22ce-46b6-ba83-3f9f7d6b928d'/> 
      </virtualport> 
      <target dev='tape5198be1-22'/> 
      <model type='virtio'/> 
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> 
    </interface> 
    <serial type='file'> 
      <source path=' /var/lib/nova/instances/backup_vm1/console.log '/> 
      <target port='0'/> 
    </serial> 
    <serial type='pty'> 
      <target port='1'/> 
    </serial> 
    <console type='file'> 
      <source path='/var/lib/nova/instances/backup_vm1/console.log'/> 
      <target type='serial' port='0'/> 
    </console> 
    <input type='tablet' bus='usb'/> 
    <input type='mouse' bus='ps2'/> 
    <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' keymap='en-us'> 
      <listen type='address' address='0.0.0.0'/> 
    </graphics> 
    <video> 
      <model type='cirrus' vram='9216' heads='1'/> 
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> 
    </video>
8.启动vm2即可!

openStack vm备份的更多相关文章

  1. openstack VM可以ping外部网络,但是外部网络ping不通VM

    经过无数次的尝试,终于搭建好了完整的Openstack,本来VM可以获取到IP地址,但是等到我大功告成的时候,突然发现外部网络却不能ping进VM,我可是整整折腾了我几个通宵,这是哭啊.然而,皇天不负 ...

  2. openstack vm image

    1,openstack 基于iso生成镜像

  3. VCenter中嵌套openstack VM不能ping通外部网络问题解决的方法

    问题描写叙述: 近期搭建了vCenter环境,并使用vCenter创建的VM搭建了一套openstack环境.在验证openstack的外网功能时.发现报文死活ping不通外网,抓包发现报文在vcen ...

  4. openstack vm实例pxe无法启动

    问题如下: 创建vm没有任何报错,打开控制台提示: SeaBIOS (versio xxxxxxx) Machine UUID xxxxxxxxxx iPXE (http://ipxe.org) 00 ...

  5. Linux运维--15.OpenStack vm使用keepalived 实现负载均衡

    外接mariadb集群 实现负载均衡 实验环境 10.0.1.27 galera1 10.0.1.6 galera2 10.0.1.23 galera3 10.0.1.17 harpoxy1 hapr ...

  6. openstack vm ping 114.114.114.114

    route add -net 0.0.0.0 netmask 0.0.0.0 gateway 192.168.0.131 route del -net 0.0.0.0 netmask 0.0.0.0 ...

  7. 通过递增快照备份 Azure 非托管 VM 磁盘

    概述 Azure 存储提供创建 Blob 快照的功能. 快照将捕获该时间点的 Blob 状态. 本文介绍有关如何使用快照维护虚拟机磁盘备份的方案. 如果选择不使用 Azure 备份和恢复服务,但想要为 ...

  8. OpenStack 企业私有云的若干需求(4):混合云支持 (Hybrid Cloud Support)

    本系列会介绍OpenStack 企业私有云的几个需求: 自动扩展(Auto-scaling)支持 多租户和租户隔离 (multi-tenancy and tenancy isolation) 混合云( ...

  9. OpenStack 2018 年终盘点

    目录 文章目录 目录 前言 OpenStack 一年来的成长 Nova Cinder Neutron Ironic Cyborg Octavia Kolla Magnum Zun Kuryr 从 Op ...

随机推荐

  1. 11 redis之rdb快照持久化

    一:Redis持久化配置 Redis的持久化有2种方式[快照,是日志] 二:Rdb快照的配置选项 save 900 1 // 900内,有1条写入,则产生快照 save 300 1000 // 如果3 ...

  2. diy文件系统上创建文件的流程

    [0]README 0.1) source code are from orange's implemention of a os , and for complete code , please v ...

  3. Python中的注解“@” 、Java 注解

    https://blog.csdn.net/u013474436/article/details/75675113 https://blog.csdn.net/briblue/article/deta ...

  4. 【BZOJ4520】[Cqoi2016]K远点对 kd-tree+堆

    [BZOJ4520][Cqoi2016]K远点对 Description 已知平面内 N 个点的坐标,求欧氏距离下的第 K 远点对. Input 输入文件第一行为用空格隔开的两个整数 N, K.接下来 ...

  5. Grunt实战 --- 通过nodejs和Grunt实现项目在线构建

    本文主要说明,实现在线自动构建项目的实现方法.

  6. 关于wx.redirectTo、wx.navigateTo失效问题

    问题:在app.json页面中若配置了tabBar,并且要跳转的目标页面也在tabBar中时,那么常用的几种页面跳转方式便失效了.即不能跳转到tabBar中定义的页面. 解决办法:若要跳转至tabBa ...

  7. (转)nginx-rtmp-module和ffmpeg搭建实时HLS切片

    1.rtmp服务器 nginx+pcre+zlib+openssl+nginx-rtmp-module ./configure \ --prefix=/usr/local/nginx \ --sbin ...

  8. Javascript代码收集

    1.模仿jquery each 原文地址 function each(obj, fn){ var i; if(Object.prototype.toString.call(obj) === '[obj ...

  9. Gemini.Workflow 双子工作流入门教程五:业务表单开发

    简介: Gemini.Workflow 双子工作流,是一套功能强大,使用简单的工作流,简称双子流,目前配套集成在Aries框架中. 下面介绍本篇教程:业务表单开发. 业务表单开发 业务表单的开发,和在 ...

  10. Flask中的内置session

    Flask中的Session非常的奇怪,他会将你的SessionID存放在客户端的Cookie中,使用起来也非常的奇怪 1. Flask 中 session 是需要 secret_key 的 from ...