LVM(逻辑卷管理):是磁盘的一种管理机制

Logical Volume Manager 即逻辑卷管理(LVM)

 功能:能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性。

 /boot 分区用于存放引导文件,不能给予LVM创建。


LVM机制的基本概念:

PV (Physical Volume,物理卷)

物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一一个保留区块,

用于记录LVM的属性,并把存储空间分割成默认大小为4MB 的基本单元(PE) ,从而构成物理卷。

VG (Volume Group, 卷组)

由一个或多个物理卷组成一个整体,即称为卷组,在卷组中可以动态地添加或移除物理卷。

LV (Logical Volume,逻辑卷)

从卷组中分割出的一块空间, 形成逻辑卷。使用mkfs等工具可在逻辑卷上创建文件系统。

LVM与磁盘配额_磁盘配额

LVM的管理命令


PV管理命令

 VG管理命令

 LV管理命令

Scan (扫描)

 pvscan

 vgscan

 lvscan

Create (建立)

 pvcreate

vgcreate

 lvcreate

Display (显示)

pvdisplay

vgdisplay

lvdisplay

Remove (移除)

 pvremove  

   vgremove  

 lvremove

Extend (扩展)

/

vgextend  

 lvextend

Reduce (减少)

/

  vgreduce

 lvreduce


主要命令格式:

pvcreate 设备名+T设备名... ...

vgcreate  卷组名  物理卷名1  物理卷名2

Ivcreate -L 容量大小 -n 逻辑卷名 卷组名

tvextend


LVM操作主要命令步骤

1、添加硬盘

关闭主机,添加两块新硬盘,重启主机


2、创建分区

先使用fdisk工具将磁盘设备/dev/sdb、 /dev/sdc划分出主分区sdb1、sdc1, 并且把分区类型的ID标记号改为"8e"

fdisk /dev/sdb

fdisk /dev/sdc

LVM与磁盘配额_磁盘配额_02

3、创建物理卷

pvcreate /dev/sdb1 /dev/sdc1

LVM与磁盘配额_磁盘配额_03

4、创建卷组

卷组名为vgname1

命令:gcreate vgnamel /dev/sdb1 /dev/sdc1

LVM与磁盘配额_磁盘配额_04

5、 创建逻辑卷,

逻辑卷名为1vname1, 容量为20GB, 生成的文件路径为/dev/vgname1/lvname1

命令:lvcreate -L 20G -n lvname1 vgname1

LVM与磁盘配额_LVM逻辑卷管理_05

6、格式化并挂载

对逻辑卷进行格式化创建XFS文件系统,并挂载到/opt目录下

mkfs -t xfs /dev/vgname1/ lvname1

mount /dev/vgname1/ lvname1 /opt

df -h

LVM与磁盘配额_LVM逻辑卷管理_06

7、再扩容

vgextend vgname1 /dev/ sdc2

lvextend -L +10G /dev/vgname1/ lvname1

xfs_growfs /dev/vgname1/lvname1       #刷新xfs文件系统容量

resize2fs /dev/vgname1/ lvname1        #刷新ext4类型文件系统容量

LVM与磁盘配额_磁盘配额_07


LVM与磁盘配额_LVM逻辑卷管理_08


磁盘配额概述:

实现磁盘限额的条件

 需要Linux内核支持

 安装xfsprogs-与quota软件包

 

Linux磁盘限额的特点

 作用范围:针对指定的文件系统(分区)

 限制对象:用户帐号、组帐号

 限制类型:磁盘容量、文件数量

 限制方法:软限制、硬限制


设置磁盘配额背景

     当Linux根分区的磁盘空间耗尽时,Linux操作系统将无法再建立新的文件,同时也可能会出现服务程序崩溃、系统无法启动等故障。

     为了避免在服务器中出现类似磁盘空间不足的问题,可以启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可用性

      在 Centos 系统中,不同的文件系统使用不同磁盘配额配置管理工具。例如,XFS文件系统通过xfs_quota 工具进行管理: EXT3/4

     文件系统通过quota工具进行管理。


磁盘配额步骤:

以支持配额功能的方式挂载文件系统

 -->编辑用户和组账号的配额设置

  -->验证磁盘配额功能

   -->查看磁盘配额使用情况

 

Centos7中设置磁盘配额步骤操作示例:

1、检查是否已安装xfsprogs和xfs_quota软件包

rpm -q xfsprogs quota

或 yum install -y xfsprogs quota

LVM与磁盘配额_磁盘配额_09

2、以支持配额功能的方式挂载文件系统

umount /dev/vgname1/ lvname1

mount -o usrquota, grpquota /dev/vgname1/lvname1 /opt    

#添加挂载参数"usrquota, grpquota"用于增加对用户、组配额功能的支持

vim /etc/fstab  

/dev/vgname1/lvname1  /opt  xfs  defaults, usrquota, grpquota        0  0


umount /dev/ vgnamel/lvnamel

mount -a                      #-a选项,将/etc/fstab的所有 内容重新加载

LVM与磁盘配额_磁盘配额_10

3、编辑用户和组账号的配额设置

useradd zhangsan

passwd zhangsan   echo 123456| passwd --stdin zhangsan 设置密码

xfs_ quota -x -c 'limit -u bsoft=80M bhard=100M isoft=40 ihard=50 zhangsan' /opt/

LVM与磁盘配额_LVM逻辑卷管理_11

-x: 表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用。

-c: 表示直接调用管理命令。

-u: 指定用户账号对象

-g: 指定组账号对象

bsoft:设置磁盘容量的软限制数值(默认单位为KB)。

bhard:设置磁盘容量的硬限制数值(默认单位为KB)。

isoft:设置磁盘文件数的软限制数值。

ihard:设置磁盘文件数的硬限制数值。


#仅限制磁盘容量

xfs_ quota -x -c 3

-u bsoft=80M bhard=100M zhangsan' /opt/


#仅限制文件数

xfs_quota -x -c 'limit -u isoft=4 ihard=5 zhangsan' /opt/


#查看zhangsan磁盘容量限制

xfs_quota -c 'quota -uv zhangsan' /opt/


#查看zhangsan文件数限制

xfs_quota -c 'quota -i -uv zhangsan' /opt/


4、验证磁盘配额功能

chmod 777 /opt

Su zhangsan

cd /opt

#验证磁盘容量超限

dd if=/dev/zero of= /opt/ddtest.txt bs=10M count=12

#验证磁盘文件数超限

touch {aa,bb,cc,dd,ee,ff}.txt

LVM与磁盘配额_磁盘配额_12


dd命令是一个设备转换和连续复制命令

“if=” 指定输入设备(或文件)

"of=” 指定输出设备(或文件)

"bs="指定读取数据块的大小

"count="指定读取数据块的数量

/dev/zero “零”设备文件,可以无限的提供空字符。常用来生成一个特定大小的文件。


5、查看配额使用情况

#查看所有可用分区的磁盘容量配额使用情况

xfs_ quota -x -c ' report -a


#查看磁盘容量和文件数的报告

xfs_ quota -x -c 'report -abih'



扩展知识:

badblocks -SV /dev/sda1

检测磁道的状况好坏

badblocks -SV /dev/abc/abc01  


磁盘容量的使用情况命令

df -h    df -i  

df -h 以人性化的方式显示分区挂载情况

    -i 查看分区inode号


磁盘的IO使用情况命令

iostat\    


参数

说明

%iowait

值过高,表示硬盘的IO不够用了,出现瓶颈

%idle :

值高,表示CPU比较空闲;

值高但是系统响应慢,可能是CPU在等待分配内存。此时可能是内存不够用了,需要加大内存容量或释放缓存;

值持续低于10,可能是CPU的处理能力变低了,需要加大CPU性能,或者排查有无大量占用CPU使用率的进程。



查看系统中哪个磁盘或分区最繁忙

iostat -d -k -p /dev/sda

-d 仅显示磁盘统计信息  

-k 以 Kb 为单位显示每秒的磁盘请求数,默认单位块

-p device | ALL 用于显示块设备及系统分区的统计信息

​https://blog.csdn.net/qq_45533800/article/details/111660115?utm_medium=distribute.wap_relevant_bbs_down.none-task-blog-2%7Eall%7Efirst_rank_v2%7Erank_v29-4.nonecase&dist_request_id=1619530168617_11152&depth_1-utm_source=distribute.wap_relevant_bbs_down.none-task-blog-2%7Eall%7Efirst_rank_v2%7Erank_v29-4.nonecase​