磁盘挂载
- 刷盘
- 查看磁盘信息
- 执行刷盘命令
- 验证情况
- 新建磁盘
- <a id="create_pv">创建PV
- 创建VG
- 创建LV
- 磁盘格式化
- 不看详解,只看步骤
- 扩容
- 新建一个磁盘扩容
- 创建pv
- 扩容VG
- <a id="expand_lv">扩容LV
- 磁盘扩容
- 不看详解,只看步骤
- 在原磁盘上扩容
- 调整物理卷大小
- LV扩容
- 扩容LV
- 删除
- 去掉挂载盘
- 删除VG
- 删除PV
- vcenter上面删除硬盘
刚在vmcenter 添加了一块磁盘的时候是看不到磁盘信息的,lsblk查看之后原来的sda,没有新添加的磁盘
[root@localhost ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / │ ├─rootvg-swap253:107.5G0lvm[SWAP]│ ├─rootvg-usr253:2018.6G0lvm /usr │ ├─rootvg-home253:301.9G0lvm /home │ └─rootvg-var253:405.4G0lvm /var └─sda38:3047.6G0part sr011:011024M0rom刷盘
这时候需要执行刷盘操作,步骤如下
查看磁盘信息
查看原来的磁盘走的那个磁盘IO
[root@localhost ~]# ls -l /sys/blocktotal0lrwxrwxrwx1root root0Sep2909:34 dm-0 ->../devices/virtual/block/dm-0 lrwxrwxrwx1root root0Sep2909:34 dm-1 ->../devices/virtual/block/dm-1 lrwxrwxrwx1root root0Sep2909:34 dm-2 ->../devices/virtual/block/dm-2 lrwxrwxrwx1root root0Sep2909:34 dm-3 ->../devices/virtual/block/dm-3 lrwxrwxrwx1root root0Sep2909:34 dm-4 ->../devices/virtual/block/dm-4 lrwxrwxrwx1root root0Sep2909:34 dm-5 ->../devices/virtual/block/dm-5 lrwxrwxrwx1root root0Sep2909:34 loop0 ->../devices/virtual/block/loop0 lrwxrwxrwx1root root0Sep2909:34 loop1 ->../devices/virtual/block/loop1 lrwxrwxrwx1root root0Sep2909:34 sda ->../devices/pci0000:00/0000:00:10.0/host2/target2:0:0/2:0:0:0/block/sda可以看到这个sda 走的是host2
sda -> …/devices/pci0000:00/0000:00:10.0/host2/target2:0:0/2:0:0:0/block/sda
看一下原来的磁盘走的是哪一个磁盘IO。如下面走的是host2
执行刷盘命令
echo"- - -">/sys/class/scsi_host/host2/scan验证情况
再看一眼磁盘情况,可以看到有sdb出现了
[root@localhost block]# lltotal0lrwxrwxrwx1root root0Sep2909:34 dm-0 ->../devices/virtual/block/dm-0 lrwxrwxrwx1root root0Sep2909:34 dm-1 ->../devices/virtual/block/dm-1 lrwxrwxrwx1root root0Sep2909:34 dm-2 ->../devices/virtual/block/dm-2 lrwxrwxrwx1root root0Sep2909:34 dm-3 ->../devices/virtual/block/dm-3 lrwxrwxrwx1root root0Sep2909:34 dm-4 ->../devices/virtual/block/dm-4 lrwxrwxrwx1root root0Sep2909:34 dm-5 ->../devices/virtual/block/dm-5 lrwxrwxrwx1root root0Sep2909:34 loop0 ->../devices/virtual/block/loop0 lrwxrwxrwx1root root0Sep2909:34 loop1 ->../devices/virtual/block/loop1 lrwxrwxrwx1root root0Sep2909:34 sda ->../devices/pci0000:00/0000:00:10.0/host2/target2:0:0/2:0:0:0/block/sda lrwxrwxrwx1root root0Sep2914:57 sdb ->../devices/pci0000:00/0000:00:10.0/host2/target2:0:1/2:0:1:0/block/sdb lrwxrwxrwx1root root0Sep2909:34 sr0 ->../devices/pci0000:00/0000:00:07.1/ata2/host1/target1:0:0/1:0:0:0/block/sr0lsblk也看一下~也有了sdb盘
[root@localhost block]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / │ ├─rootvg-swap253:107.5G0lvm[SWAP]│ ├─rootvg-usr253:2018.6G0lvm /usr │ ├─rootvg-home253:301.9G0lvm /home │ └─rootvg-var253:405.4G0lvm /var └─sda38:3047.6G0part sdb8:160100G0disk sr011:011024M0rom loop07:00100G0loop └─docker-253:4-39301-pool253:50100G0dm loop17:102G0loop └─docker-253:4-39301-pool253:50100G0dm新建磁盘
(主要步骤就是:pv—>vg—>lv—>磁盘格式化—>挂载)要理解PV-VG-LV的具体含义的,可以去百度一下~这里只仅仅写了如何操作
创建PV
我这边挂载的是/dev/sdb盘
[root@localhost block]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 rootvg lvm2 a--51.98g0/dev/sda3 rootvg lvm2 a--<47.55g<47.55g##创建PVpvcreate /dev/sdb##查看结果[root@localhost ~]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 rootvg lvm2 a--51.98g0/dev/sda3 rootvg lvm2 a--<47.55g<47.55g /dev/sdb lvm2 ---100.00g100.00g创建VG
当前vg情况查看:vgs命令
[root@localhost ~]# vgsVG#PV #LV #SN Attr VSize VFreerootvg250wz--n-<99.53g<47.55g##创建新vgvgcreate Voolvg /dev/sdb命令行解释:vgcreate Voolvg(自定义的vg名称)/dev/sdb(新添加的磁盘)
查看一下结果(这里使用的创建新VG哈)
[root@localhost ~]# vgsVG#PV #LV #SN Attr VSize VFreeVoolvg100wz--n-<100.00g<100.00g rootvg250wz--n-<99.53g<47.55g创建LV
当前lv情况查看命令:lvs
[root@localhost ~]# lvsLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert home rootvg -wi-ao----1.86g swap rootvg -wi-ao----7.45g syslv rootvg -wi-ao----<18.63g usr rootvg -wi-ao----<18.63g var rootvg -wi-ao----<5.41g##lvcreate-l100%VG-nVoolvg001 Voolvg命令行解释:lvcreate -l(常用的就是两个-l和-L,-l 后面是添加百分比、-L 后面添加的大小;eg:-l 90%VG ; -L 50G)100%VG(把VG的余量全部给新创建的lv)-n Voolvg001(新的lv的名称)Voolvg(vg名称)
这里可以看到新增了一个voolvg001
[root@localhost ~]# lvsLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Voolvg001 Voolvg -wi-a-----<100.00g home rootvg -wi-ao----1.86g swap rootvg -wi-ao----7.45g syslv rootvg -wi-ao----<18.63g usr rootvg -wi-ao----<18.63g var rootvg -wi-ao----<5.41g磁盘格式化
使用的是ext4格式进行格式化,后期可以进行缩容。之前使用的是默认的xfs,发现不能缩容。
[root@localhost ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / │ ├─rootvg-swap253:107.5G0lvm[SWAP]│ ├─rootvg-usr253:2018.6G0lvm /usr │ ├─rootvg-home253:301.9G0lvm /home │ └─rootvg-var253:405.4G0lvm /var └─sda38:3047.6G0part sdb8:160100G0disk └─Voolvg-Voolvg001253:60100G0lvm[root@localhost ~]# fdisk -lDisk /dev/sdb:107.4GB,107374182400bytes,209715200sectors Units=sectors of1*512=512bytes Sector size(logical/physical):512bytes /512bytes I/O size(minimum/optimal):512bytes /512bytes Disk /dev/mapper/Voolvg-Voolvg001:107.4GB,107369988096bytes,209707008sectors Units=sectors of1*512=512bytes Sector size(logical/physical):512bytes /512bytes I/O size(minimum/optimal):512bytes /512bytes可以看到新增了一个DISK盘:/dev/mapper/Voolvg-Voolvg001
格式化磁盘
mkfs.ext4 /dev/mapper/Voolvg-Voolvg001磁盘挂载尝试一下
##需要先创建要挂载的磁盘[root@localhost ~]# mkdir -p /application##磁盘挂载[root@localhost ~]# mount /dev/mapper/Voolvg-Voolvg001 /application##查看一下结果,多出了一个/application/的挂载点[root@localhost ~]# df -ThFilesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs 974M0974M0% /dev tmpfs tmpfs 991M0991M0% /dev/shm tmpfs tmpfs 991M 106M 885M11% /run tmpfs tmpfs 991M0991M0% /sys/fs/cgroup /dev/mapper/rootvg-syslv xfs 19G1.5G 18G8% / /dev/mapper/rootvg-usr xfs 19G6.6G 13G36% /usr /dev/sda1 xfs 473M 285M 188M61% /boot /dev/mapper/rootvg-var xfs5.4G1.7G3.8G31% /var /dev/mapper/rootvg-home xfs1.9G 33M1.9G2% /home tmpfs tmpfs 199M0199M0% /run/user/0 /dev/mapper/Voolvg-Voolvg001 ext4 99G 61M 94G1% /application现在把它放在/etc/fstab文件中,这样重启主机也会自动挂载(添加了之后一行)
[root@wj-infra-prd-9355717a ~]# cat /etc/fstab/dev/mapper/rootvg-syslv / xfs defaults00UUID=3c672b5d-7e46-4f25-9b90-2b69ac4e86a3 /boot xfs defaults00/dev/mapper/rootvg-home /home xfs defaults00/dev/mapper/rootvg-usr /usr xfs defaults00/dev/mapper/rootvg-var /var xfs defaults00/dev/mapper/rootvg-swap swap swap defaults00/dev/mapper/Voolvg-Voolvg001 /application ext4 defaults00就此创建新磁盘结束了~
不看详解,只看步骤
所有的步骤整理如下如下
pvcreate /dev/sdb vgcreate Voolvg /dev/sdb lvcreate-l100%VG-nVoolvg001 Voolvg mkfs.ext4 /dev/mapper/Voolvg-Voolvg001echo"/dev/mapper/Voolvg-Voolvg001 /application ext4 defaults 0 0">>/etc/fstabmkdir-p/applicationmount-a扩容
(主要步骤就是:pv—>vg—>lv—>磁盘扩容)
本次要扩容data目录的空间,先查看具体情况
[root@wj-opsp-dev-web2 ~]# df -ThFilesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs7.9G07.9G0% /dev /dev/mapper/rootvg-syslv xfs 19G 292M 19G2% / /dev/mapper/rootvg-usr xfs 19G6.7G 12G36% /usr /dev/sda1 xfs 473M 244M 230M52% /boot /dev/mapper/rootvg-var xfs5.4G4.5G 954M83% /var /dev/mapper/voolvg-data xfs 100G 100G 12K100% /data可以看出来要扩容的磁盘的vg为voolvglv为data
新建一个磁盘扩容
创建pv
参考新建磁盘的步骤
扩容VG
此处我要把/dev/sdb 的空间 扩容给 voolvg
##查看当前VG情况[root@localhost ~]# vgsFile descriptor3(socket:[495732500])leaked on vgs invocation. Parent PID6689:-bashVG#PV #LV #SN Attr VSize VFreerootvg250wz--n-<99.53g<47.55g voolvg110wz--n-<100.00g0##将sdb的空间扩容给vg:voolvg里面[root@localhost ~]# vgextend voolvg /dev/sdbFile descriptor3(socket:[495732500])leaked on vgextend invocation. Parent PID6689:-bashVolume group"voolvg"successfully extended##再查看一下vg的空间,可以看到总计是300G了。[root@localhost ~]# vgsFile descriptor3(socket:[495732500])leaked on vgs invocation. Parent PID6689:-bashVG#PV #LV #SN Attr VSize VFreerootvg250wz--n-<99.53g<47.55g voolvg210wz--n-299.99g<200.00g扩容LV
##查看一下lv的情况[root@localhost ~]# lvsFile descriptor3(socket:[495732500])leaked on lvs invocation. Parent PID6689:-bashLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert home rootvg -wi-ao----1.86g data voolvg -wi-ao----<100.00g##将vg多余的空间都给到lv-data[root@localhost ~]# lvextend -l +100%FREE /dev/voolvg/dataFile descriptor3(socket:[495732500])leaked on lvextend invocation. Parent PID6689:-bashSize of logical volume voolvg/data changed from<100.00GiB(25599extents)to299.99GiB(76798extents). Logical volume voolvg/data successfully resized.##再查看一下lv的情况,可以看到data已经为300G了[root@localhost ~]# lvsFile descriptor3(socket:[495732500])leaked on lvs invocation. Parent PID6689:-bashLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert home rootvg -wi-ao----1.86g swap rootvg -wi-ao----7.45g syslv rootvg -wi-ao----<18.63g usr rootvg -wi-ao----<18.63g var rootvg -wi-ao----<5.41g data voolvg -wi-ao----299.99g磁盘扩容
查看一下要扩容的目录的磁盘格式化格式。
- xfs类型文件系统 扩展文件系统命令为 xfs_growfs
- ext类型文件系统 扩展文件系统命令为 resize2fs
[root@localhost ~]# df -ThFilesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs7.9G07.9G0% /dev /dev/mapper/rootvg-syslv xfs 19G 292M 19G2% / /dev/mapper/rootvg-usr xfs 19G6.7G 12G36% /usr /dev/sda1 xfs 473M 244M 230M52% /boot /dev/mapper/rootvg-var xfs5.4G4.5G 954M83% /var /dev/mapper/voolvg-data xfs 100G 100G 12K100% /data /dev/mapper/rootvg-home xfs1.9G 41M1.9G3% /home可以看到此处要扩容的data的文件类型为 xfs
[root@localhost ~]# xfs_growfs /datameta-data=/dev/mapper/voolvg-dataisize=512agcount=4,agsize=6553344blks=sectsz=512attr=2,projid32bit=1=crc=1finobt=0spinodes=0data=bsize=4096blocks=26213376,imaxpct=25=sunit=0swidth=0blks naming=version2bsize=4096ascii-ci=0ftype=1log=internalbsize=4096blocks=12799,version=2=sectsz=512sunit=0blks, lazy-count=1realtime=noneextsz=4096blocks=0,rtextents=0data blocks changed from26213376to78641152##扩容完看一下,/data目录更改为了300G[root@localhost ~]# df -ThFilesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs7.9G07.9G0% /dev /dev/mapper/rootvg-syslv xfs 19G 292M 19G2% / /dev/mapper/rootvg-usr xfs 19G6.7G 12G36% /usr /dev/sda1 xfs 473M 244M 230M52% /boot /dev/mapper/rootvg-var xfs5.4G4.5G 954M83% /var /dev/mapper/voolvg-data xfs 300G 100G 200G34% /data /dev/mapper/rootvg-home xfs1.9G 41M1.9G3% /home不看详解,只看步骤
pvcreate /dev/sdb vgextend voolvg /dev/sdb lvextend-l+100%FREE /dev/voolvg/data xfs_growfs /data在原磁盘上扩容
(主要步骤就是:pv—>lv—>磁盘扩容)
调整物理卷大小
此处调整的是/dev/sdc
##可以看到当前/app的大小是150[root@wj-infra-prd-9355717a ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / └─sda38:3047.6G0part sdb8:160100G0disk └─Voolvg-Voolvg001253:60100G0lvm /application sdc8:320150G0disk └─VolGroup-VolGroup01253:50150G0lvm /app sr011:011024M0rom##当前是150G[root@localhost ~]# vgsVG#PV #LV #SN Attr VSize VFreeVolGroup110wz--n-<150.00g0rootvg250wz--n-<99.53g<47.55g##重新变更一下磁盘空间[root@localhost ~]# pvresize /dev/sdcPhysical volume"/dev/sdc"changed1physical volume(s)resized or updated /0physical volume(s)not resized再看一下VG的情况
[root@localhost ~]# vgsVG#PV #LV #SN Attr VSize VFreeVolGroup110wz--n-<200.00g50.00g Voolvg110wz--n-<100.00g0rootvg250wz--n-<99.53g<47.55g可以看到多出了50G
LV扩容
扩容LV
参考扩容中–新建一个磁盘扩容—扩容 步骤
删除
(主要步骤跟新建倒过来:去掉挂载盘—删除vg—删除pv—vcenter上面删除硬盘)
我想要删除/app 这个目录。 lsblk看一下,是在/dev/sdc 这个硬盘上
[root@localhost ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / │ ├─rootvg-swap253:107.5G0lvm[SWAP]│ ├─rootvg-usr253:2018.6G0lvm /usr │ ├─rootvg-home253:301.9G0lvm /home │ └─rootvg-var253:405.4G0lvm /var └─sda38:3047.6G0part sdb8:160100G0disk └─Voolvg-Voolvg001253:60100G0lvm /application sdc8:320200G0disk └─VolGroup-VolGroup01253:50200G0lvm /app sr011:011024M0rom去掉挂载盘
umount/app删除/etc/fstab 文件中挂载/app的那一部分。此处是标黄色的部分
/dev/mapper/Voolvg-Voolvg001 /application ext4 defaults 0 0
/dev/mapper/VolGroup-VolGroup01 /app ext4 defaults 0 0
删除VG
/app 挂载的是 vg是VolGroup。删除vg
[root@localhost ~]# vgremove VolGroupDo you really want to remove volume group"VolGroup"containing1logical volumes?[y/n]: y Do you really want to remove active logical volume VolGroup/VolGroup01?[y/n]: y Logical volume"VolGroup01"successfully removed Volume group"VolGroup"successfully removed##查看一下[root@localhost ~]# vgsVG#PV #LV #SN Attr VSize VFreeVoolvg110wz--n-<100.00g0rootvg250wz--n-<99.53g<47.55g删除PV
删除/dev/sdc 这一个pv
[root@localhost ~]# pvremove /dev/sdcLabels on physical volume"/dev/sdc"successfully wiped.##看一下没有这个pv了[root@localhost ~]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 rootvg lvm2 a--51.98g0/dev/sda3 rootvg lvm2 a--<47.55g<47.55g /dev/sdb Voolvg lvm2 a--<100.00g0vcenter上面删除硬盘
查看一下硬盘挂载的SCSI是几.可以看出是 host2/target2:0:2挂载的是0:2
[root@localhost ~]# ls -l /sys/block/lrwxrwxrwx1root root0Nov2814:25 sdc ->../devices/pci0000:00/0000:00:10.0/host2/target2:0:2/2:0:2:0/block/sdc登录vcenter 查看0:2的是哪一个。可以看出来是硬盘3。删除这个硬盘3,重启主机。
再登录主机看一下,是没有sdc硬盘的了
[root@localhost ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / │ ├─rootvg-swap253:107.5G0lvm[SWAP]│ ├─rootvg-usr253:2018.6G0lvm /usr │ ├─rootvg-home253:301.9G0lvm /home │ └─rootvg-var253:405.4G0lvm /var └─sda38:3047.6G0part sdb8:160100G0disk └─Voolvg-Voolvg001253:50100G0lvm /application sr011:011024M0rom