zoukankan      html  css  js  c++  java
  • openstack 动态加载usb,需要修改kvm虚拟机的xml文件

    一、利用libvirt命令动态挂载

    在利用KVM的虚拟桌面应用中,有时候需要在虚拟桌面起来后还能够动态的挂载或卸载数据盘,以达到类似热插盘U盘或移动硬盘的效果,当然管理上需要做处理。如果纯粹中技术上来讲,大概是下面的几步:
    
    1. 创建数据盘:
    
        创建数据盘可以用qemu-img命令,但是缺点是创建完以后还需要在虚拟机里面做磁盘初始化(在磁盘管理里)和格式化。相比较而言,用libguestfs带的 virt-make-fs就好很多,一条命令完成磁盘创建和初始化的功能,挂到虚拟机里面马上就可以使用。
    
    sudo virt-make-fs -F qcow2 -t ntfs -s 100G /home/.../workroom/test/temp test100G.img
    
    2. 定义数据盘配置文件:
    
    <disk type='file' device='disk'>
        <driver name='qemu' type='qcow2'/>
        <source file='/home/.../workroom/test/test500G.img'/>
        <target dev='hdf' bus='virtio' type='virtio'/>
    </disk>
    
    另存为 test-device-attach.xml
    
    3. 启动虚拟机,假设虚拟机的domain名是 DomainAttachDisk;
    
    4. 运行 virsh 命令完成挂载
    
    sudo attach-device DomainAttachDisk /home/.../workroom/test/test-attach.xml  
    
    测试下来从挂载命令到操作系统识别大概30秒-60秒之间
    
    5. 卸载命令:
    
    sudo detach-device DomainAttachDisk /home/.../workroom/test/test-attach.xml
    
    如果用应用程序把这些过程管理起来,那么就能做到动态的数据盘挂载和卸载功能。
    

      

  • 相关阅读:
    费用流
    平面最近点对
    纸牌均分问题
    cdq分治模板
    费解的开关
    斐波那契和排列组合性质
    主席树
    Springboot使用EasyExcel(仅限自己收藏)
    vue项目中h5移动端中通过flex布局实现首尾固定,中间滚动(借鉴)
    vue路由参数的获取、添加和替换
  • 原文地址:https://www.cnblogs.com/nulige/p/9042660.html
Copyright © 2011-2022 走看看