zoukankan      html  css  js  c++  java
  • 逻辑卷扩容

    今天开发部门问了这么一个问题,如下所示,说实话看到这个问题时有点蒙了,看着很熟悉,但是已经忘记怎么做了!一个红帽公司认证的工程师竟然连这么简单的问题都回答不上来!你知道有多尴尬吗!

    下班回家之后,匆忙跑完步之后,特地搭建一个相似的环境,准备一雪前耻!

    目前的场景是这样的,如下图所示:

    如上图所示,/dev/mapper/centos_tdtd-root是逻辑卷,它的容量是50G,已经用了10%,挂载到根上了,我觉得太小了,想扩容到150G左右!如何做呢?

    步骤及思路:

    思路其实非常简单,简单到一句话就可以说完:“先看看逻辑卷所在的卷组有没有空间,如有,将之扩容到逻辑卷即可,如果没有,加之再扩容。”

    如果逻辑卷所在的卷组有空间
      直接扩容逻辑卷空间即可
    否则
      先给卷组扩容空间,然后再给逻辑卷扩容空间

    第一步:确定/dev/mapper/centos_tdtd-root逻辑卷所在的卷组,查看卷组还没有空间的空间能够用来扩容逻辑卷。

    [root@tdtd ~]# vgdisplay    #查看当前系统的卷组,发现只有一个卷组,名字叫centos_tdtd
    --- Volume group ---
    VG Name centos_tdtd
    System ID 
    Format lvm2
    Metadata Areas 1
    Metadata Sequence No 4
    VG Access read/write
    VG Status resizable
    MAX LV 0
    Cur LV 3
    Open LV 3
    Max PV 0
    Cur PV 1
    Act PV 1
    VG Size <499.00 GiB 
    PE Size 4.00 MiB
    Total PE 127743
    Alloc PE / Size 127742 / 498.99 GiB
    Free PE / Size 1 / 4.00 MiB      #重点关注这里,发现空闲的空间已经很小了,已经不够扩容逻辑卷了。
    VG UUID GytyU4-O0Bs-z4Jh-Pz92-tb8C-KJNP-1oHKSs
    

    第二步:通过第一步我们知道了/dev/mapper/centos_tdtd-root这个逻辑卷在centos_tdtd卷组里面,而centos_tdtd卷组没有空闲的空间了,所以无法给/dev/mapper/centos_tdtd-root扩容空间了,怎么办呢?办法只有一个,给centos_tdtd卷组增加空间,把卷组的空间变大之后才能给逻辑卷扩容,那么怎样给卷组扩容呢?办法也只有一个,将新的硬盘、分区、磁盘阵列加入到卷组,我们就选择将某个分区加入到卷组里面这种方法。

    1. 将虚拟机关机之后再加一块100G的硬盘,重启。
    2. 在新硬盘上创建分区sdb1,一个分区独占整个sdb硬盘,也就是说sdb1的大小也是100G,然后更改分区类型为8e,使其支持LVM。
    3. 将sdb1格式化为物理卷
    root@tdtd ~]# pvcreate /dev/sdb1
      Physical volume "/dev/sdb1" successfully created.

    将新分区加入到卷组centos_tdtd里面

    [root@tdtd ~]# vgextend centos_tdtd /dev/sdb1
      Volume group "centos_tdtd" successfully extended
    

    我们再查看centos_tdtd卷组空闲空间的大小,如下图所示:

    通过上图我们发现,centos_tdtd卷组里空闲空间由之前的4M,变成了现在的100G,好了,我们下面可以对逻辑卷/dev/mapper/centos_tdtd-root进行扩容了。

    第三步:扩容/dev/mapper/centos_tdtd-root

    在还没开始扩容之前,再瞅/dev/mapper/centos_tdtd-root逻辑卷最后一眼,如下图所示:

    [root@tdtd ~]# lvdisplay
    --- Logical volume ---
    LV Path /dev/centos_tdtd/root
    LV Name root
    VG Name centos_tdtd
    LV UUID c4js0d-EvTV-JYf2-cQ7y-N5Ww-zFPf-v3jXvJ
    LV Write Access read/write
    LV Creation host, time bogon, 2019-07-31 19:19:10 +0800
    LV Status available
    # open 1
    LV Size 50.00 GiB   #没扩容之前是50G,与df-h查看的时候一样。
    Current LE 12800
    Segments 1
    Allocation inherit
    Read ahead sectors auto
    - currently set to 8192
    Block device 253:0
    [root@tdtd ~]# df -h
    文件系统                      容量  已用  可用 已用% 挂载点
    /dev/mapper/centos_tdtd-root   50G  4.6G   46G   10% /
    devtmpfs                      1.9G     0  1.9G    0% /dev
    tmpfs                         1.9G     0  1.9G    0% /dev/shm
    tmpfs                         1.9G   13M  1.9G    1% /run
    tmpfs                         1.9G     0  1.9G    0% /sys/fs/cgroup
    /dev/sda1                    1014M  179M  836M   18% /boot
    /dev/mapper/centos_tdtd-home  445G   37M  445G    1% /home
    tmpfs                         378M  4.0K  378M    1% /run/user/42
    tmpfs                         378M   28K  378M    1% /run/user/1000
    /dev/sr0                      4.3G  4.3G     0  100% /run/media/zh/CentOS 7 x86_64
    tmpfs                         378M     0  378M    0% /run/user/0

    [root@tdtd ~]# lvextend -L +99G /dev/mapper/centos_tdtd-root #给逻辑卷/dev/mapper/centos_tdtd-root 加上99G Size of logical volume centos_tdtd/root changed from 50.00 GiB (12800 extents) to 149.00 GiB (38144 extents). Logical volume centos_tdtd/root successfully resized.

     可能有的同学有疑问,为什么不直接加100G,还要留1G,因为怕它骄傲,故意留的!!好了,再看逻辑卷/dev/mapper/centos_tdtd-root的大小,如下所示:

    [root@tdtd ~]# df -h
    文件系统                      容量  已用  可用 已用% 挂载点
    /dev/mapper/centos_tdtd-root   50G  4.6G   46G   10% /     #尼玛!怎么还是50G!这是怎么回事,不要慌!看下面的操作。
    devtmpfs                      1.9G     0  1.9G    0% /dev
    tmpfs                         1.9G     0  1.9G    0% /dev/shm
    tmpfs                         1.9G   13M  1.9G    1% /run
    tmpfs                         1.9G     0  1.9G    0% /sys/fs/cgroup
    /dev/sda1                    1014M  179M  836M   18% /boot
    /dev/mapper/centos_tdtd-home  445G   37M  445G    1% /home
    tmpfs                         378M  4.0K  378M    1% /run/user/42
    tmpfs                         378M   28K  378M    1% /run/user/1000
    /dev/sr0                      4.3G  4.3G     0  100% /run/media/zh/CentOS 7 x86_64
    tmpfs                         378M     0  378M    0% /run/user/0
    

     

    当给逻辑卷扩容之后并不是立马生效的,还要有一步,让扩容的空间生效,如下所示:

    [root@tdtd ~]# xfs_growfs /dev/mapper/centos_tdtd-root   # 等同于resiozee2fs

    esize2fs /dev/myvg1/mylv1

    resize2fs /dev/myvg1/mylv1

    meta-data=/dev/mapper/centos_tdtd-root isize=512    agcount=4, agsize=3276800 blks
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=1        finobt=0 spinodes=0
    data     =                       bsize=4096   blocks=13107200, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
    log      =internal               bsize=4096   blocks=6400, version=2
             =                       sectsz=512   sunit=0 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
    data blocks changed from 13107200 to 39059456
    [root@tdtd ~]# df -h
    文件系统                      容量  已用  可用 已用% 挂载点
    /dev/mapper/centos_tdtd-root  149G  4.6G  145G    4% /
    devtmpfs                      1.9G     0  1.9G    0% /dev
    tmpfs                         1.9G     0  1.9G    0% /dev/shm
    tmpfs                         1.9G   13M  1.9G    1% /run
    tmpfs                         1.9G     0  1.9G    0% /sys/fs/cgroup
    /dev/sda1                    1014M  179M  836M   18% /boot
    /dev/mapper/centos_tdtd-home  445G   37M  445G    1% /home
    tmpfs                         378M  4.0K  378M    1% /run/user/42
    tmpfs                         378M   28K  378M    1% /run/user/1000
    /dev/sr0                      4.3G  4.3G     0  100% /run/media/zh/CentOS 7 x86_64
    tmpfs                         378M     0  378M    0% /run/user/0
    

     

  • 相关阅读:
    商务通代码
    Ubuntu 创建快捷方式的方法
    Linux安装Nginx
    Linux安装jdk10
    Mycat实现Mysql数据库读写分离
    Mysql主从复制
    SpringBoot整合Redis集群
    Redis集群环境搭建
    SpringBoot整合redis哨兵主从服务
    redis 哨兵机制环境搭建
  • 原文地址:https://www.cnblogs.com/yizhangheka/p/11279813.html
Copyright © 2011-2022 走看看