美文网首页
VMware扩展Centos虚拟机的硬盘

VMware扩展Centos虚拟机的硬盘

作者: Kcrise | 来源:发表于2020-03-04 22:27 被阅读0次

引言

在近日的工作中,需要分析出用户的一些行为习惯,因此,需要对日志做一个统计分析。首先要做的是将用户的活跃度做个排序。因此,如何统计每个用户上报的消息量,是首要解决的问题。本人计划在虚拟机中使用hive。打开虚拟机后,发现虚拟机的磁盘只有40G,可用只有27G,而需要处理的文件至少30G,因此需要对虚拟机磁盘做个扩容。以下为扩容的过程记录,如有不妥之处,欢迎大神指正。

环境

VMware 15
Centos 7.6

主机:
master:192.168.10.21
slaver1:192.168.10.22
slaver3:192.168.10.23

简述下Hadoop集群
Namenode:192.168.10.21
Datanode:192.168.10.22
Datanode:192.168.10.23

Hive相关:
Hive:192.168.10.21
mysql:192.168.10.22

扩容

  • 将192.168.10.21(master)进行扩容至70G,首先将master虚拟机关闭。

    image.png
  • 双击硬盘打开虚拟机设置对话框,然后单击选中硬盘

    image.png
  • 可以看到扩展按钮是灰色的
    注意:一定要先检查一下,虚拟机是否有快照,如果有快照没有删除的话,是没有法扩展硬盘的。

  • 附:快照删除(需要点时间)
    虚拟机 -->快照 -->快照管理器。选中对应的快照,并点击删除。

  • 点击扩展,并填写大小为70.0
    image.png
    image.png
    image.png

挂载磁盘

  • 启动虚拟机
    1.使用CRT登录
    2.使用命令查看当前磁盘情况
[root@master]/root$df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   37G   20G   18G   52% /
devtmpfs                 1.9G     0  1.9G    0% /dev
tmpfs                    1.9G     0  1.9G    0% /dev/shm
tmpfs                    1.9G   12M  1.9G    1% /run
tmpfs                    1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1               1014M  146M  869M   15% /boot
tmpfs                    378M     0  378M    0% /run/user/0
[root@master]/root$

可以看到原来的磁盘是40G,并没有扩容。

3.查看磁盘分区
fdisk -l

[root@master]/root$fdisk -l

磁盘 /dev/sda:75.2 GB, 75161927680 字节,146800640 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000b2865

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    83886079    40893440   8e  Linux LVM

磁盘 /dev/mapper/centos-root:39.7 GB, 39720058880 字节,77578240 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
image.png

4.对磁盘进行分区
fdisk /dev/sda
然后一路选择默认就可以

[root@master]/root$fdisk /dev/sda
欢迎使用 fdisk (util-linux 2.23.2)。

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

命令(输入 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 获取帮助):p

磁盘 /dev/sda:75.2 GB, 75161927680 字节,146800640 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000b2865

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    83886079    40893440   8e  Linux LVM

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

命令(输入 m 获取帮助):p

磁盘 /dev/sda:75.2 GB, 75161927680 字节,146800640 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000b2865

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    83886079    40893440   8e  Linux LVM
/dev/sda3        83886080   146800639    31457280   83  Linux

命令(输入 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)
正在同步磁盘。
image.png
image.png
image.png
再次查看
fdisk -l
[root@master]/root$fdisk -l

磁盘 /dev/sda:75.2 GB, 75161927680 字节,146800640 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000b2865

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    83886079    40893440   8e  Linux LVM
/dev/sda3        83886080   146800639    31457280   83  Linux

磁盘 /dev/mapper/centos-root:39.7 GB, 39720058880 字节,77578240 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
image.png

5.查看卷组情况
vgdisplay

[root@master]/root$vgdisplay
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <39.00 GiB
  PE Size               4.00 MiB
  Total PE              9983
  Alloc PE / Size       9982 / 38.99 GiB
  Free  PE / Size       1 / 4.00 MiB
  VG UUID               gA7gBP-bdBO-SHi9-BdEm-Qv4E-kbrr-VF0AXD

此时卷组并未扩容

  • 扩容虚拟卷组

1.重启虚拟机
[root@master]/root$reboot

2.初始化新增的分区
pvcreate /dev/sda3

[root@master]/root$pvcreate /dev/sda3
  Physical volume "/dev/sda3" successfully created.

3.查看卷组情况vgdisplay

[root@master]/root$vgdisplay         
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <39.00 GiB
  PE Size               4.00 MiB
  Total PE              9983
  Alloc PE / Size       9982 / 38.99 GiB
  Free  PE / Size       1 / 4.00 MiB
  VG UUID               gA7gBP-bdBO-SHi9-BdEm-Qv4E-kbrr-VF0AXD
image.png

4.将初始化过的分区加入到虚拟卷组名

vgextend 虚拟卷组名 新增的分区
vgextend centos /dev/sda3

[root@master]/root$vgextend centos /dev/sda3
  Volume group "centos" successfully extended

5.查看卷组情况
vgdisplay

[root@master]/root$vgdisplay 
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  4
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               68.99 GiB
  PE Size               4.00 MiB
  Total PE              17662
  Alloc PE / Size       9982 / 38.99 GiB
  Free  PE / Size       7680 / 30.00 GiB
  VG UUID               gA7gBP-bdBO-SHi9-BdEm-Qv4E-kbrr-VF0AXD

6.扩容卷组
lvextend -L +需要扩展的容量 需要扩展的文件系统名
lvextend -L +29G /dev/mapper/centos-root

[root@master]/root$lvextend -L +29G /dev/mapper/centos-root
  Size of logical volume centos/root changed from 36.99 GiB (9470 extents) to 65.99 GiB (16894 extents).
  Logical volume centos/root successfully resized.

7.查看物理卷情况

image.png

此时卷组已经扩容

  • 扩容/文件系统
    1.查看文件系统
    df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   37G   20G   18G   52% /
devtmpfs                 1.9G     0  1.9G    0% /dev
tmpfs                    1.9G     0  1.9G    0% /dev/shm
tmpfs                    1.9G   12M  1.9G    1% /run
tmpfs                    1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1               1014M  146M  869M   15% /boot
tmpfs                    378M     0  378M    0% /run/user/0

此时可以看到文件系统并没有扩容

2.扩容文件系统
resize2fs 文件系统名
resize2fs /dev/mapper/centos-root

[root@master]/root$ resize2fs /dev/mapper/centos-root
resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Bad magic number in super-block 当尝试打开 /dev/mapper/centos-root 时
找不到有效的文件系统超级块.

这个方法是不对的,需要注意文件系统的格式。
resize2fs 好像适应于ext4。

解决方案:

  • 查看文件系统的格式
    cat /etc/fstab | grep centos-root
[root@master]/root$cat /etc/fstab | grep centos-root
/dev/mapper/centos-root /                       xfs     defaults        0 0
  • 使用文件系统类型为xfs的命令
    xfs_growfs 文件系统名
    xfs_growfs /dev/mapper/centos-root
[root@master]/root$xfs_growfs /dev/mapper/centos-root
meta-data=/dev/mapper/centos-root isize=512    agcount=4, agsize=2424320 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=9697280, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=4735, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 9697280 to 17299456

3.再次查看文件系统
df -h

[root@master]/root$df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   66G   20G   47G   30% /
devtmpfs                 1.9G     0  1.9G    0% /dev
tmpfs                    1.9G     0  1.9G    0% /dev/shm
tmpfs                    1.9G   12M  1.9G    1% /run
tmpfs                    1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1               1014M  146M  869M   15% /boot
tmpfs                    378M     0  378M    0% /run/user/0

顺利扩容成功!!!

参考文档

https://www.jianshu.com/p/1b695b17897e

相关文章

网友评论

      本文标题:VMware扩展Centos虚拟机的硬盘

      本文链接:https://www.haomeiwen.com/subject/wyuilhtx.html