數據雲盤動態擴容-e2fsck resize2fs文件系統指令運用指南

停止雙機

/HA雙機,在NFVO其中一個虛機上執行如下命令,停止雙機。

[root@ZTE_NFVO_01 ~]# nshastop
[ZTE_NFVO_02]Stopping High-Availability services:
Done

雲盤擴容

登錄客戶端後,選擇雲管理-存儲-雲硬盤,選擇該數據盤,展開右側下拉框,點擊調整雲硬盤大小
物理擴盤設計公司內容不演示了

或者在openstack後端執行(未驗證):

cinder extend  volume-id  new_size

調整後雲盤大小已變更未預期值。

本次演示將雲盤從80GB 擴容至100GB

手工啓動vg

[root@vm_test_single sbin]# vgchange -ay           --激活邏輯卷組
  2 logical volume(s) in volume group "vg_sys" now active
  2 logical volume(s) in volume group "vg_data" now active

[root@vm_test_single sbin]# pvdisplay           --檢查物理卷vdb大小
  --- Physical volume ---
  PV Name               /dev/vda2
  VG Name               vg_sys
  PV Size               <29.00 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              7423
  Free PE               0
  Allocated PE          7423
  PV UUID               HaXs8e-iulO-0a0S-wnGB-Q3VH-49Gp-QxbdtW

  --- Physical volume ---
  PV Name               /dev/vda3
  VG Name               vg_sys
  PV Size               12.00 GiB / not usable 4.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              3071
  Free PE               0
  Allocated PE          3071
  PV UUID               42Mwz4-4zaJ-ySLn-1hPy-L8fh-GKZ9-SWPlsD

  --- Physical volume ---
  PV Name               /dev/vdb
  VG Name               vg_data
  PV Size               <80.00 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              25599
  Free PE               0
  Allocated PE          25599
  PV UUID               kne8D6-phrq-1QcB-5nOS-P1eC-r5Rk-84yqFF

注意觀察上面的pv_size

重新定義pv大小

[root@vm_test_single sbin]# pvresize /dev/vdb              --重定義vdb大小
  Physical volume "/dev/vdb" changed
  1 physical volume(s) resized / 0 physical volume(s) not resized
[root@vm_test_single sbin]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/vda2
  VG Name               vg_sys
  PV Size               <29.00 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              7423
  Free PE               0
  Allocated PE          7423
  PV UUID               HaXs8e-iulO-0a0S-wnGB-Q3VH-49Gp-QxbdtW

  --- Physical volume ---
  PV Name               /dev/vda3
  VG Name               vg_sys
  PV Size               12.00 GiB / not usable 4.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              3071
  Free PE               0
  Allocated PE          3071
  PV UUID               42Mwz4-4zaJ-ySLn-1hPy-L8fh-GKZ9-SWPlsD

  --- Physical volume ---
  PV Name               /dev/vdb
  VG Name               vg_data
  PV Size               <80.00 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              25599
  Free PE               0
  Allocated PE          25599
  PV UUID               kne8D6-phrq-1QcB-5nOS-P1eC-r5Rk-84yqFF

注意觀察上面的vdb卷下 pv_size的變化

擴容lv_home

[root@vm_test_single sbin]# lvdisplay /dev/vg_data/lv_home         ---擴容前檢查lv_home
  --- Logical volume ---
  LV Path                /dev/vg_data/lv_home
  LV Name                lv_home
  VG Name                vg_data
  LV UUID                vcIaJE-XAn9-57qN-YMEL-j0tc-IXNF-XsCoOU
  LV Write Access        read/write
  LV Creation host, time vm_test_single, 2019-11-01 11:09:51 +0800
  LV Status              available
  # open                 1
  LV Size                99.96 GiB
  Current LE             25591
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:3

[root@vm_test_single sbin]# vgdisplay vg_data
  --- Volume group ---
  VG Name               vg_data
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  7
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <80.00 GiB
  PE Size               4.00 MiB
  Total PE              25599
  Alloc PE / Size       25599 / <100.00 GiB
  Free  PE / Size       <20.00 GiB
  VG UUID               Ld9j7N-J7rt-r9ov-rjq3-5U3d-ibQS-krPsgO

注意觀察上面的Free PE的Size大小,後面指令擴充lv_home就是使用free_pe進行擴容的

[root@vm_test_single sbin]# lvextend -L +20G /dev/vg_data/lv_home            -- 其中20G爲上一個步驟查詢到vg_data的Free PE/Size大小。
  Size of logical volume vg_data/lv_home changed from 99.96 GiB (25591 extents) to 119.96 GiB (30711 extents).
  Logical volume lv_home successfully resized.

再重新觀察vdb_pv size的大小

[root@vm_test_single sbin]# lvdisplay /dev/vg_data/lv_home     
  --- Logical volume ---
  LV Path                /dev/vg_data/lv_home
  LV Name                lv_home
  VG Name                vg_data
  LV UUID                vcIaJE-XAn9-57qN-YMEL-j0tc-IXNF-XsCoOU
  LV Write Access        read/write
  LV Creation host, time vm_test_single, 2019-11-01 11:09:51 +0800
  LV Status              available
  # open                 1
  LV Size                99.96 GiB
  Current LE             25591
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:3

[root@vm_test_single sbin]# lsblk         --查看磁盤分區情況
NAME               MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0                 11:0    1  430K  0 rom
vda                252:0    0   42G  0 disk
├─vda1             252:1    0    1G  0 part /boot
├─vda2             252:2    0   29G  0 part
│ ├─vg_sys-lv_root 253:0    0 25.1G  0 lvm  /
│ └─vg_sys-lv_swap 253:1    0   16G  0 lvm  [SWAP]
└─vda3             252:3    0   12G  0 part
  ├─vg_sys-lv_root 253:0    0 25.1G  0 lvm  /
  └─vg_sys-lv_swap 253:1    0   16G  0 lvm  [SWAP]
vdb                252:16   0  100G  0 disk
├─vg_data-lv_arbi  253:2    0   32M  0 lvm
└─vg_data-lv_home  253:3    0  100G  0 lvm  /home

但是如果目前你使用 df查看文件系統磁盤大小仍未變化

重新定義文件系統

[root@vm_test_single sbin]# e2fsck -f /dev/vg_data/lv_home
e2fsck 1.43.3 (04-Sep-2016)
/dev/vg_data/lv_home 已掛載。
e2fsck: 無法繼續,已中止。

如果這一步報e2fsck 指令不存在,則:

阿里雲e2fsck中下載最新的tar.gz包放置於虛機上解壓:

[root@vm_test_single soft]# tar -zxvf  e2fsprogs-1.43.3.tar.gz
[root@vm_test_single soft]# cd  e2fsprogs-1.43.3
[root@vm_test_single e2fsprogs-1.43.3]# ./configure     
[root@vm_test_single e2fsprogs-1.43.3]# make
[root@vm_test_single e2fsprogs-1.43.3]# make install     

如果/.configure這一步報錯系統中沒有 gcc complier,則先安裝gcc complier。
安裝方法爲:
阿里雲鏡像文件庫中依次下載:
cpp-4.8.5-39.el7.x86_64.rpm
ext2resize-1.1.19-1mdv2007.1.x86_64.
ext2resize-1.1.19-5mdv2011.0.x86_64.
gcc-4.8.5-39.el7.x86_64.rpm
glibc-devel-2.17-292.el7.x86_64.rpm
gmp-devel-6.0.0-15.el7.x86_64.rpm
kernel-headers-3.10.0-1062.el7.x86_6
libgcc-4.8.5-39.el7.x86_64.rpm
libgomp-4.8.5-39.el7.x86_64.rpm
libmpc-1.0.1-3.el7.x86_64.rpm
libmpc-devel-1.0.1-3.el7.x86_64.rpm
mpfr-3.1.1-4.el7.x86_64.rpm
mpfr-devel-3.1.1-4.el7.x86_64.rpm

在rpm包目錄下執行:

rpm -Uvh *.rpm --nodeps --force

如果安裝過程中提示缺少任何包依賴則前往阿里雲鏡像文件庫下載對應的包再繼續安裝

安裝成功後,執行gcc -v成功:

[root@vm_test_single e2fsprogs-1.43.3]# gcc -v
使用內建 specs。
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
目標:x86_64-redhat-linux
配置爲:../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
線程模型:posix
gcc 版本 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)

最後一步擴文件系統,擴充文件系統前先查詢:

root@vnfm_vm e2fsprogs-1.43.3]#  cat /etc/fstab | grep xfs
/dev/mapper/vg_sys-lv_root /                       xfs     defaults        0 0
UUID=0680b1dc-e677-47b5-aae1-01af37bcafe0 /boot                   xfs     defaults        0 0
/dev/mapper/vg_data-lv_home                /home                 xfs    defaults        0 0

如果home目錄掛載的文件系統是xfs則使用如下方法擴容:

[root@vnfm_vm e2fsprogs-1.43.3]#  xfs_growfs /dev/mapper/vg_data-lv_home
meta-data=/dev/mapper/vg_data-lv_home isize=512    agcount=4, agsize=3274496 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=13097984, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=6395, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 13097984 to 52419584
[root@vnfm_vm e2fsprogs-1.43.3]# df -hl
Filesystem                   Size  Used Avail Use% Mounted on
/dev/mapper/vg_sys-lv_root    34G  9.7G   24G  30% /
devtmpfs                     7.8G     0  7.8G   0% /dev
tmpfs                        7.8G     0  7.8G   0% /dev/shm
tmpfs                        7.8G  877M  7.0G  12% /run
tmpfs                        7.8G     0  7.8G   0% /sys/fs/cgroup
/dev/vda1                   1014M  127M  888M  13% /boot
/dev/mapper/vg_data-lv_home  200G   40G  161G  20% /home
tmpfs                         10M  1.1M  9.0M  11% /diskcheck
tmpfs                        1.6G     0  1.6G   0% /run/user/0

否則前往ext2resize下載x86的rpm包,安裝後再執行:

[root@vnfm_vm e2fsprogs-1.43.3]# resize2fs /dev/vg_data/lv_home

如果報錯,則嘗試在線擴容:

ext2resize -2 /dev/vg_data/lv_home
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章