前言
笔者在7月10日对项目服务器进行日常巡检时发现,有一台服务器/HOME目录不足10G空间。之前有做过清理这次登录后台查看需要清理的日志文件比较小,故向云中心同事申请对该服务器进行进行磁盘扩容,记录此事件以便以后碰到同类问题帮助到大家伙。我们云中心服务器都是esxi虚拟化的虚拟机,后台添加完容量登录服务器还是看不到扩容的那块磁盘,需要对服务器进行以下操作。
一、手动刷新scsi
# cd /sys/class/scsi_host/
# ls
host0 host1 host2
# echo "- - -" > host0/scan
# fdisk -l没有就继续重复
# echo "- - -" > host1/scan
# fdisk -l
# echo "- - -" > host2/scan
通常刷一次执行然后执行fdisk -l 就能出来,就可以进行其他操作。
二、home目录扩容操作:
[root@inzoo-collect-02 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 99G 0 part
├─centos-root 253:0 0 50G 0 lvm /
├─centos-swap 253:1 0 3.9G 0 lvm [SWAP]
└─centos-home 253:2 0 45.1G 0 lvm /home
sdb 8:16 0 200G 0 disk /data
sdc 8:32 0 200G 0 disk
sr0 11:0 1 1024M 0 rom
2.1、给新磁盘创建分区
执行下面命令可以将sdc转换为gpt格式,然后创建一个分区并占用所有空间
[root@inzoo-collect-02 ~]# parted -s /dev/sdc mklabel gpt
[root@inzoo-collect-02 ~]# parted -s /dev/sdc mkpart logic 0% 100%
[root@inzoo-collect-02 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 99G 0 part
├─centos-root 253:0 0 50G 0 lvm /
├─centos-swap 253:1 0 3.9G 0 lvm [SWAP]
└─centos-home 253:2 0 45.1G 0 lvm /home
sdb 8:16 0 200G 0 disk /data
sdc 8:32 0 200G 0 disk
└─sdc1 8:33 0 200G 0 part
sr0 11:0 1 1024M 0 rom
2.2、创建物理卷(PV)
[root@inzoo-collect-02 ~]# pvcreate /dev/sdc1
Physical volume "/dev/sdc1" successfully created.
查看PV
可以看见针对/dev/sdc1的PV已经创建成功,且系统跟目录所属PV是/dev/sda2, VG是centos
[root@inzoo-collect-02 ~]# pvdisplay
— Physical volume —
PV Name /dev/sda2
VG Name centos
PV Size <99.00 GiB / not usable 3.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 25343
Free PE 1
Allocated PE 25342
PV UUID V2TSDh-rf4c-deBg-r8JR-eFG0-uXxu-UOqpZl
“/dev/sdc1” is a new physical volume of “<200.00 GiB”
— NEW Physical volume —
PV Name /dev/sdc1
VG Name
PV Size <200.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID Ew51kK-9K3w-DAo3-DjO5-SNFn-XHNe-1eIYZ6
3.3、扩容卷组(VG)
将新的PV(/dev/sdc1)添加到当前根目录所属VG(centos)中
[root@inzoo-collect-02 ~]# vgextend centos /dev/sdc1
Volume group "centos" successfully extended
查看:可以看到新增的PV(/dev/sbc1)的VG已被改成centos
[root@inzoo-collect-02 ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name centos
PV Size <99.00 GiB / not usable 3.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 25343
Free PE 1
Allocated PE 25342
PV UUID V2TSDh-rf4c-deBg-r8JR-eFG0-uXxu-UOqpZl
--- Physical volume ---
PV Name /dev/sdc1
VG Name centos
PV Size <200.00 GiB / not usable 2.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 51199
Free PE 51199
Allocated PE 0
PV UUID Ew51kK-9K3w-DAo3-DjO5-SNFn-XHNe-1eIYZ6
3.4、扩展逻辑卷(LV)
查看当前LV:可以看到当前卷组VG(centos)中存在两个逻辑卷LV(swap、root)其中swap作为虚拟内存使用,/home是我们本次需要扩容的系统根目录所在的逻辑卷
[root@inzoo-collect-02 ~]# lvdisplay
--- Logical volume ---
LV Path /dev/centos/swap
LV Name swap
VG Name centos
LV UUID 2nw2pS-Rsml-QNDO-04oe-zxN0-IIli-eXd6qw
LV Write Access read/write
LV Creation host, time localhost, 2018-10-17 11:35:02 +0800
LV Status available
# open 2
LV Size <3.88 GiB
Current LE 992
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:1
--- Logical volume ---
LV Path /dev/centos/home
LV Name home
VG Name centos
LV UUID 6zXXtj-2RDq-Io3r-CskC-fHwK-KdJo-CzXYdP
LV Write Access read/write
LV Creation host, time localhost, 2018-10-17 11:35:02 +0800
LV Status available
# open 1
LV Size <45.12 GiB
Current LE 11550
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:2
--- Logical volume ---
LV Path /dev/centos/root
LV Name root
VG Name centos
LV UUID UdmQSA-2Fuf-Hmuk-disF-YVLE-yyUV-wf4s4N
LV Write Access read/write
LV Creation host, time localhost, 2018-10-17 11:35:03 +0800
LV Status available
# open 1
LV Size 50.00 GiB
Current LE 12800
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
3.5、扩展逻辑卷
由于前面操作已经将新的磁盘空间分区并划分给了我们系统所在的卷组VG(centos)所以现在需要对该卷组的可用容量进行分配,以下命令将centos卷组的所有剩余空间分配给逻辑卷/home
[root@inzoo-collect-02 ~]# lvextend -l +100%FREE /dev/centos/home
Size of logical volume centos/home changed from <45.12 GiB (11550 extents) to <245.12 GiB (62750 extents).
Logical volume centos/home successfully resized.
3.6、扩容文件系统
最后再对文件系统进行扩容即可完成
[root@inzoo-collect-02 ~]# xfs_growfs /dev/centos/home
meta-data=/dev/mapper/centos-home isize=512 agcount=4, agsize=2956800 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=11827200, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=5775, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 11827200 to 64256000
3.7、结果验证
可用看到/home目录已经增加200G容量
[root@inzoo-collect-02 ~]# df -HT
Filesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 8.4G 0 8.4G 0% /dev
tmpfs tmpfs 8.5G 0 8.5G 0% /dev/shm
tmpfs tmpfs 8.5G 845M 7.6G 11% /run
tmpfs tmpfs 8.5G 0 8.5G 0% /sys/fs/cgroup
/dev/mapper/centos-root xfs 54G 23G 31G 43% /
/dev/sdb ext4 212G 23G 178G 12% /data
/dev/mapper/centos-home xfs 264G 42G 222G 16% /home
/dev/sda1 xfs 1.1G 200M 865M 19% /boot
tmpfs tmpfs 1.7G 0 1.7G 0% /run/user/0
overlay overlay 54G 23G 31G 43% /var/lib/docker/overlay2/ab779122545f7fcfe8ad64de741ed0f942e14833f3977980f82192185aa45c67/merged
overlay overlay 54G 23G 31G 43% /var/lib/docker/overlay2/4c3ef7b7b688652a23ada550d9b070b1a16351d017c2c084c204348f0810af2d/merged
overlay overlay 54G 23G 31G 43% /var/lib/docker/overlay2/8b8c08744ca72829daf9500fb355514e9f3e519aa9eb1dfd780e3f18ffee2078/merged
本文介绍了在Linux环境中,如何对服务器进行磁盘扩容的详细步骤,包括手动刷新scsi、创建分区、扩展物理卷(PV)、扩容卷组(VG)、扩展逻辑卷(LV)以及扩容文件系统。主要涉及的命令有`parted`、`pvcreate`、`vgextend`、`lvextend`和`xfs_growfs`。



1511

被折叠的 条评论
为什么被折叠?



