vcenter环境下对vmware虚拟机lvm磁盘扩容
服务器环境:
[root@ws-cdp04 ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs 63G 0 63G 0% /dev tmpfs tmpfs 63G 0 63G 0% /dev/shm tmpfs tmpfs 63G 20M 63G 1% /run tmpfs tmpfs 63G 0 63G 0% /sys/fs/cgroup /dev/mapper/Centos7--vGroup001-root xfs 44G 2.5G 42G 6% / /dev/sda1 xfs 1014M 232M 783M 23% /boot tmpfs tmpfs 13G 0 13G 0% /run/user/0 [root@ws-cdp04 ~]# fdisk -l Disk /dev/sdb: 3221.2 GB, 3221225472000 bytes, 6291456000 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x0009b07b Device Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 104857599 51379200 8e Linux LVM Disk /dev/sdc: 3221.2 GB, 3221225472000 bytes, 6291456000 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/Centos7--vGroup001-root: 47.2 GB, 47240445952 bytes, 92266496 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/Centos7--vGroup001-swap: 5368 MB, 5368709120 bytes, 10485760 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes [root@ws-cdp04 ~]# vgs VG #PV #LV #SN Attr VSize VFree Centos7-vGroup001 1 2 0 wz--n- <49.00g 0 [root@ws-cdp04 ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda2 Centos7-vGroup001 lvm2 a-- <49.00g 0 [root@ws-cdp04 ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root Centos7-vGroup001 -wi-ao---- <44.00g swap Centos7-vGroup001 -wi-ao---- 5.00g
场景一:
sdb sdc 两块磁盘通过 lvm 扩容挂载到 /data 同一个目录的方法
# 对sdb 的处理
pvcreate /dev/sdb vgcreate centos7_vGroup002 /dev/sdb lvcreate -l 100%VG -n lv_data centos7_vGroup002 mkfs.xfs -f /dev/centos7_vGroup002/lv_data mkdir /data mount /dev/mapper/centos7_vGroup002-lv_data /data
# sdc 的处理
pvcreate /dev/sdc vgextend centos7_vGroup002 /dev/sdc lvextend -l +100%FREE /dev/mapper/centos7_vGroup002-lv_data xfs_growfs /dev/mapper/centos7_vGroup002-lv_data
# 开机自动挂载
echo "/dev/mapper/centos7_vGroup002-lv_data /data xfs defaults 0 0" >> /etc/fstab
场景二:
添加单块磁盘挂载到 /data 目录的方法
pvcreate /dev/sdb vgcreate centos7_vGroup002 /dev/sdb lvcreate -l 100%VG -n lv_data centos7_vGroup002 mkfs.xfs -f /dev/centos7_vGroup002/lv_data mount /dev/mapper/centos7_vGroup002-lv_data /data # 开机自动挂载 # vim /etc/fstab /dev/mapper/centos7_vGroup002-lv_data /data xfs defaults 0 0
场景三:
# 扩容系统盘
在vcenter界面中直接把50G修改为100G,然后重启操作系统
fdisk -l 可以看到 sda 变成了 100G
# 通过fdisk 操作删除已经存在的 sda2 分区
fdisk /dev/sda 删除 sda2 然后重新创建 sda2并且把剩余空间全部分配给 sda2
[root@ws-cdp04 ~]# fdisk /dev/sda Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x0009b07b Device Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 104857599 51379200 8e Linux LVM Command (m for help): d Partition number (1,2, default 2): 2 Partition 2 is deleted Command (m for help): p Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x0009b07b Device Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux Command (m for help): n Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): p Partition number (2-4, default 2): First sector (2099200-209715199, default 2099200): Using default value 2099200 Last sector, +sectors or +size{K,M,G} (2099200-209715199, default 209715199): Using default value 209715199 Partition 2 of type Linux and of size 99 GiB is set Command (m for help): t Partition number (1,2, default 2): 2 Hex code (type L to list all codes): 8e Changed type of partition 'Linux' to 'Linux LVM' Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 16: Device or resource busy. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) Syncing disks.
让分区生效
[root@ws-cdp03 ~]# partprobe [root@ws-cdp03 ~]# partprobe /dev/sda2 [root@ws-cdp04 ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda2 Centos7-vGroup001 lvm2 a-- <49.00g 0
# 扩容pv
[root@ws-cdp03 ~]# pvresize -v /dev/sda2 [root@ws-cdp04 ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda2 Centos7-vGroup001 lvm2 a-- <99.00g 50.00g # 扩容lv lvextend -l +100%FREE /dev/mapper/Centos7--vGroup001-root # 扩容 xfs_growfs /dev/mapper/Centos7--vGroup001-root
场景四:
扩容非系统盘,比如 /dev/sdb,由100G扩容到3T,直接在 vcenter 中修改磁盘大小为3000G,然后在操作系统中执行如下命令,不会影响已有数据
# 扩容pv pvresize -v /dev/sdb # 扩容lv lvextend -l +100%FREE /dev/mapper/centos7_vGroup002-lv_data xfs_growfs /dev/mapper/centos7_vGroup002-lv_data
此时再添加一块磁盘并且绑定在 /data/中
# sdc 的处理
pvcreate /dev/sdc vgextend centos7_vGroup002 /dev/sdc lvextend -l +100%FREE /dev/mapper/centos7_vGroup002-lv_data xfs_growfs /dev/mapper/centos7_vGroup002-lv_data
场景五:
# ext4 的扩容方法,挂载新的 磁盘到根目录(扩容) # 在控制台添加300G磁盘 pvcreate /dev/sdc vgextend VolGroup /dev/sdc lvextend -l +100%FREE /dev/mapper/VolGroup-root resize2fs /dev/VolGroup/root
场景六:
添加磁盘以后找不到磁盘的处理
# 磁盘使用率已经达到了 94%,剩余空间不到 200G,新增加了磁盘,系统识别不了
[root@sz_sjzx_cbslog01_10_207 ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/centos-root xfs 2.8T 2.6T 186G 94% / devtmpfs devtmpfs 16G 0 16G 0% /dev tmpfs tmpfs 16G 0 16G 0% /dev/shm tmpfs tmpfs 16G 1.7G 15G 11% /run tmpfs tmpfs 16G 0 16G 0% /sys/fs/cgroup /dev/sda1 xfs 1014M 220M 795M 22% /boot tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/1001 tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/0 tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/1002 [root@sz_sjzx_cbslog01_10_207 ~]# fdisk -l Disk /dev/sdc: 322.1 GB, 322122547200 bytes, 629145600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/sdb: 2147.5 GB, 2147483648000 bytes, 4194304000 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/sda: 53.7 GB, 53687091200 bytes, 104857600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x000d5bd2 Device Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 104857599 51379200 8e Linux LVM Disk /dev/mapper/centos-root: 3050.5 GB, 3050483744768 bytes, 5957976064 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/centos-swap: 8589 MB, 8589934592 bytes, 16777216 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/sdd: 536.9 GB, 536870912000 bytes, 1048576000 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
# 使用如下命令,重新扫描磁盘
[root@sz_sjzx_cbslog01_10_207 ~]# cd /sys/class/scsi_host [root@sz_sjzx_cbslog01_10_207 scsi_host]# cat host0/scan cat: host0/scan: Permission denied [root@sz_sjzx_cbslog01_10_207 scsi_host]# echo "- - -" > host0/scan
# 再次查看发现有了新的磁盘 /dev/sde
[root@sz_sjzx_cbslog01_10_207 scsi_host]# fdisk -l Disk /dev/sdc: 322.1 GB, 322122547200 bytes, 629145600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/sdb: 2147.5 GB, 2147483648000 bytes, 4194304000 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/sda: 53.7 GB, 53687091200 bytes, 104857600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x000d5bd2 Device Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 104857599 51379200 8e Linux LVM Disk /dev/mapper/centos-root: 3050.5 GB, 3050483744768 bytes, 5957976064 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/centos-swap: 8589 MB, 8589934592 bytes, 16777216 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/sdd: 536.9 GB, 536870912000 bytes, 1048576000 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/sde: 1073.7 GB, 1073741824000 bytes, 2097152000 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
# 创建pvs
[root@sz_sjzx_cbslog01_10_207 ~]# pvcreate /dev/sde Physical volume "/dev/sde" successfully created. [root@sz_sjzx_cbslog01_10_207 ~]# vgs VG #PV #LV #SN Attr VSize VFree centos 4 2 0 wz--n- 2.78t 0
# 扩容vg
[root@sz_sjzx_cbslog01_10_207 ~]# vgextend centos /dev/sde Volume group "centos" successfully extended [root@sz_sjzx_cbslog01_10_207 ~]# vgs VG #PV #LV #SN Attr VSize VFree centos 5 2 0 wz--n- <3.76t <1000.00g [root@sz_sjzx_cbslog01_10_207 ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 2.77t swap centos -wi-ao---- 8.00g
# lvs 扩容
[root@sz_sjzx_cbslog01_10_207 ~]# lvextend -l +100%FREE /dev/centos/root Size of logical volume centos/root changed from 2.77 TiB (727292 extents) to 3.75 TiB (983291 extents). Logical volume centos/root successfully resized. [root@sz_sjzx_cbslog01_10_207 ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 3.75t swap centos -wi-ao---- 8.00g [root@sz_sjzx_cbslog01_10_207 ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/centos-root xfs 2.8T 2.7T 175G 94% / devtmpfs devtmpfs 16G 0 16G 0% /dev tmpfs tmpfs 16G 0 16G 0% /dev/shm tmpfs tmpfs 16G 1.7G 15G 11% /run tmpfs tmpfs 16G 0 16G 0% /sys/fs/cgroup /dev/sda1 xfs 1014M 220M 795M 22% /boot tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/1001 tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/0 tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/1002
# 磁盘扩容
[root@sz_sjzx_cbslog01_10_207 ~]# xfs_growfs /dev/centos/root meta-data=/dev/mapper/centos-root isize=512 agcount=278, agsize=2686720 blks = sectsz=512 attr=2, projid32bit=1 Size of logical volume centos/root changed from 2.77 TiB (727292 extents) to 3.75 TiB (983291 extents). Logical volume centos/root successfully resized. [root@sz_sjzx_cbslog01_10_207 ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 3.75t swap centos -wi-ao---- 8.00g [root@sz_sjzx_cbslog01_10_207 ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/centos-root xfs 2.8T 2.7T 175G 94% / devtmpfs devtmpfs 16G 0 16G 0% /dev tmpfs tmpfs 16G 0 16G 0% /dev/shm tmpfs tmpfs 16G 1.7G 15G 11% /run tmpfs tmpfs 16G 0 16G 0% /sys/fs/cgroup /dev/sda1 xfs 1014M 220M 795M 22% /boot tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/1001 tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/0 tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/1002 # 磁盘扩容 [root@sz_sjzx_cbslog01_10_207 ~]# xfs_growfs /dev/centos/root meta-data=/dev/mapper/centos-root isize=512 agcount=278, agsize=2686720 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0 spinodes=0 data = bsize=4096 blocks=744747008, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=5247, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 744747008 to 1006889984 [root@sz_sjzx_cbslog01_10_207 ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/centos-root xfs 3.8T 2.7T 1.2T 70% / devtmpfs devtmpfs 16G 0 16G 0% /dev tmpfs tmpfs 16G 0 16G 0% /dev/shm tmpfs tmpfs 16G 1.7G 15G 11% /run tmpfs tmpfs 16G 0 16G 0% /sys/fs/cgroup /dev/sda1 xfs 1014M 220M 795M 22% /boot tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/1001 tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/0 tmpfs tmpfs 3.2G 0 3.2G 0% /run/user/1002
有时候在控制台新增了磁盘但是系统找不到
查看目录下的host,对多个host进行扫描 [root@download-web01:~]# cd /sys/class/scsi_host/ [root@download-web01:/sys/class/scsi_host]# ls host0 host1 host2 echo "- - -" > /sys/class/scsi_host/host0/scan echo "- - -" > /sys/class/scsi_host/host1/scan echo "- - -" > /sys/class/scsi_host/host2/scan [root@download-web01:/sys/class/scsi_host]# ls /sys/class/scsi_device 1:0:0:0 2:0:0:0 2:0:1:0 2:0:2:0 echo 1 > /sys/class/scsi_device/1\:0\:0\:0/device/rescan echo 1 > /sys/class/scsi_device/2\:0\:0\:0/device/rescan echo 1 > /sys/class/scsi_device/2\:0\:1\:0/device/rescan 通过fdisk -l 查看是否多了一个磁盘 /dev/sdc 新增磁盘 pvcreate /dev/sdc vgextend Centos7_vGroup002 /dev/sdc lvextend -l +100%Free /dev/Centos7_vGroup002/lv_data xfs_growfs /dev/Centos7_vGroup002/lv_data
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律