07 -服务器硬件及RAID配置实战

avatar
作者
猴君
阅读量:1

7.1服务器及RAID磁盘阵列介绍

RAID将一组硬盘连结起来,组成一个阵列,以避免单个硬盘损坏而带来的数据损失同时亦提供了比单个硬盘高的可用性及容错性。常见的组合方式有:RAIDO、RAID1、RAID5RAID6、RAID01、RAID10,下面分别介绍它们的特性。

7.1.1 RAID 0

RAID0俗称“条带”,它将两个或多个硬盘组成一个逻辑硬盘,容量是所有硬盘之和,因为是多个硬盘组合成一个故可并行写操作,写入速度提高,但此方式硬盘数据没有冗余,没有容错,一旦一个物理硬盘损坏,则所有数据丢失。

7.1.2 RAID 1

RAID1俗称“镜像”,它最少由两个硬盘组成,且两个硬盘上存储的数据均相同,以实现数据冗余。

7.1.3 RAID5

RAID5 最少由三个硬盘组成,它将数据分散存储于阵列中的每个硬盘,并且还伴有一个数据校验位,数据位与校验位通过算法能相互验证,当丢失其中的一位时,RAID 控制器能通过算法,利用其它两位数据将丢失的数据进行计算还原。

7.1.4 RAID 6

RAID6 是在 RAID5 的基础上改良而成的,RAID6再将数据校验位增加一位,所以允许损坏的硬盘数量也由 RAID5 的一个增加到二个。

7.1.5 RAID 1+0

RAID1+0 是先将数据进行镜像操作,然后再对数据进行分组,RAID1在这里就是一个冗余的备份阵列,而RAID0则负责数据的读写阵列。至少要四块盘,两块raid0,另两块做 raid1,RAID 10 对存储容量的利用率和 RAID 1 一样低,只有 50%。

Raid1+0 方案造成了 50%的磁盘浪费,但是它提供了 200%的速度和单磁盘损坏的数据安全性,并且当同时损坏的磁盘不在同一Raid1中,就能保证数据安全性、RAID 10 能提供比 RAID5更好的性能.

7.2 阵列卡介绍

阵列卡全称叫磁盘阵列卡是用来做RAID。磁盘阵列是一种把若干硬盘驱动器按照一定要求组成一个整体,整个磁盘阵列由阵列控制器管理的系统。

7.2.1阵列卡接口类型

接口类型目前主要有几种:IDE接口,SCSI接口,SATA接口和SAS接口。

  1. IDE接口
  • IDE接口的英文全称”Integrated Drive Electronics“ 它的本意是指把“硬盘控制器”与“盘体”集成在一起的硬盘驱动器。
  • IDE接口具有价格低廉,兼容性强的特点,其性能也不断的提高
  1. SCSI接口
  • SCSI的全英文称为“Small Computer System Interface”是同IDE完全不同的接口,IDE接口是普通PC的标准接口,而SCSI并不是专门为硬盘设计的接口,是一种广泛应用于小型机上的高速数据传输技术。
  • SCSI的优点:接口速度快,并且由于主要用于服务器,因此硬盘本身的性能也比较高,硬盘转速快,缓存容量大,CPU占用率低,扩展性远优于IDE硬盘,并且支持热插拔。
  1. SATA接口
  • 使用SATA(Serial ATA)口的硬盘又叫串口硬盘,是目前PC硬盘的主流。
  • Serial ATA采用串行连接方式,串行ATA总线使用嵌入式时钟信号,具备了更强的纠错能力,与以往相比其最大的区别在于能对传输指令进行检查,如果发现错误会自动纠正,这在很大程度提高了数据传输的可靠性。
  • 串行接口还具有结构简单,支持热插拔的优点
  1. SAS接口
  • SAS 是新一代的 SCSI技术,和现在流行的 SeriaIATA(SATA)硬盘相同,都是采用串行技术以获得更高的传输速度,并通过缩短连结线改善内部空间等。
  • SAS接口的设计是为了改善存储系统的效能、可用性和扩充性,提供与串行 ATA (Serial ATA,缩写为 SATA)硬盘的兼容性。
  • SAS的接口技术可以向下兼容SATA。但SATS系统不兼容SAS
  • 串行 SCSl是点到点的结构,可以建立磁盘到控制器的直接连接。具有以下特点:
    • 更好的性能
      • 点到点的技术减少了地址冲突以及菊花链连结的减速。
      • 为每个设备提供了专用的信号通路来保证最大的带宽:全双工方式下的数据操作保证最有效的数据吞吐量。
    • 简便的线缆连结
      • 更细的电缆搭配更小的连接器。
    • 更好的扩展性
      • 可以同时连结更多的磁盘设备

7.2.2 阵列卡的缓存

  1. 阵列卡的缓存的介绍

缓存(Cache)是RAID卡与外部总线交换数据的场所,RAID卡先将数据传送到缓存,再由缓存和外边数据总线交换数据。

  1. 阵列卡的缓存的定义
  • 提高数据读写性能
  • 数据保护与冗余
  • 提升系统可用性和可靠性
  1. 阵列的缓存的方式
  • Write Through也被称为透写,Write Through也是RAID阵列卡的默认模式。使用时,系统的写磁盘操作并不利用阵列卡的Cache,而是直接与磁盘进行数据的交互。
  • Write Bach也被称为回写,Write Back方式则利用阵列Cache作为系统和磁盘间的二传手,系统先将数据交给Cache,然后再由Cache将数据传给磁盘

7.3 构建软RAID磁盘阵列

首先为Linux服务器添加4块SCSI硬盘,使用mdadm软件包,构建RAID5磁盘阵列,提高磁盘存储的性能和可靠性。

  1. 构建磁盘阵列

(1)安装mdadm工具

在 CentOS7.9 系统中 mdadm 工具由 mdadm-3.4-14.el7.x86_64软件包提供,执行rpm-qalgrep mdadm 命令查看系统中是否安装 mdadm 工具。若系统内未安装 mdadm 工具,可使用 RPM 或 YUM 方式安装。

yum -y install mdadm #安装mdadm工具

(2)准备用于RAID阵列的分区

添加4块SCSI硬盘。

[root@localhost ~]# lsblk #查看硬盘 fdisk /dev/sd* #进行分区 命令(输入 m 获取帮助):n #创建分区 Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p 分区号 (1-4,默认 1): 起始 扇区 (2048-41943039,默认为 2048): 将使用默认值 2048 Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+2G 分区 1 已设置为 Linux 类型,大小设为 2 GiB 命令(输入 m 获取帮助):t 进入创建类型 已选择分区 1 Hex 代码(输入 L 列出所有代码):fd 选择要创建的类型 已将分区“Linux”的类型更改为“Linux raid autodetect” 命令(输入 m 获取帮助):p 磁盘 /dev/sdc:21.5 GB, 21474836480 字节,41943040 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0xbf0aaa62 设备 Boot Start End Blocks Id System /dev/sdc1 2048 4196351 2097152 fd Linux raid autodetect 命令(输入 m 获取帮助):w 保存

(3)创建RAID设备

使用mdadm命令创建RAID,执行以下命令即可创建名称为md0的RAID5

[root@localhost ~]# mdadm -Cv /dev/md0 -a yes -n4 -l5 /dev/sd[*]1 #创建/dev/md0文件夹并指定使用几块硬盘和指定RAID的级别 mdadm: layout defaults to left-symmetric mdadm: layout defaults to left-symmetric mdadm: chunk size defaults to 512K mdadm: size set to 2094080K mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md0 started. [root@localhost ~]# cat /proc/mdstat #查看信息 Personalities : [raid6] [raid5] [raid4] md0 : active raid5 sde1[4] sdd1[2] sdc1[1] sdb1[0] 6282240 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU] unused devices: <none> [root@localhost ~]# mkfs.xfs /dev/md0 #创建文件类型 meta-data=/dev/md0 isize=512 agcount=8, agsize=196352 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0, sparse=0 data = bsize=4096 blocks=1570560, imaxpct=25 = sunit=128 swidth=384 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal log bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=8 blks, lazy-count=1 realtime =none [root@localhost ~]# mkdir /aaa #创建挂载位置 [root@localhost ~]# mount /dev/md0 /aaa #挂载 [root@localhost ~]# vim /etc/fstab #进入配置文件配置自动挂载 /dev/md0 /aaa xfs defaults 0 0

上述命令中所用到的参数的作用如下所示

参数

作用

-C

等同于create,表示创建

-v

显示创建过程中信息

/dev/md0

创建RAID5的名称

-a

表示通知mdadm是否创建设备文件,并分配一个未使用的次设备号,后面跟yes代表如果有什么设备文件没有存在的话就自动创建

-n

指定使用几块硬盘创建RAID,n4表示使用4块硬盘创建RAID

-l

指定RAID的级别:l5表示创建RAID5

/dev/sd[*]1

指定多块磁盘分区

 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!