kvm中虚拟机的硬盘扩容
KVM中linux虚拟机的硬盘添加方法 最近虚拟机中运行的东西比较多,很多。而刚启动的时候虚拟机分配的磁盘比较少,随着日志还有平时的上传文件的积累,磁盘空间报警了。网上查了下资料,自己也做了下实验。总结下给虚拟机增加磁盘的一些硬盘空间的方法。 对于sda/vda等格式的硬盘 环境:centos 6.1 虚拟机的属性:domainname
test Disk path/var/lib/libvirt/p_w_picpaths/test.img 硬盘分区: [root@localhost ~]# df -hT Filesystem
TypeSize Used Avail Use% Mounted on /dev/vda1
ext46.8G 3.2G 3.3G 50% / tmpfs
tmpfs499M0 499M0% /dev/shm 需要添加硬盘空间。 方法1 思路,既然是少一块硬盘,那么我们就直接给虚拟机加一块硬盘就好了,然后直接挂载到根分区的一个目录下面。这样我根分区的硬盘空间就扩展了。 解决方法1 A,生成一块新的硬盘 使用virt-manager很容易,直接在虚拟的属性中点击“添加硬件”----“storage”选择多大的空间,驱动类型,缓存模式。然后点击完成。注意,有些硬盘是支持热插拔的,有些不支持。除了IDE格式的硬盘外,其他的都支持热插拔,这就意味着,如果添加的是IDE的硬盘的话,需要对虚拟机进行重启,使他识别新添加的硬盘。 如果采用virsh命令添加的话。采用命令 #qemu-img create -f raw test_add.img 10G //说明,生成一块新的raw格式的空盘 #virsh attach-disk test /var/lib/libvirtd/p_w_picpaths/test_add.img vdb —cache none 或者#virsh edit test 在xml中的disk后面添加如下几行。
具体解决方案。 前提安装libguestfs-tools工具包。关闭虚拟机 #yum -y install libguestfs-tools 【kvm中虚拟机的硬盘扩容】
A,新建一个大镜像 #qemu-img create -f raw test_extend.img 15G注意,这里的img大小是你需要拓展的总大小 B,使用virt-resize进行拉升分区 #virt-resize —expand
/dev/vda1 /var/lib/libvirt/p_w_picpaths/test.img /var/lib/libvirt/p_w_picpaths/test_new.img 注意,此时间很长,请耐心等待 C.使用新扩展的镜像代替原镜像 #mv /var/lib/libvirt/p_w_picpaths/test_new.img /var/lib/libvirt/p_w_picpaths/test.img D,启动虚拟机 #virsh start test 拓展完成, virt-resize的优势:能对虚拟机中的特定的分区进行拓展。并且能够拓展windows镜像。不需要登录到虚拟机里面进行任何操作。 缺点:拓展的时候需要关机。对于大的镜像,拓展的时间比较长。 对于LVM格式的虚拟机 如果你的硬盘格式支持LVM。那么你的硬盘拓展将容易许多,LVM支持硬盘的在线扩容。相当方便。 方法步骤: #lvcreate -L 40G -n lv_vm_test1 VolGroup #virsh attach-disk test /dev/mapper/VolGroup/lv_vm_test vdb 注意,有可能碰到权限问题。请先修改/dev/mapper/VolGroup/lv_vm_test的权限,是虚拟机可以挂载。 进入虚拟机的操作: #pvcreate /dev/vdb #vgextend VolGroup /dev/vdb #vgs#lvextend -l +100%FREE /dev/VolGroup/lv_root #resize2fs -p /dev/VolGroup/lv_root 优势:拓展时间很快,支持动态扩展。 缺点,不适合window的拓展。 转载于:https://blog.51cto.com/liran728729/1139630
推荐阅读
- 热闹中的孤独
- Shell-Bash变量与运算符
- JS中的各种宽高度定义及其应用
- 2021-02-17|2021-02-17 小儿按摩膻中穴-舒缓咳嗽
- 深入理解Go之generate
- 异地恋中,逐渐适应一个人到底意味着什么()
- 我眼中的佛系经纪人
- 《魔法科高中的劣等生》第26卷(Invasion篇)发售
- “成长”读书社群招募
- 2020-04-07vue中Axios的封装和API接口的管理