CentOS LVM 安装指南
逻辑卷管理(LVM)是Linux系统中用于灵活管理磁盘存储的一种技术,通过LVM,可以动态调整文件系统的大小、创建快照等,极大地提高了存储管理的灵活性和效率,本文将详细介绍如何在CentOS上安装和使用LVM。
环境介绍
1、服务器相关
版本:CentOS 7.7
架构:el7.x86_64
网络环境:内网环境
yum源:本地yum源,使用的是CentOS 7.7的镜像
2、情况介绍
由于磁盘需要做LVM逻辑卷,需要安装lvm2,否则无法使用相关命令。
配置好本地yum源后,还是无法使用yum install lvm2
。
手动下载lvm2及其依赖,然后使用rpm方式进行安装。
安装流程
1、在虚拟机中下载lvm2及其依赖
mkdir /data yum install downloadonly downloaddir=/data/ lvm2
2、上传到服务器并安装
cd /data rpm ivh * nodeps force
3、查看lvm2是否安装,相关命令是否可用
rpm qa | grep lvm2 which pvcreate vgcreate lvcreate
4、正常进行LVM逻辑卷的部署
其他解决方法
如果项目中有nginx服务器,可以在nginx服务器上做在yum线源的代理,然后给内网服务器使用,后面会出相关部署方案。
基本概念
LVM是Logical Volume Manager(逻辑卷管理)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性,LVM的工作原理其实很简单,它就是通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用,在传统的磁盘管理机制中,我们的上层应用是直接访问文件系统,从而对底层的物理硬盘进行读取,而在LVM中,其通过对底层的硬盘进行封装,当我们对底层的物理硬盘进行操作时,其不再是针对于分区进行操作,而是通过一个叫做逻辑卷的东西来对其进行底层的磁盘管理操作,比如说我增加一个物理硬盘,这个时候上层的服务是感觉不到的,因为呈现给上层服务的是以逻辑卷的方式。
LVM的特点
LVM最大的特点就是可以对磁盘进行动态管理,因为逻辑卷的大小是可以动态调整的,而且不会丢失现有的数据,如果我们新增加了硬盘,其也不会改变现有上层的逻辑卷,作为一个动态磁盘管理机制,逻辑卷技术大大提高了磁盘管理的灵活性。
基本术语解释
1、PV (Physical Volume) 物理卷:物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘,也可以是raid设备。
2、VG (Volume Group) 卷组:卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中,一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。
3、LV (Logical Volume) 逻辑卷:逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间,系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组。
关系图
PE (Physical Extent) 物理块:LVM默认使用4MB的PE区块,而LVM的LV最多仅能含有65534个PE (lvm1的格式),因此默认的LVM的LV最大容量为4M*65534/(1024M/G)=256G,PE是整个LVM最小的储存区块,也就是说,其实我们的资料都是由写入PE来处理的,简单的说,这个PE就有点像文件系统里面的block大小,所以调整PE会影响到LVM的最大容量!不过,在CentOS 6.x以后,由于直接使用lvm2的各项格式功能,因此这个限制已经不存在了。
安装步骤详解
1. 准备工作
在开始之前,请确保您已经在系统中安装了必要的软件包,如果没有,请按照以下步骤进行安装。
sudo yum install y lvm2
2. 创建物理卷
我们需要创建一个或多个物理卷,假设我们有一个名为/dev/sdb的硬盘,我们将它初始化为物理卷。
sudo pvcreate /dev/sdb
3. 创建卷组
我们将刚刚创建的物理卷添加到一个新的卷组中,这里我们创建一个名为myvg的卷组。
sudo vgcreate myvg /dev/sdb
4. 创建逻辑卷
我们在myvg卷组中创建一个名为mylv的逻辑卷,假设我们想要一个10GB的逻辑卷。
sudo lvcreate L 10G n mylv myvg
5. 格式化逻辑卷
创建完逻辑卷后,我们需要将其格式化为文件系统,这里我们使用ext4文件系统。
sudo mkfs.ext4 /dev/myvg/mylv
6. 挂载逻辑卷
我们将逻辑卷挂载到文件系统的某个目录下,这里我们将其挂载到/mnt目录。
sudo mkdir /mnt/mylv sudo mount /dev/myvg/mylv /mnt/mylv
7. 验证挂载
使用df命令查看挂载情况。
df h
8. 开机自动挂载
为了使逻辑卷在系统重启后仍然有效,我们需要编辑/etc/fstab文件。
echo '/dev/myvg/mylv /mnt/mylv ext4 defaults 0 0' | sudo tee a /etc/fstab
9. 扩容操作
假如有一天,mylv的使用量达到了80%,需要扩容,那我们该怎么做呢?因为myvg中还有很多剩余空间,所以我们可以从myvg中再分配点空间给mylv,查看myvg的剩余容量。
sudo vgs
10. 对mylv进行扩容
假设我们要增加5GB的空间给mylv。
sudo lvextend L +5G /dev/myvg/mylv
11. resize2fs
扩容完成后,我们需要使用resize2fs命令来调整文件系统的大小。
sudo resize2fs /dev/myvg/mylv
12. 再次验证挂载
使用df命令查看新的挂载情况。
df h
就是在CentOS上安装和使用LVM的基本步骤,通过这些步骤,您可以轻松地管理和扩展您的磁盘空间。