KVM 虚拟机 热插拔硬盘

新建硬盘

  • lvm 命令
    lvcreate -L 200G -n lv02 ssd01

  • qemu-img 命令
    qemu-img create -f raw test1G.raw 1G

  • dd 命令
    dd if=/dev/zero of=/root/test.vol bs=1M count=1024

添加硬盘

  • 在线添加
    virsh attach-disk domain source target [--live] [--config] ...
    virsh attach-disk xxx /dev/disk/by-uuid/xxx vdb --live --config

  • 注意
    qcow2文件需要加上参数--cache=none --subdriver=qcow2

挂载成功后,查看配置文件(默认是以raw格式添加):

    <disk type='block' device='disk'>                                                                                                       
      <driver name='qemu' type='raw'/>                                                                                                      
      <source dev='/dev/disk/by-uuid/xxx'/>                                                                
      <target dev='vde' bus='virtio'/>                                                                                                      
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0c' function='0x0'/>                                                           
    </disk>

注意,如果 使用 hda 这样的盘符,会以 ide 的磁盘类型挂载; 使用 vda 这样的盘符,会以 virtio 的磁盘类型挂载。推荐使用 virtio

确认

lsblk

[ec2-user@vm01 ~]$ lsblk -f
NAME    FSTYPE LABEL UUID MOUNTPOINT
sda                                                        
├─sda1   xfs    /     xxx /
└─sda128                                                   
vdb          

# 此处的 vdb 就是上面增加的硬盘,如果添加时有报错: Duplicate ID 'drive-virtio-disk3' for drive,改成 vdc 或者 vde 添加

其他命令

virsh domblklist centos7

virsh attach-disk centos7 /xxx/test1G.raw vdb --live --config

virsh detach-disk centos7 vdb

posted @ 2022-12-01 16:10  武平宁  阅读(296)  评论(0)    收藏  举报