kvm熱添加磁盤,併爲根目錄擴容,重啓依然生效

接上篇,<<熱添加磁盤,重啓文件不丟失>>

一.理論掃盲:
centos7的磁盤默認使用lvm,所以是可以直接擴展根分區的,但是無法縮小,在物理機中會默認將磁盤分爲兩個分區,分別爲sda1和sda2,其中分區sda1作爲系統盤/boot掛載,少量空間;sda2作爲一個物理卷並且完全作爲邏輯卷組VG(Volume Group)centos,在這個邏輯卷組centos中建立三個邏輯卷LV(Logical Volume)root和home還有swap,分別掛載到根目錄/和/home以及swap。而在kvm虛擬機中則不是sda了,而是vda,其他都和物理機差不多。

二.下面我們看看磁盤分區的情況
kvm熱添加磁盤,併爲根目錄擴容,重啓依然生效
這裏我們看到文件系統是/dev/mapper/centos-root,然後掛載到根目錄上。下面來看下這個文件系統到底是個啥?
kvm熱添加磁盤,併爲根目錄擴容,重啓依然生效
好吧,對應根目錄的這個文件系統,其實是個軟鏈接,真正指向的是dm-0這個塊設備。
那麼再看看另外一張圖(這裏只是普及啊),還有個指向這個設備的軟鏈接呢?
kvm熱添加磁盤,併爲根目錄擴容,重啓依然生效

爲啥還要個軟鏈接,待解決。。。。。先不管這個問題

三.正題來了,接上篇,我們可以熱添加磁盤到kvm虛擬機中去,由於centos 7又支持磁盤擴展(lvm機制),那麼我們新增一塊磁盤到kvm虛擬機中,然後加到root所在的vggroup裏去不就行了
宿主機下操作:
#新增一塊磁盤
qemu-img create -f qcow2 test3_add03.qcow2 5G
#將磁盤熱添加到kvm虛擬機中去
virsh attach-disk centos7.0 /var/lib/libvirt/images/test3_add03.qcow2 vdc --cache=none --subdriver=qcow2
#讀取內存中關於kvm虛擬機的添加的磁盤信息
virsh dumpxml centos7.0
#將獲取到的磁盤信息加入到現有的kvm配置中去
virsh edit centos7.0

以下在kvm虛擬機中操作:
#新增物理卷vdc
pvcreate /dev/vdc
#將物理卷vdc添加至/root所在的卷組,centos可以通過lvdisplay查詢到
kvm熱添加磁盤,併爲根目錄擴容,重啓依然生效
vgextend centos /dev/vdc
#擴充root所在的邏輯卷組,大小就是新增加的vdc大小
lvextend -L +5G /dev/mapper/centos-root
#重新讀取硬盤信息
xfs_growfs /dev/mapper/centos-root
#再次查看是否成功
df -hT
kvm熱添加磁盤,併爲根目錄擴容,重啓依然生效
添加成功,之前是12g

重啓仍然生效

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章