磁盘管理进阶–RAID–LVM初步应用

配置配额系统

综述

  •   在内核中执行

  •   以文件系统为单位启用

  •   对不同组或者用户的策略不同

根据块或者节点进行限制

执行软限制( soft limit)
硬限制( hard limit)

初始化

分区挂载选项: usrquota、 grpquota

在创建好分区后, 对/etc/fstab 进行修改 , 加入 后加进来的分区的UUID和其他选项, 在挂载选项加入usrquota,grpquota两项, 加入后, 使用mount -a 通过读取/etc/fstab文件来挂载新的分区..

201608292041001201608292040001
初始化数据库: quotacheck

为用户设定配额

执行

开启或者取消配额: quotaon、 quotaoff
直接编辑配额: edquota username
在shell中直接编辑:

setquota usename 4096 5120 40 50 /foo

 

定义原始标准用户

edquota -p user1 user2

报告配额状态

报告

  •   用户调查: quota username

  •   配额概述: repquota /mountpoint

  •   其它工具: warnquota

201608292047001

什么是RAID

RAID:Redundant Arrays of Inexpensive(Independent) Disks
1988年由加利福尼亚大学伯克利分校( University ofCalifornia-Berkeley) “ A Case for
Redundant Arrays of Inexpensive Disks”。多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提供

RAID

提高IO能力:

  • 磁盘并行读写

  • 提高耐用性

  • 磁盘冗余来实现

级别:多块磁盘组织在一起的工作方式有所不同

 RAID实现的方式:

外接式磁盘阵列:通过扩展卡提供适配能力
内接式RAID:主板集成RAID控制器
安装OS前在BIOS里配置

软件RAID:通过OS实现
RAID级别

RAID-0:条带卷, strip
RAID-1: 镜像卷, mirror
RAID-2
..
RAID-5
RAID-6
RAID-10
RAID-01

RAID级别

RAID-0(条带卷, 将数据以chrunk为单位进行分割存放至不同的磁盘上):

读、写性能提升;
可用空间: N*min(S1,S2,…)
无容错能力
最少磁盘数: 2, 2

RAID-1(镜像卷,将一份数据备份存放到多个磁盘上):

读性能提升、写性能略有下降;
可用空间: 1*min(S1,S2,…)
有冗余能力
最少磁盘数: 2, 2N

RAID-4:

多块数据盘异或运算值,存于专用校验盘

 RAID-5:

读、写性能提升
可用空间: (N-1)*min(S1,S2,…)
有容错能力:允许最多1块磁盘损坏
最少磁盘数: 3, 3+

 RAID-6:

读、写性能提升
可用空间: (N-2)*min(S1,S2,…)
有容错能力:允许最多2块磁盘损坏
最少磁盘数: 4, 4+

 

RAID混合类型级别

RAID-10:

读、写性能提升
可用空间: N*min(S1,S2,…)/2
有容错能力:每组镜像最多只能坏一块
最少磁盘数: 4, 4+
RAID-01、 RAID-50

 RAID7:

可以理解为一个独立存储计算机,自身带有操作系统和管理工具,可以独立运行,理论上性能最高的RAID模式

JBOD: Just a Bunch Of Disks

功能:将多块磁盘的空间合并一个大的连续空间使用
可用空间: sum(S1,S2,…)
常用级别: RAID-0, RAID-1, RAID-5, RAID-10,RAID-50, JBOD

软RAID

mdadm:为软RAID提供管理界面
为空余磁盘添加冗余
结合内核中的md(multi devices)
RAID设备可命名为/dev/md0、 /dev/md1、 /dev/md2、/dev/md3等等

软件RAID的实现

mdadm:模式化的工具

命令的语法格式: mdadm [mode] <raiddevice> [options]<component-devices>
支持的RAID级别: LINEAR, RAID0, RAID1, RAID4,RAID5, RAID6, RAID10

模式:

创建: -C
装配: -A
监控: -F
管理: -f, -r, -a
<raiddevice>: /dev/md#
<component-devices>: 任意块设备
软件RAID的实现
-C: 创建模式
-n #: 使用#个块设备来创建此RAID
-l #:指明要创建的RAID的级别
-a {yes|no}:自动创建目标RAID设备的设备文件
-c CHUNK_SIZE: 指明块大小
-x #: 指明空闲盘的个数
-D:显示raid的详细信息;

mdadm -D /dev/md#
管理模式:

-f: 标记指定磁盘为损坏
-a: 添加磁盘
-r: 移除磁盘

 观察md的状态:
cat /proc/mdstat

软RAID配置示例

使用mdadm创建并定义RAID设备
#mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 /dev/sdb1
/dev/sdc1 /dev/sdd1 /dev/sde1
用文件系统对每个RAID设备进行格式化
#mke2fs -j /dev/md0

测试RAID设备
使用mdadm检查RAID设备的状况
#mdadm –detail|D /dev/md0
增加新的成员
#mdadm –G /dev/md0 –n4 -a /dev/sdf1

软RAID测试和修复

模拟磁盘故障
#mdadm /dev/md0 -f /dev/sda1
移除磁盘
#mdadm /dev/md0 –r /dev/sda1
从软件RAID磁盘修复磁盘故障
替换出故障的磁盘然后开机
在备用驱动器上重建分区
#mdadm /dev/md0 -a /dev/sda1
mdadm、 /proc/mdstat及系统日志信息

软RAID管理

生成配置文件: mdadm –D –s >> /etc/mdadm.conf
停止服务: mdadm –S /dev/md0
激活: mdadm –A –s /dev/md0 激活
强制启动: mdadm –R /dev/md0
删除raid信息: mdadm –zero-superblock /dev/sdb1

练习
1:创建一个可用空间为1G的RAID1设备,文件系统为ext4
,有一个空闲盘,开机可自动挂载至/backup目录

201608292114001201608292113001201608292117001

2:创建由三块硬盘组成的可用空间为2G的RAID5设备,要求其chunk大小为256k,文件系统为ext4,开机可自动挂载至/mydata目录

–chunk=256K

 

逻辑卷管理器( LVM)

允许对卷进行方便操作的抽象层,包括重新设定
文件系统的大小
允许在多个物理设备间重新组织文件系统
将设备指定为物理卷
用一个或者多个物理卷来创建一个卷组
物理卷是用固定大小的物理区域( Physical Extent,PE)来定义的
在物理卷上创建的逻辑卷是由物理区域( PE)组成
可以在逻辑卷上创建文件系统

LVM介绍

LVM: Logical Volume Manager, Version: 2
dm: device mapper: 将一个或多个底层块设备组织成一个逻辑设备的模块
设备名: /dev/dm-#

软链接:
/dev/mapper/VG_NAME-LV_NAME
/dev/mapper/vol0-root
/dev/VG_NAME/LV_NAME
/dev/vol0/root

LVM更改文件系统的容量
LVM可以弹性的更改LVM的容量
通过交换PE来进行资料的转换,将原来LV内的PE转
移到其他的设备中以降低LV的容量,或将其他设备
中的PE加到LV中以加大容量

查看LVM的使用情况

点击“系统” ->“管理” ->“逻辑卷管理器”
增大或减小逻辑卷
打开逻辑卷管理器后,点击“编辑属性”,打开LVM属性
对话框:

删除逻辑卷

删除逻辑卷必须先删除LV,再删除VG,最后删除PV
点击逻辑卷管理器的“卷组” ->“逻辑视图”的LV逻辑卷
点击“移除选择的逻辑卷”,再删除VG,最后删除PV。
pv管理工具

显示pv信息
pvs:简要pv信息显示
pvdisplay

201608292127001

创建pv
pvcreate /dev/DEVICE

201608292127002

vg管理工具
显示卷组
vgs
vgdisplay

创建卷组
vgcreate [-s #[kKmMgGtTpPeE]] VolumeGroupName
PhysicalDevicePath [PhysicalDevicePath…]

201608292130001

管理卷组
vgextend VolumeGroupName PhysicalDevicePath
[PhysicalDevicePath…]201608292137001
vgreduce VolumeGroupName PhysicalDevicePath
[PhysicalDevicePath…]

201608292138001

删除卷组
先做pvmove,再做vgremove
lv管理工具

显示逻辑卷
lvs
Lvdisplay

创建逻辑卷
lvcreate -L #[mMgGtT] -n NAME VolumeGroup

删除逻辑卷
lvremove /dev/VG_NAME/LV_NAME

201608292139001

重设文件系统大小
fsadm [options] resize device [new_size[BKMGTEP]]
resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]

扩展和缩减逻辑卷

扩展逻辑卷:
# lvextend -L [+]#[mMgGtT]
/dev/VG_NAME/LV_NAME
# resize2fs /dev/VG_NAME/LV_NAME

缩减逻辑卷:
# umount /dev/VG_NAME/LV_NAME
# e2fsck -f /dev/VG_NAME/LV_NAME
# resize2fs /dev/VG_NAME/LV_NAME
#[mMgGtT]
# lvreduce -L [-]#[mMgGtT]
/dev/VG_NAME/LV_NAME
# mount

创建逻辑卷实例

创建物理卷
pvcreate /dev/sda3
为卷组分配物理卷
vgcreate vg0 /dev/sda3
从卷组创建逻辑卷
lvcreate -L 256M -n data vg0
mke2fs -j /dev/vg0/data
mount /dev/vg0/data /mnt/data

逻辑卷管理器快照
快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的准确拷贝. 对于需要备份或者复制的现有数据集临时拷贝以及其它操作来说,快照是最合适的选择。
快照只有在它们和原来的逻辑卷不同时才会消耗空间。在生成快照时会分配给它一定的空间,但只有在原来的逻辑卷或者快照有所改变才会使用这些空间当原来的逻
辑卷中有所改变时,会将旧的数据复制到快照中。
快照中只含有原来的逻辑卷中更改的数据或者自生成快照后的快照中更改的数据
建立快照的卷大小只需要原始逻辑卷的15%~20%就够了。也可以使用lvextend放大快照。

逻辑卷管理器快照

快照就是将当时的系统信息记录下来,就好像照相一般,若将来有任何数据改动了,则原始数据会被移动到快照区,没有改动的区域则由快照区和文件系统共
享。由于快照区与原本的LV共用很多PE的区块,因此快照去与被快照的LV必须要要在同一个VG上!系统恢复的时候的文件数量不能高于快照区的实际容量。

使用LVM快照

为现有逻辑卷创建快照

#lvcreate -l 64 -s -n snap-data -p r /dev/vg0/data
挂载快照
#mkdir -p /mnt/snap
#mount -o ro /dev/vg0/snap-data /mnt/snap
删除快照
#umount /mnt/databackup
#lvremove /dev/vg0/databackup

练习
1、创建一个至少有两个PV组成的大小为20G的名为testvg的
VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻
辑卷testlv;挂载至/users目录

201608292151001201608292152001201608292155001
2、 新建用户archlinux,要求其家目录为/users/archlinux
,而后su切换至archlinux用户,复制/etc/pam.d目录至自己
的家目录

201608292202001
3、扩展testlv至7G,要求archlinux用户的文件不能丢失

201608292201001201608292202002
4、收缩testlv至3G,要求archlinux用户的文件不能丢失

201608292209001由于操作顺序错误, 缩减文件系统大小导致文件系统损坏

重新操作过..

201608292215001201608292215002
5、对testlv创建快照,并尝试基于快照备份数据,验正快照
的功

201608292218001

原创文章,作者:M20-石俊,如若转载,请注明出处:http://www.178linux.com/42498

(0)
M20-石俊M20-石俊
上一篇 2016-09-01
下一篇 2016-09-01

相关推荐

  • 用户和组管理类命令详解

    用户和组管理类命令详解 组管理 groupadd 功能描述:创建一个新组 命令格式: groupadd [选项] GROUP 选项: -g GID 表示指定GID,默认情况下使用的是最小的未使用过的GID -r 表示创建一个系统组 groupmod 功能描述:修改组属性 命令格式:groupmod [选项] GROUP 选项: -g GID 表示修改GID …

    Linux干货 2017-07-16
  • 第十周

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 1.POST 开机加电自检,对计算机的cpu,硬盘,内存等进行检测。 2.BIOS 对引导程序进行探测,并把控制权交给引导程序。 3.MBR Master bootloader record主引导程序.通常位于硬盘第一扇区/dev/hda(0,0)或/dev/sda(0,0). 此阶…

    Linux干货 2017-03-30
  • Linux基础之安全加密及CA、证书实战应用

    一、建立私有CA并让客户端申请请求,需要两台虚拟机完成 1、建立私有CA,生成私钥 2、CA公司给自己,生成自签证书 3、为CA提供所需要的目录及文件(如果事先存在,此步骤可以跳过) 二、CA公司已建立,需要一台客户机配合CA签署证书 1、客户端用到证书,因此生成私钥 2、客户端生成证书签署请求 3、将请求通过可靠方式发送给CA主机,这里作为测试,因此使用s…

    Linux干货 2016-10-04
  • tomcat基础-如何给Tomcat前端加反向代理服务器

    Tomcat可以做为反向代理服务器的组件有很多,例如使用nginx,如果使用nginx,Tomcat就只能使用http连接器,另外一种是apache。如果是使用httpd,Tomcat两种连接器都能发挥作用,例如可以使用http连接器,也可以使用ajp连接器,

    Linux干货 2018-03-19
  • 周期性计划任务crond讲解

    crond是Linux或者unix系统的作业调度程序。运用它,在设定的时间段周期性执行某个命令或脚本。下文的例子均在centos 7.3上测试。一、crond组件 如果centos7.3最小化安装,不一定存在crond服务,需要手动安装,安装之后手动启动并设置以后自行开机启动。 主要有cronie、cronie-anacron、crontabs三个程序包。 …

    Linux干货 2017-03-27
  • ☞Web服务器之apache

    Web服务器之apache http协议 telnet的使用 curl命令 httpd的相关配置 welcome.conf — 403 forbidden 修改监听的端口和地址 保持连接 DSO 定义物理主机站点文档 资源访问授权 路径别名Alias 本地httpd-manual 开启status 日志设定 虚拟主机 基于用户的访问控制 httpd压力测试 …

    Linux干货 2016-10-08

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-01 13:30

    总结的很好,raid部分,可以通过作图来展示各个级别的效果会让人看起来更专业。