虚拟机镜像文件格式-raw

    目前公司以raw作为虚拟机模板的储存方式,在部署虚拟机的时候,采用的是LV作为储存设备。这样的好处是可以用于局域网内的服务器共享,也方便在不同服务器上进行传输,单个服务器可以利用lv的快照特性来备份。

    关于LVM的介绍,可以参考鸟哥的书关于逻辑卷管理的章节,非常的详细,讲的很清楚 http://vbird.dic.ksu.edu.tw/linux_basic/0420quota_3.php

创建及扩展raw文件
创建4G空的文件
dd if=/dev/zero of=4G.img bs=1024k count=4096
追加到原有的镜像之后
cat vm1.img 4G.img > vm1_new.img

挂在raw文件

在进行虚拟机故障排除的时候非常有用,下面是挂在方法:


[root@localhost ~]# fdisk -lu conpaas.img
last_lba(): I don't know how to handle files with mode 81a4
You must set cylinders.
You can do this from the extra functions menu.

Disk conpaas.img: 0 MB, 0 bytes
4 heads, 32 sectors/track, 0 cylinders, total 0 sectors
Units = sectors of 1 * 512 = 512 bytes

      Device Boot      Start         End      Blocks   Id  System
conpaas.img1   *        2048     4192256     2095104+  83  Linux
Partition 1 has different physical/logical endings:
     phys=(1023, 3, 32) logical=(32752, 0, 1)

查看到sectors单位和分区Start的位置,得到偏移量进行挂载
[root@localhost ~]# mount -o loop,offset=$[2048*512] conpaas.img /mnt

raw文件与lv转换
方式比较简单,直接dd就行了
dd if=/dev/vg/vm1 of=vm1.img bs=10m
dd if=vm1.img of=/dev/vg/vm1 bs=10m(必须先创建vm1逻辑卷,并且要比vm1.img文件大)

下面是virsh命令创建虚拟机用到的配置文件,‘disk’平常用的多的几种方式,以iso文件作为cdrom,raw和lv作为磁盘.

  conpaasimg2g
  cab3ba1a-f7e9-4c02-8ba3-ca82abaa6312
  1048576
  1048576
  1
 
    hvm
    /usr/lib/xen/boot/hvmloader
   
 

 
   
   
   
 

 
  destroy
  restart
  restart
 
    /usr/lib64/xen/bin/qemu-dm
   
     
     
     
   

   
     
     
     
   

   
   
     
     
     

你可能感兴趣的:(cloud)