kvm虚拟机扩展磁盘空间

Posted kcxg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kvm虚拟机扩展磁盘空间相关的知识,希望对你有一定的参考价值。

kvm虚拟机磁盘空间扩展与xen虚拟机磁盘空间扩展思路一致。原因在于xen/kvm默认的虚拟机磁盘格式为raw,所以方式可以通用。

raw磁盘格式扩展思路如下

(1) 新添加一块raw格式的磁盘加入到KVM虚拟机,然后通过虚拟机系统lvm逻辑卷管理方式进行管理,扩展磁盘空间。

(2) 直接通过dd命令扩展现有虚拟机磁盘大小,扩展之后,原磁盘大小增大,进入虚拟机系统后,直接通过fdisk分区新添加的空间,然后将该分区并入lvm逻辑卷中,扩大磁盘空间。

qcow2磁盘格式扩展思路如下

(1) 可以采用raw磁盘格式磁盘的扩展方式一致的方式进行。

(2) qcow2格式磁盘,直接通过qemu-img 直接扩展qcow2磁盘, 新添加一块raw格式的磁盘加入到KVM虚拟机,然后通过虚拟机系统lvm逻辑卷管理方式进行管理,扩展磁盘空间。

下面将开始通过qcow2格式添加磁盘。

方式一:添加一块qcow2磁盘加入虚拟机

1.  查看现在虚拟机磁盘信息

(1)  磁盘大小与格式信息

查看虚拟机磁盘格式。

技术图片

查看磁盘格式信息

技术图片

进入虚拟机,查看磁盘容量。

[[email protected] ~]# df -h   
Filesystem Size Used Avail Use% Mounted on    
/dev/mapper/vg-root 5.7G 3.1G 2.4G 57% /    
/dev/hda1 99M 24M 71M 25% /boot    
tmpfs 249M 0 249M 0% /dev/shm

(2) 添加一块qcow2磁盘

# qemu-img create -f qcow2 test01_add.qcow2 2G 

技术图片

(3) 添加一块qcow2磁盘信息加入配置文件

[[email protected] data]# virsh shutdown oeltest01   
域 oeltest01 被关闭 

[[email protected] data]#    
[[email protected] data]# virsh list --all        
 Id    名称                         状态    
----------------------------------------------------    
 -     oeltest01                      关闭    
 -     oeltest02                      关闭    
 -     oeltest03                      关闭    
 -     wintest01                      关闭

在配置文件中加入如下内容:

# virsh edit oeltest01

<disk type=file device=disk>     
  <driver name=qemu type=qcow2 cache=none/>      
  <source file=/data/test01_add.qcow2/>      
  <target dev=hdb bus=ide/>      
 </disk>

(4) 启动虚拟机并配置磁盘

# virsh start oeltest01

# virsh console oeltest01

技术图片

2.  配置LVM扩展磁盘

(1) 分区

技术图片

(2) 扩展lvm逻辑卷。

技术图片

 

方式二:直接扩展qcow2磁盘

接上文恢复测试环境。

(1)  关闭虚拟机。

(2)  删除配置文件中第二块磁盘信息

(3)  通过kvm虚拟机快照备份中创建的快照恢复虚拟机。

1. 直接扩展qcow2磁盘

(1)  查看磁盘

# virsh edit oeltest01

<disk type=file device=disk>   
  <driver name=qemu type=qcow2 cache=none/>    
  <source file=/data/test01.qcow2/>
  <target dev=hda bus=ide/>    
  <address type=drive controller=0 bus=0 target=0 unit=0/>    
</disk>

(2)  直接扩展qcow2磁盘

# qemu-img resize test01.qcow2 +2G

技术图片

经过前后对比,磁盘大小已由7G扩展到9G,已扩展,qcow2磁盘格式必须采用此方式进行扩展,不要使用dd方式,dd方式适用于raw格式。

2. 进入系统开始扩展磁盘

(1) 查看分区大小

[[email protected] ~]# fdisk -l 

Disk /dev/hda: 9663 MB, 9663676416 bytes
255 heads, 63 sectors/track, 1174 cylinders    
Units = cylinders of 16065 * 512 = 8225280 bytes 

   Device Boot      Start         End      Blocks   Id  System   
/dev/hda1   *           1          13      104391   83  Linux    
/dev/hda2              14         913     7229250   8e  Linux LVM 

Disk /dev/dm-0: 6308 MB, 6308233216 bytes   
255 heads, 63 sectors/track, 766 cylinders    
Units = cylinders of 16065 * 512 = 8225280 bytes 

Disk /dev/dm-0 doesnt contain a valid partition table 

Disk /dev/dm-1: 1073 MB, 1073741824 bytes   
255 heads, 63 sectors/track, 130 cylinders    
Units = cylinders of 16065 * 512 = 8225280 bytes 

Disk /dev/dm-1 doesnt contain a valid partition table   
[[email protected] ~]# 

(2) 开始分区

[[email protected] ~]# fdisk /dev/hda

过程如下,将扩展的空间分成一个区。

技术图片

查看现在磁盘空间

技术图片

(3) 开始创建物理卷,加入卷组,扩展逻辑卷。

技术图片

到此kvm虚拟机扩展磁盘空间成功,当虚拟机磁盘格式换成qcow2后,确实有很多需要注意的地方,qcow2格式支持动态扩展与快照功能,虽然性比raw稍差,但确实很实用。

以上是关于kvm虚拟机扩展磁盘空间的主要内容,如果未能解决你的问题,请参考以下文章

KVM虚拟机qcow2格式磁盘文件比实际空间大的问题

KVM虚拟化笔记------kvm   Linux虚拟机在线扩展磁盘

kvm虚拟机扩展磁盘容量

Linux系统KVM虚拟机实战LVM逻辑卷之扩展Swap交换分区

kvm虚拟机磁盘扩容

解决kvm虚拟机qcow2格式磁盘文件比实际空间占用大的问题