Centos7扩展挂载点的容量

如果安装CentOS系统时分配了/var挂载点的空间,但是分配的比较小,这个目录在CentOS中主要用来放置系统执行过程中经常变化的文件,如随时更改的日志文件 /var/log/var/log/message 所有的登录文件存放目录,/var/spool/mail邮件存放的目录, /var/run 程序或服务启动。

如果我们又安装了CDH,则可能会在/var/lib/创建一个cloudera-service-monitor文件,这个文件夹主要用来保存时间序列和健康数据、Impla查询的元数据、Yarn应用的元数据等,运行一段时间这个文件可能会占用很大。如果/var是挂在文件系统的某个卷上,可能会面对扩展这个挂载点的空间。生产环境对集群一般都有监测,当一个挂载点的可用空间较少时会频繁报警,解决方法就是扩展容量

本次比如发生了这个问题,我们有添加了一个500GB的硬盘,现在我们来将这500GB的空间中一部分分配到/var,余下的全部分配到根节点,从而起到扩展容量的目的。

查询磁盘信息

#查看系统磁盘空间的使用情况。
# ①从输出的信息可以看到根节点挂在在/dev/mapper/VolGroup-root,/var挂在在/dev/mapper/VolGroup-var
# ②/var的容量为8GB,已用84%
[root@cdh1 ~]# df -hl
文件系统                       容量  已用  可用 已用% 挂载点
/dev/mapper/VolGroup-root       25G   16G  9.4G   62% /
devtmpfs                        16G     0   16G    0% /dev
tmpfs                           16G     0   16G    0% /dev/shm
tmpfs                           16G  201M   16G    2% /run
tmpfs                           16G     0   16G    0% /sys/fs/cgroup
/dev/xvda1                     497M  254M  243M   52% /boot
/dev/mapper/VolGroup00-consul 1014M   33M  982M    4% /consul
/dev/mapper/VolGroup-var       8.0G  6.7G  1.4G   84% /var
tmpfs                          3.2G     0  3.2G    0% /run/user/0
tmpfs                          3.2G     0  3.2G    0% /run/user/99
cm_processes                    16G   21M   16G    1% /run/cloudera-scm-agent/process

# 查看磁盘信息,同时注意设备一栏
# 可以看到磁盘/dev/xvdb可用空间为493.9 GB,
# 接下来就让这个容量分配到/根节点和/var节点。
# 目标:将其中分出42GB扩展到 /var,剩余全部扩展到 /根节点
[root@cdh1 ~]# fdisk -l
磁盘 /dev/xvdb:493.9 GB, 493921239040 字节,964689920 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘 /dev/xvda:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0003755b

    设备 Boot      Start         End      Blocks   Id  System
/dev/xvda1   *        2048     1026047      512000   83  Linux
/dev/xvda2         1026048     3131391     1052672   8e  Linux LVM
/dev/xvda3         3131392    83886079    40377344   8e  Linux LVM

磁盘 /dev/mapper/VolGroup-root:26.3 GB, 26315063296 字节,51396608 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
……

# 获取指定的磁盘的信息
[root@cdh1 ~]# fdisk -l /dev/xvdb
磁盘 /dev/xvdb:493.9 GB, 493921239040 字节,964689920 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


扩展/var节点容量

目前容量为8GB,因为这个节点是Cloudera Manager 服务节点,可以将这个扩展42GB

# 主要对磁盘/dev/xvdb进行分区
#  m:获取帮助信息
#  n:添加一个新分区
#      p:分区类型为主分区。(e为扩展分区。一般是选择主分区,且一个磁盘最多只能有创建四个主分区。扩展分区可以没有,最多一个)
#      选择起始扇区:直接回车,默认为从起始扇区开始
#      选择结束扇区:可以填扇区值,也可以填扇区大小,这里填写+42GB,表示创建一个42GB的分区。结束扇区的值 = 起始扇区值+分区字节大小/每个扇区大小
#                  也可以填写结束的扇区值,例如扩展42GB,结束扇区的值=2048+42*1024*1024*1024/512=88082432
#                  直接回车,则为全部扇区都分给此分区
#  t:改变一个分区系统的id。如果只有一个分区,默认会选择这个分区,如果有多个会提示选择要操作的分区号(1-4)
#      L:列出所有代码
#      8e:设置分区类型为 Linux LVM
#  w:保存并退出。上面的操作会暂存在内存,需要保存后才会生效。如果还要继续设置其它新分区,可以继续创建新分区完毕后再统一保存退出。
#  
[root@cdh1 ~]# fdisk  /dev/xvdb
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0xc121d7db 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):m
命令操作
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   g   create a new empty GPT partition table
   G   create an IRIX (SGI) partition table
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition‘s system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)
命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
分区号 (1-4,默认 1):
起始 扇区 (2048-964689919,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-964689919,默认为 964689919):+42G
分区 1 已设置为 Linux 类型,大小设为 42 GiB

命令(输入 m 获取帮助):t
已选择分区 1
Hex 代码(输入 L 列出所有代码):L

 0  空              24  NEC DOS         81  Minix / 旧 Linu bf  Solaris
 1  FAT12           27  隐藏的 NTFS Win 82  Linux 交换 / So c1  DRDOS/sec (FAT-
 2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
 3  XENIX usr       3c  PartitionMagic  84  OS/2 隐藏的 C:  c6  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     85  Linux 扩展      c7  Syrinx
 5  扩展            41  PPC PReP Boot   86  NTFS 卷集       da  非文件系统数据
 6  FAT16           42  SFS             87  NTFS 卷集       db  CP/M / CTOS / .
 7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux 纯文本    de  Dell 工具
 8  AIX             4e  QNX4.x 第2部分  8e  Linux LVM       df  BootIt
 9  AIX 可启动      4f  QNX4.x 第3部分  93  Amoeba          e1  DOS 访问
 a  OS/2 启动管理器 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/O
 b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor
 c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad 休 eb  BeOS fs
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         ee  GPT
 f  W95 扩展 (LBA)  54  OnTrackDM6      a6  OpenBSD         ef  EFI (FAT-12/16/
10  OPUS            55  EZ-Drive        a7  NeXTSTEP        f0  Linux/PA-RISC
11  隐藏的 FAT12    56  Golden Bow      a8  Darwin UFS      f1  SpeedStor
12  Compaq 诊断     5c  Priam Edisk     a9  NetBSD          f4  SpeedStor
14  隐藏的 FAT16 <3 61  SpeedStor       ab  Darwin 启动     f2  DOS 次要
16  隐藏的 FAT16    63  GNU HURD or Sys af  HFS / HFS+      fb  VMware VMFS
17  隐藏的 HPFS/NTF 64  Novell Netware  b7  BSDI fs         fc  VMware VMKCORE
18  AST 智能睡眠    65  Novell Netware  b8  BSDI swap       fd  Linux raid 自动
1b  隐藏的 W95 FAT3 70  DiskSecure 多启 bb  Boot Wizard 隐  fe  LANstep
1c  隐藏的 W95 FAT3 75  PC/IX           be  Solaris 启动    ff  BBT
1e  隐藏的 W95 FAT1 80  旧 Minix
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。

# 如果出现如下提示,则必须要重启系统。如果没有其他提示,可不用非要重启,继续操作即可
WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
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)

[root@cdh1 ~]# reboot
Connection to xx.xxx.x.xx closed by remote host.
Connection to xx.xxx.x.xx closed.

# 再次查看磁盘信息,可以和前面的对比,很明显多了一行。这个就是我们新创建的一个分区,/dev/xvdb1需要记下
# /dev/xvdb1            2048    88082431    44040192   8e  Linux LVM
[root@cdh1 ~]# fdisk -l

磁盘 /dev/xvdb:493.9 GB, 493921239040 字节,964689920 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xc121d7db

    设备 Boot      Start         End      Blocks   Id  System
/dev/xvdb1            2048    88082431    44040192   8e  Linux LVM

磁盘 /dev/xvda:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0003755b

    设备 Boot      Start         End      Blocks   Id  System
/dev/xvda1   *        2048     1026047      512000   83  Linux
/dev/xvda2         1026048     3131391     1052672   8e  Linux LVM
/dev/xvda3         3131392    83886079    40377344   8e  Linux LVM

…… ……

# 查看卷组名称及大小,需要记下 VG Name。例如这里的是 VolGroup,后面会用到这个卷组名
[root@cdh1 ~]# vgdisplay
  --- Volume group ---
  VG Name               VolGroup
  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               38.50 GiB
  PE Size               4.00 MiB
  Total PE              9857
  Alloc PE / Size       9857 / 38.50 GiB
  Free  PE / Size       0 / 0
  VG UUID               faVyy5-8PQq-MN9X-RraY-LOgj-g9Iq-KQrMsg

……

# 创建卷。 从前面我们已经创建了一个新的分区:/dev/xvdb1
# 执行时如果报: Device /dev/xvdb2 not found.。此时需要重启系统:reboot
[root@cdh1 ~]# pvcreate /dev/xvdb1
  Physical volume "/dev/xvdb1" successfully created.

# 扩展卷组 VolGroup
[root@cdh1 ~]# vgextend  VolGroup  /dev/xvdb1
  Volume group "VolGroup" successfully extended

# 查看物理卷。注意看PV Name为/dev/xvdb1的信息,42GB已经创建出来
[root@cdh1 ~]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/xvda3
  VG Name               VolGroup
  PV Size               <38.51 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              9857
  Free PE               0
  Allocated PE          9857
  PV UUID               uQLUzq-WiZg-YdPp-KNq1-cVdw-aTBc-ey3YWy

  --- Physical volume ---
  PV Name               /dev/xvdb1
  VG Name               VolGroup
  PV Size               42.00 GiB / not usable 4.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              10751
  Free PE               10751
  Allocated PE          0
  PV UUID               JagRJV-FXfW-BcWx-vweZ-kPQz-7goT-COX2MH
……

# 从前面(df -hl)我们可以看到/var对应的是/dev/mapper/VolGroup-var 
# 查看当前逻辑卷的名称及空间大小。
[root@cdh1 ~]# lvdisplay
  --- Logical volume ---
  LV Path                /dev/VolGroup/root
  LV Name                root
  VG Name                VolGroup
  LV UUID                2f6zN4-wlsI-6JKt-9B5d-fDDm-cudJ-gus6RB
  LV Write Access        read/write
  LV Creation host, time localhost, 2018-03-29 10:32:45 +0800
  LV Status              available
  # open                 1
  LV Size                <24.51 GiB
  Current LE             6274
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0

  --- Logical volume ---
  LV Path                /dev/VolGroup/var
  LV Name                var
  VG Name                VolGroup
  LV UUID                Dzr2iB-N6f3-Edv0-bXOj-OTDI-pibv-jCTuCY
  LV Write Access        read/write
  LV Creation host, time localhost, 2018-03-29 10:32:46 +0800
  LV Status              available
  # open                 1
  LV Size                8.00 GiB
  Current LE             2048
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2

  --- Logical volume ---
  ……

  --- Logical volume ---
  ……

# 扩展分区。var的逻辑卷为/dev/VolGroup/var,直接将42GB的分区扩展到var
[root@cdh1 ~]# lvextend /dev/VolGroup/var /dev/xvdb1
  Size of logical volume VolGroup/var changed from 8.00 GiB (2048 extents) to <50.00 GiB (12799 extents).
  Logical volume VolGroup/var successfully resized.

# 调整文件系统大小
# 这个命令如法执行,执行下面的就行
#[root@cdh1 ~]# resize2fs -f /dev/VolGroup/var
#resize2fs 1.42.9 (28-Dec-2013)
#resize2fs: Bad magic number in super-block 当尝试打开 /dev/VolGroup/var 时找不到有效的文件系统超级块.
[root@cdh1 ~]# xfs_growfs /dev/VolGroup/var
meta-data=/dev/mapper/VolGroup-var isize=512    agcount=4, agsize=524288 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=2097152, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 2097152 to 13106176
您在 /var/spool/mail/root 中有新邮件

# 查看分区。可以看到/dev/VolGroup/var逻辑分区扩展到了50.00 GiB
[root@cdh1 ~]# lvscan
  ACTIVE            '/dev/VolGroup/root' [<24.51 GiB] inherit
  ACTIVE            '/dev/VolGroup/var' [<50.00 GiB] inherit
  ACTIVE            '/dev/VolGroup/swap' [<6.00 GiB] inherit
  ACTIVE            '/dev/VolGroup00/consul' [1.00 GiB] inherit
# 用df查看系统磁盘信息,可以看到/var已经调整到了50G,已用降低到13%
[root@cdh1 ~]# df -h
文件系统                       容量  已用  可用 已用% 挂载点
/dev/mapper/VolGroup-root       25G   16G  9.5G   62% /
devtmpfs                        16G     0   16G    0% /dev
tmpfs                           16G     0   16G    0% /dev/shm
tmpfs                           16G  8.7M   16G    1% /run
tmpfs                           16G     0   16G    0% /sys/fs/cgroup
/dev/mapper/VolGroup-var        50G  6.7G   43.3G    13% /var
/dev/xvda1                     497M  267M  231M   54% /boot
/dev/mapper/VolGroup00-consul 1014M   33M  982M    4% /consul
tmpfs                          3.2G     0  3.2G    0% /run/user/1001
cm_processes                    16G     0   16G    0% /run/cloudera-scm-agent/process
tmpfs                          3.2G     0  3.2G    0% /run/user/0

扩展根节点容量

前面已经分出42GB,还剩大概418GB的可用空间,和前面一样将剩余的空间全部扩展到根节点。操作和前面基本相同

# 创建一个新分区,容量为剩下的全部
[root@cdh1 lib]# fdisk  /dev/xvdb
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

命令(输入 m 获取帮助):n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): p
分区号 (2-4,默认 2):
起始 扇区 (88082432-964689919,默认为 88082432):
将使用默认值 88082432
Last 扇区, +扇区 or +size{K,M,G} (88082432-964689919,默认为 964689919):
将使用默认值 964689919
分区 2 已设置为 Linux 类型,大小设为 418 GiB

命令(输入 m 获取帮助):t
分区号 (1,2,默认 2):2
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
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)
正在同步磁盘。

# 可以看到新增加的分区 /dev/xvdb2
[root@cdh1 lib]# fdisk -l
磁盘 /dev/xvdb:493.9 GB, 493921239040 字节,964689920 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xc121d7db

    设备 Boot      Start         End      Blocks   Id  System
/dev/xvdb1            2048    88082431    44040192   8e  Linux LVM
/dev/xvdb2        88082432   964689919   438303744   8e  Linux LVM
……

# 创建卷。发现失败,此时重启系统
[root@cdh1 ~]# pvcreate /dev/xvdb2
  Device /dev/xvdb2 not found.
[root@cdh1 ~]# reboot
Connection to xx.xxx.x.xx closed by remote host.
Connection to xx.xxx.x.xx closed.
[root@cdh1 ~]# pvcreate /dev/xvdb2
  Physical volume "/dev/xvdb2" successfully created.

# 扩展卷组
[root@cdh1 ~]# vgextend  VolGroup  /dev/xvdb2
  Volume group "VolGroup" successfully extended

# 查看物理卷
[root@cdh1 ~]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/xvda3
  VG Name               VolGroup
  PV Size               <38.51 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              9857
  Free PE               0
  Allocated PE          9857
  PV UUID               uQLUzq-WiZg-YdPp-KNq1-cVdw-aTBc-ey3YWy

  --- Physical volume ---
  PV Name               /dev/xvdb1
  VG Name               VolGroup
  PV Size               42.00 GiB / not usable 4.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              10751
  Free PE               0
  Allocated PE          10751
  PV UUID               JagRJV-FXfW-BcWx-vweZ-kPQz-7goT-COX2MH

  --- Physical volume ---
  PV Name               /dev/xvdb2
  VG Name               VolGroup
  PV Size               <418.00 GiB / not usable 3.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              107007
  Free PE               107007
  Allocated PE          0
  PV UUID               nf2YjK-Kcp0-hxX3-QeUU-MuX2-EmG5-zzyIQK

  --- Physical volume ---
  ……


# 扩展分区。
[root@cdh1 ~]# lvextend /dev/VolGroup/root /dev/xvdb2
  Size of logical volume VolGroup/root changed from <24.51 GiB (6274 extents) to 442.50 GiB (113281 extents).
  Logical volume VolGroup/root successfully resized.
  
# 调整文件系统大小
[root@cdh1 ~]# xfs_growfs /dev/VolGroup/root
meta-data=/dev/mapper/VolGroup-root isize=512    agcount=4, agsize=1606144 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=6424576, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=3137, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 6424576 to 115999744

# 查看分区。可以看到/dev/VolGroup/root逻辑分区扩展到了442.50 GiB
[root@cdh1 ~]# lvscan
  ACTIVE            '/dev/VolGroup/root' [442.50 GiB] inherit
  ACTIVE            '/dev/VolGroup/var' [<50.00 GiB] inherit
  ACTIVE            '/dev/VolGroup/swap' [<6.00 GiB] inherit
  ACTIVE            '/dev/VolGroup00/consul' [1.00 GiB] inherit
  
# 用df查看系统磁盘信息
[root@cdh1 ~]# df -h
文件系统                       容量  已用  可用 已用% 挂载点
/dev/mapper/VolGroup-root      443G   11G  433G    3% /
devtmpfs                        16G     0   16G    0% /dev
tmpfs                           16G     0   16G    0% /dev/shm
tmpfs                           16G  8.7M   16G    1% /run
tmpfs                           16G     0   16G    0% /sys/fs/cgroup
/dev/xvda1                     497M  267M  231M   54% /boot
/dev/mapper/VolGroup-var        50G  6.8G   44G   14% /var
/dev/mapper/VolGroup00-consul 1014M   33M  982M    4% /consul
tmpfs                          3.2G     0  3.2G    0% /run/user/1001
cm_processes                    16G     0   16G    0% /run/cloudera-scm-agent/process
tmpfs                          3.2G     0  3.2G    0% /run/user/0

你可能感兴趣的:(大数据,系统)