动态扩容

参考:https://cloud-atlas.readthedocs.io/zh_CN/latest/kvm/kvm_vdisk_live.html

  • 未关闭虚拟机,直接在宿主机器上qemu-img resize 命令调整磁盘大小会提示不可操作
# qemu-img resize 192.168.130.33.qcow2 +50G
qemu-img: Could not open '192.168.130.33.qcow2': Failed to get "write" lock
  • 检查虚拟机块设备列表
virsh domblklist <domain>
  • 可以使用virsh blockresize在线调整qcow2镜像,底层是通过QEMU Monitor管理虚拟机指令实现
# virsh blockresize <domain> vdc --size 200G
Block device 'vdc' is resized # 此时虚拟机中看到如下信息,查看vdc大小,看到已经变成200G [1869817.201326] virtio_blk virtio4: new size: 419430400 512-byte logical blocks (215 GB/200 GiB)
[1869817.205828] vdc: detected capacity change from 144955146240 to 214748364800
[1869819.943750] VFS: busy inodes on changed media or resized disk vdc # 注意
对于 virtio-blk 设备,最新的Guest内核,大小是自动更新的,所以会马上看到容量改变,旧内核需要重启guest系统;
对于 SCSI 设备,需要在guest操作系统中触发一次扫描: echo > /sys/class/scsi_device/0:0:0:0/device/rescan;
对于 IDE 设备,则需要重启一次guest操作系统才能刷新。
  • 后续操作根据虚拟机情况来

    如果更新文件系统,使用下面的命令:

    resize2fs 命令 :针对的是ext2、ext3、ext4文件系统

    xfs_growfs 命令 :针对的是xfs文件系统

动态卸载硬盘(硬盘未在使用)

  • 检查虚拟机块设备列表
virsh domblklist <domain>
  • 虚拟机中确认未挂载使用

  • virsh detach-disk 命令支持在先卸载硬盘

# virsh detach-disk <domain> vdb
命令执行后,虚拟机中就看不到那块硬盘,但配置文件中仍然存在 # virsh detach-disk <domain> vdb --live --config
该命令会同时修改虚拟机的运行配置和文件配置 # 注意
卸载硬盘比如vdb,会使后面的硬盘在下次重启后盘符变化,比如原来的vdc变成vdb
注意检查/etc/fstab文件

For compatibility purposes, --persistent behaves like --config for an offline domain, and like --live --config for a running domain.

KVM 动态调整 qcow2 硬盘的更多相关文章

  1. VMware 11安装Mac OS X 10.10 及安装Mac Vmware Tools(超详细),以及动态调整虚拟机硬盘大小

    先上一张效果图兴奋一下,博主穷屌丝一个,只能通过虚拟黑苹果体验下高富帅的生活,感觉超爽的,废话不多说的,直接上图了! 目录: 1.安装所需软件下载: 2.Mac OS X10.10 安装基本步骤: 3 ...

  2. kvm 动态挂载硬盘

    根据最新需求需要动态的给kvm下的windows虚拟机挂载硬盘,网上查看了很多资料终于试通了,在这里记录下方便自己回忆,同事可以给大家做做参考,如果有问题欢迎吐槽 环境:先说说我使用的环境,环境是使用 ...

  3. Hyper-V在线调整虚拟硬盘大小

    从Windows Server 2012 R2 开始,可以在线调整虚拟硬盘的大小了,这意味着当虚拟硬盘不够用时,我们在虚拟机运行的情况下直接扩展虚拟硬盘容量了.有人说这个有什么用?当然,实验室情况下, ...

  4. 如何实现可动态调整隐藏header的listview

    (转自:http://blog.sina.com.cn/s/blog_70b9730f01014sgm.html) 需求:根据某种需要,可能需要动态调整listview的页眉页脚,譬如将header作 ...

  5. Android - 动态调整ListView高度

    布局中,如果设计ListView的高度为包裹内容,那么ListView的高度是随着它的子条目的数量的变化而改变的, 这就可能会导致ListView下面的一些控件的位置也会随着ListView的高度的变 ...

  6. Javascript动态调整文章的行距、字体、颜色,及打印页面和关闭窗口功能

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. 优雅的实现Activiti动态调整流程(自由跳转、前进、后退、分裂、前加签、后加签等),含范例代码!

    最近对Activiti做了一些深入的研究,对Activiti的流程机制有了些理解,对动态调整流程也有了一些实践方法. 现在好好总结一下,一来是对这段时间自己辛苦探索的一个记录,二来也是为后来者指指路~ ...

  8. Linux下动态调整LVM文件系统大小

    LINUX下可以通过LVM动态调整一个已挂载的文件系统大小 LV可以根据需求增大或减小,但是LV改变大小以后,在LV中的文件系统也需要相应的改变大小.这个概念非常重要,如果没有相应的调整LV中文件系统 ...

  9. [转] iOS TableViewCell 动态调整高度

    原文: http://blog.csdn.net/crayondeng/article/details/8899577 最近遇到了一个cell高度变化的问题,在找解决办法的时候,参考了这篇文章,觉得不 ...

  10. CFormView动态调整对话框的尺寸和调整比例控制的部署

    基于单个文件CFormView动态调整对话框的尺寸和调整比例控制的部署 假设你正在开发一个程序基于单个文件,使用CFormView基类来实现多种形式展示,那么,这个文件可能会给你一点帮助. 一.实现对 ...

随机推荐

  1. 数据库mysql8.0安装+Navicat12

    第一次写博客,准备坚持下去把每天学习到的东西记录下来,刚好安装mysql8.0过程中遇到了一些问题并解决,系统win10.致敬博客 首先先粘贴一段mysql的百度百科词条:MySQL是一个关系型数据库 ...

  2. #Python assign赋值,新增列操作

  3. 2023-04-29:一个序列的 宽度 定义为该序列中最大元素和最小元素的差值。 给你一个整数数组 nums ,返回 nums 的所有非空 子序列 的 宽度之和 由于答案可能非常大,请返回对 109

    2023-04-29:一个序列的 宽度 定义为该序列中最大元素和最小元素的差值. 给你一个整数数组 nums ,返回 nums 的所有非空 子序列 的 宽度之和 由于答案可能非常大,请返回对 109 ...

  4. 2022-12-13:游戏玩法分析 I。写一条 SQL 查询语句获取每位玩家 第一次登陆平台的日期。 +-----------+-------------+ | player_id | first_l

    2022-12-13:游戏玩法分析 I.写一条 SQL 查询语句获取每位玩家 第一次登陆平台的日期. ±----------±------------+ | player_id | first_log ...

  5. golang调用sdl2,播放yuv视频

    golang调用sdl2,播放yuv视频 win10 x64下测试成功,其他操作系统下不保证成功. 采用的是syscall方式,不是cgo方式. 见地址 代码如下: package main impo ...

  6. 2022-03-11:int n, int[][] roads, int x, int y, n表示城市数量,城市编号0~n-1, roads[i][j] == distance,表示城市i到城市j距

    2022-03-11:int n, int[][] roads, int x, int y, n表示城市数量,城市编号0~n-1, roads[i][j] == distance,表示城市i到城市j距 ...

  7. vue全家桶进阶之路14:常用属性和方法

    Vue2中常用的属性和方法: 属性 el:用于指定Vue实例挂载的元素,可以是CSS选择器.HTML元素或Vue组件. data:用于存储Vue实例的响应式数据,也可以是一个函数,返回一个对象,用于提 ...

  8. 云端炼丹,算力白嫖,基于云端GPU(Colab)使用So-vits库制作AI特朗普演唱《国际歌》

    人工智能AI技术早已深入到人们生活的每一个角落,君不见AI孙燕姿的歌声此起彼伏,不绝于耳,但并不是每个人都拥有一块N卡,没有GPU的日子总是不好过的,但是没关系,山人有妙计,本次我们基于Google的 ...

  9. Netty实战(一)

    目录 第一章 Java网络编程 1.1 Java NIO 1.2 选择器 第二章 Netty是什么 2.1 Netty简介 2.2 Netty的特性 2.2.1 设计 2.2.2 易于使用 2.2.3 ...

  10. 创建nodejs项目并接入mysql,完成用户相关的增删改查的详细操作

    本文为博主原创,转载请注明出处: 1.使用npm进行初始化 在本地创建项目的文件夹名称,如 node_test,并在该文件夹下进行黑窗口执行初始化命令 2. 安装 expres包和myslq依赖包 n ...