LVM管理多块物理存储盘

一、引言

写这篇文章的初衷是因为自己研究的项目驱动,具体情况如下:我我现在搭建了一个三节点的hadoop集群,然后每个节点除了一个128GB的SSD之外,还有9个SATA的插槽,现在上面有三块3TB的SATA,我把Hadoop的生态系统部署在了SSD上,然后想把hdfs的数据全部存储到SATA上,所以就需要对现有的SATA进行整合,我在磁盘阵列和LVM两项技术之中选择了LVM。这篇文章就是介绍如何使用LVM技术管理多块SATA物理存储盘。

 

二、具体操作

注意:

1)下述所有操作均在root账户下操作

2)每个节点我有4块盘,分别为/dev/sda、/dev/sdb、/dev/sdc和/dev/sdd,sda为centos 7挂载盘,现在我要通过LVM技术将sdb、sdc和sdd三块盘进行整理

1.使用fdisk命令对每一块物理盘进行分区,并将分区类型设为LVM,下面以sdb为例具体命令如下

fdisk /dev/sdb

之后会进入到磁盘管理命令行,在Command (m for help):处使用如下fdisk指令:

n
l
t
8e
w

其中,

  • n:表示添加一个新的分区,要求输入分区的起始和终止位置,由于我是想利用全部磁盘空间,所以我没有输入分区的起始和终止位置,使用的其默认的位置(即直接按enter即可)。
  • l:表示显示可用的分区类型,此处我是用来查看LVM的分区系统ID(8e)
  • t:改变分区系统ID
  • 8e:为LVM分区系统ID
  • w:将分区表写入磁盘

通过上述方法,就在sdb中建好了一个分区为sdb1。同理,分别在剩下的sdc和sdd两块盘中新建分区sdc1和sdd1。

2.创建物理卷

通过pvcreate命令创建物理卷:

pvcreate /dev/sdb1
pvcreate /dev/sdc1
pvcreate /dev/sdd1

可以通过pvs命令查看已有的物理卷,如下所示:

  PV         VG     Fmt  Attr PSize   PFree
  /dev/sda2  centos lvm2 a--  111.30g 4.00m
  /dev/sdb1  vg     lvm2 a--    2.00t 2.00t
  /dev/sdc1  vg     lvm2 a--    2.00t 2.00t
  /dev/sdd1  vg     lvm2 a--    2.00t 2.00t

3.创建卷组

通过命令vgcreate创建卷组,并通过命令vgextend将其他的物理卷加至卷组中:

vgcreate vg /dev/sdb1

vgextend vg /dev/sdc1
vgextend vg /dev/sdd1

其中vg为卷组名,可通过vgs命令查看已有卷组,如下所示:

  VG     #PV #LV #SN Attr   VSize   VFree
  centos   1   3   0 wz--n- 111.30g 4.00m
  vg       3   0   0 wz--n-   6.00t 6.00t

4.创建逻辑卷

通过lvcreate命令创建逻辑卷,如下所示:

lvcreate -l 100%FREE -n lv vg

lv为逻辑卷名称,vg为物理卷名称。其中,

  • -l:指定分配给新逻辑卷的逻辑块数,或者要用的逻辑块的百分比,此处我选择的是100%全用
  • -n:指定逻辑卷的名称

可以通过lvs命令查看已有的逻辑卷,如下所示:

  LV   VG     Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home centos -wi-ao---- 53.36g                                                    
  root centos -wi-ao---- 50.06g                                                    
  swap centos -wi-ao----  7.88g                                                    
  lv   vg     -wi-a-----  6.00t 

5.为4中创建的逻辑卷创建文件系统

mkfs.xfs /dev/vg/lv

6.在系统上挂载上述创建的逻辑卷

mkdir /mnt/mylv
mount /dev/vg/lv /mnt/mylv/

修改/etc/fstab文件,设为开机自动挂载,在末尾添加如下这一行

/dev/vg/lv	/mnt/mylv	xfs	defaults	0	0

7.将/home/hadoop用户目录下的hadoopdir移至/mnt/mylv中

cp -r /home/hadoop/hadoopdir /mnt/mylv/

8.给/mnt/mylv/hadoopdir目录设置权限

chown -R hadoop:hadoop /mnt/mylv/hadoopdir

9.将/home/hadoop目录下的hadoopdir目录删除或者设为.bak文件

mv /home/hadoop/hadoopdir /home/hadoop/hadoopdir.bak

10.在/home/hadoop目录下创建指向/mnt/mylv/hadoopdir的软链接

ln -s /mnt/mylv/hadoopdir /home/hadoop/hadoopdir

在/home/hadoop目录下可通过ll命令查看此软链接

至此,就完成了多块物理磁盘的空间整合了。

可以用pvdisplay,vgdisplay和lvdisplay命令查看物理卷、卷组和逻辑卷。下面是lvdisplay的结果,只截取了我创建的lv逻辑卷的相关信息:

  --- Logical volume ---
  LV Path                /dev/vg/lv
  LV Name                lv
  VG Name                vg
  LV UUID                X2B1Dk-pA9K-LOpj-3y4i-hdXi-1V0a-0sHtDq
  LV Write Access        read/write
  LV Creation host, time slave1, 2016-12-15 19:28:51 +0800
  LV Status              available
  # open                 0
  LV Size                6.00 TiB
  Current LE             1572861
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:3

 

三、相关说明及思考

1.上述使用到的命令可以查看文档了解如何使用

2.在上述LVM过程中有一个奇怪的现象,我的3块3TB的SATA盘在LVM之后,显示的都是有2TB了,剩下的1TB被吃掉了,我暂时没有找到原因,先记一笔,后面再探究的时候找原因。

 

转载于:https://my.oschina.net/xhhuang/blog/807562

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值