RADI:

简介:
可以把RAID理解成一种使用磁盘驱动器的方法,它将一组磁盘驱动器用某种逻辑方式联系起来,作为逻辑上的一个磁盘驱动器来使用。

优点:
传输速率高
更高的安全性

分类:
1.raid0 条带
性能提升:读写
冗余能力:不具备
空间利用率:n 至少两块盘
2.raid1 镜像
性能提升:写性能下降,读性能提高
冗余能力:具备
空间利用率:1/2 正好两个
3.raid0+1(同组都可以坏,不能是不同组的相同标号坏)利用率都是1/2 raid1+0 (同组不能都坏掉
性能表现:读写提升
冗余能力:具备
空间利用率:1/2 至少4块
5.raid5 轮换成为校验盘的机制 性能表现:读写提升 冗余能力:具备 空间利用率:(n-1)/n 至少3

LVM

LVM是逻辑盘卷管理(LogicalVolumeManager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和 分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。通过LVM系统管理员可以轻松管理磁盘分区,如:将若干个磁盘分区连接为一个整块的卷组 (volumegroup),形成一个存储池。管理员可以在卷组上随意创建逻辑卷组(logicalvolumes),并进一步在逻辑卷组上创建文件系 统。
LVM是 Logical Volume Manager(逻辑卷管理)的简写
PV:是物理的磁盘分区
VG:LVM中的物理的磁盘分区,也就是PV,必须加入VG,可以将VG理解为一个仓库统一管理了几个大的硬盘,形成了一个统一虚拟的存储资源池。
LV:也就是从VG中划分的逻辑分区

1.对硬盘进行分区并修改格式为Linux RAID

[dzqd-root@dqynj027061 ~]$ sudo fdisk -l | grep sd
磁盘 /dev/sda:480.1 GB, 480103981056 字节,937703088 个扇区
/dev/sda1   *        2048     1026047      512000   83  Linux
/dev/sda2         1026048    21997567    10485760   82  Linux swap / Solaris
/dev/sda3        21997568   937701375   457851904   83  Linux
磁盘 /dev/sdl:4000.8 GB, 4000787030016 字节,7814037168 个扇区
磁盘 /dev/sdm:4000.8 GB, 4000787030016 字节,7814037168 个扇区

[dzqd-root@dqynj027061 ~]$ sudo fdisk /dev/sdl
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.
欢迎使用 fdisk (util-linux 2.23.2)。

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


命令(输入 m 获取帮助):n
分区号 (1-128,默认 1):
第一个扇区 (34-7814037134,默认 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-7814037134,默认 7814037134):
已创建分区 1


命令(输入 m 获取帮助):l
  1 EFI System                     C12A7328-F81F-11D2-BA4B-00A0C93EC93B
  2 MBR partition scheme           024DEE41-33E7-11D3-9D69-0008C781F39F
  3 BIOS boot partition            21686148-6449-6E6F-744E-656564454649
  4 Microsoft reserved             E3C9E316-0B5C-4DB8-817D-F92DF00215AE
  5 Microsoft basic data           EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
  6 Microsoft LDM metadata         5808C8AA-7E8F-42E0-85D2-E1E90434CFB3
  7 Microsoft LDM data             AF9B60A0-1431-4F62-BC68-3311714A69AD
  8 Windows recovery evironmnet    DE94BBA4-06D1-4D40-A16A-BFD50179D6AC
  9 IBM General Parallel Fs        37AFFC90-EF7D-4E96-91C3-2D7AE055B174
 10 HP-UX data partition           75894C1E-3AEB-11D3-B7C1-7B03A0000000
 11 HP-UX service partition        E2A1E728-32E3-11D6-A682-7B03A0000000
 12 Linux filesystem               0FC63DAF-8483-4772-8E79-3D69D8477DE4
 13 Linux RAID                     A19D880F-05FC-4D3B-A006-743F0F84911E
 14 Linux swap                     0657FD6D-A4AB-43C4-84E5-0933C84B4F4F
 15 Linux LVM                      E6D6D379-F507-44C2-A23C-238F2A3DF928
 16 Linux reserved                 8DA63339-0007-60C0-C436-083AC8230908
 17 FreeBSD data                   516E7CB4-6ECF-11D6-8FF8-00022D09712B
 18 FreeBSD boot                   83BD6B9D-7F41-11DC-BE0B-001560B84F0F
 19 FreeBSD swap                   516E7CB5-6ECF-11D6-8FF8-00022D09712B
 20 FreeBSD UFS                    516E7CB6-6ECF-11D6-8FF8-00022D09712B
 21 FreeBSD ZFS                    516E7CBA-6ECF-11D6-8FF8-00022D09712B
 22 FreeBSD Vinum                  516E7CB8-6ECF-11D6-8FF8-00022D09712B
 23 Apple HFS/HFS+                 48465300-0000-11AA-AA11-00306543ECAC
 24 Apple UFS                      55465300-0000-11AA-AA11-00306543ECAC
 25 Apple RAID                     52414944-0000-11AA-AA11-00306543ECAC
 26 Apple RAID offline             52414944-5F4F-11AA-AA11-00306543ECAC
 27 Apple boot                     426F6F74-0000-11AA-AA11-00306543ECAC
 28 Apple label                    4C616265-6C00-11AA-AA11-00306543ECAC
 29 Apple TV recovery              5265636F-7665-11AA-AA11-00306543ECAC
 30 Apple Core storage             53746F72-6167-11AA-AA11-00306543ECAC
 31 Solaris boot                   6A82CB45-1DD2-11B2-99A6-080020736631
 32 Solaris root                   6A85CF4D-1DD2-11B2-99A6-080020736631
 33 Solaris /usr & Apple ZFS       6A898CC3-1DD2-11B2-99A6-080020736631
 34 Solaris swap                   6A87C46F-1DD2-11B2-99A6-080020736631
 35 Solaris backup                 6A8B642B-1DD2-11B2-99A6-080020736631
 36 Solaris /var                   6A8EF2E9-1DD2-11B2-99A6-080020736631
 37 Solaris /home                  6A90BA39-1DD2-11B2-99A6-080020736631
 38 Solaris alternate sector       6A9283A5-1DD2-11B2-99A6-080020736631
 39 Solaris reserved 1             6A945A3B-1DD2-11B2-99A6-080020736631
 40 Solaris reserved 2             6A9630D1-1DD2-11B2-99A6-080020736631
 41 Solaris reserved 3             6A980767-1DD2-11B2-99A6-080020736631
 42 Solaris reserved 4             6A96237F-1DD2-11B2-99A6-080020736631
 43 Solaris reserved 5             6A8D2AC7-1DD2-11B2-99A6-080020736631
 44 NetBSD swap                    49F48D32-B10E-11DC-B99B-0019D1879648
 45 NetBSD FFS                     49F48D5A-B10E-11DC-B99B-0019D1879648
 46 NetBSD LFS                     49F48D82-B10E-11DC-B99B-0019D1879648
 47 NetBSD concatenated            2DB519C4-B10E-11DC-B99B-0019D1879648
 48 NetBSD encrypted               2DB519EC-B10E-11DC-B99B-0019D1879648
 49 NetBSD RAID                    49F48DAA-B10E-11DC-B99B-0019D1879648
 50 ChromeOS kernel                FE3A2A5D-4F32-41A7-B725-ACCC3285A309
 51 ChromeOS root fs               3CB8E202-3B7E-47DD-8A3C-7FF2A13CFCEC
 52 ChromeOS reserved              2E0A753D-9E48-43B0-8337-B15192CB1B5E
 53 MidnightBSD data               85D5E45A-237C-11E1-B4B3-E89A8F7FC3A7
 54 MidnightBSD boot               85D5E45E-237C-11E1-B4B3-E89A8F7FC3A7
 55 MidnightBSD swap               85D5E45B-237C-11E1-B4B3-E89A8F7FC3A7
 56 MidnightBSD UFS                0394Ef8B-237C-11E1-B4B3-E89A8F7FC3A7
 57 MidnightBSD ZFS                85D5E45D-237C-11E1-B4B3-E89A8F7FC3A7
 58 MidnightBSD Vinum              85D5E45C-237C-11E1-B4B3-E89A8F7FC3A7


命令(输入 m 获取帮助):t
已选择分区 1
分区类型(输入 L 列出所有类型):13
已将分区“Linux filesystem”的类型更改为“Linux RAID”

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

磁盘 /dev/sdl:4000.8 GB, 4000787030016 字节,7814037168 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:gpt
Disk identifier: FF76DADE-B053-4955-9EC8-AC9A6EF33761


#         Start          End    Size  Type            Name
 1         2048   7814037134    3.7T  Linux RAID      

命令(输入 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)
正在同步磁盘。

另外一块同等操作:
sudo fdisk /dev/sdm
{p,回车,回车,回车,l,t,13,w}

#如果分区的时候只能分最大2T的话是因为硬盘格式为MBR修改成GPT就好了
MBR最大只能支持4个主分区,2.2TB大小的分区。
GPT最大可以支持18EB大小的分区。 
[root@dqynj027110 dzqd-root]# parted /dev/sdl
GNU Parted 3.1
Using /dev/sdl
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt                                                      
Warning: The existing disk label on /dev/sdl will be destroyed and all data on this disk will be lost. Do you
want to continue?                                                                
Yes/No? yes                                                               
(parted) print                                                            
Model: ATA HUS726040ALA610 (scsi)
Disk /dev/sdl: 4001GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start  End  Size  File system  Name  Flags

(parted) quit                                                             
Information: You may need to update /etc/fstab.
或者
[root@dqynj027110 dzqd-root]# parted /dev/sdm  mklabel gpt yes print

2.制作软RAID1

安装软raid需要命令:
[dzqd-root@dqynj027061 ~]$ sudo yum install mdadm 
[dzqd-root@dqynj027061 ~]$ sudo mdadm -C /dev/md0 -a yes -l 1 -n 2 /dev/sd{l,m}1 
	-a 检测设备名称
	-n 指定设备数量
	-l 指定RAID级别
	-C 创建
	-v 显示过程
	-f 模拟设备损坏
	-r 移除设备
	-Q 查看摘要信息
	-D 查看详细信息
	-S 停止RAID磁盘阵列
/dev/md0    阵列的设备名称;
/dev/sd[l,m]1  参与创建阵列的磁盘名称

查看raid制作进度:
[dzqd-root@dqynj027061 ~]$ sudo cat /proc/mdstat
查看raid信息:
[dzqd-root@dqynj027061 ~]$ sudo mdadm -D /dev/md0
创建md0的配置文件(服务器重启自动加载到内核):
[dzqd-root@dqynj027061 ~]$ mdadm --detail --scan --verbose >> /etc/mdadm.conf

###如果不需要创建lvm就可以直接格式化磁盘、创建挂载点并设置开机自动启动,制作lvm可以忽略:
[dzqd-root@dqynj027061 ~]$ sudo mkfs.xfs /dev/md0
[dzqd-root@dqynj027061 ~]$ sudo mkdir /data/
[dzqd-root@dqynj027061 ~]$ sudo mount /dev/md0 /data
[dzqd-root@dqynj027061 ~]$ sudo echo "/dev/md0 /data xfs defaults 0 0" >> /etc/fstab

2.创建lvm

创建lvm物理卷:
[dzqd-root@dqynj027061 ~]$ sudo pvcreate /dev/md0

创建lvm卷组vg-sdl1-sdm1:
[dzqd-root@dqynj027061 ~]$ sudo vgcreate vg-sdl1-sdm1 /dev/md0 
vgs //查看可以使用空间

创建lvm逻辑卷lv-sdl1-sdm1:
[dzqd-root@dqynj027061 ~]$ sudo lvcreate -L 3.7t -n lv-sdl1-sdm1 vg-sdl1-sdm1
lvs //查看可以查看逻辑卷

格式化逻辑卷并设置自动挂载:
[dzqd-root@dqynj027061 ~]$ sudo mkfs.xfs /dev/vg-sdl1-sdm1/lv-sdl1-sdm1 
[dzqd-root@dqynj027061 ~]$ sudo mkdir /data
[dzqd-root@dqynj027061 ~]$ sudo mount /dev/vg-sdl1-sdm1/lv-sdl1-sdm1 /data
[dzqd-root@dqynj027061 ~]$ sudo echo "/dev/vg-sdl1-sdm1/lv-sdl1-sdm1 /data  xfs  defaults  0 0" >> /etc/fstab 
[dzqd-root@dqynj027061 ~]$ sudo df -Th

3.题外话:

1.测试磁盘故障:
RAID测试,RAID中模拟一个自盘出现故障:
mdadm /dev/md0 -f /dev/sdl1 在之前创建的md0中分区/dev/sdb1出现故障

查看重构过程:
cat /proc/mdstat

删除出现问题的磁盘:
mdadm /dev/md0 -r /dev/sdb1

增加一块磁盘:
mdadm /dev/md0 -a /dev/sdb1

添加磁盘会曾为热备盘,让热备盘转变为活动磁盘需要执行以下命令:
将序号为4的热备盘转转变为活动磁盘:
mdadm -G /dev/md0 -n4

增加后只是阵列的容量增加了,但是文件系统还没有增加,需要执行一下命令将磁盘阵列的容量同步到文件系统去
resize2fs /dev/md0

**清除软raid:**
停止/dev/md0磁盘阵列:
mdadm -S /dev/md0

清除所有磁盘上的超级块数据才行,要不没法删除:
mdadm --zero-superblock /dev/sdb{l,m}1

#停止后还要删除配置文件,否则重启还会出现
注释/etc/fstab上的挂载信息:
vim /etc/fstab
#/dev/md0 /data xfs defaults 0 0
注释/etc/mdadm.conf对应的RAID信息:
vi /etc/mdadm.conf 
#DEVICE /dev/sdl1 /dev/sdm1
#ARRAY /dev/md0 metadata=1.2 name=myhostname:0UUID=ba6c37b0:3acbd94c:7cd55917:de7c61ea

删除md0:
rm -f /dev/md0