一、存储接口控制器
1、IDE(ATA):133Mbps 并行
2、SATA:300Mbps 600Mbps 6GMbps 串行
3、USB3.0:480Mbps 串行
4、SCSI:Small Computer System Interface,320Mbps 并行总线
5、SAS:2.5寸
二、RAID(Redundant Arrays of independent Disks)
RAID级别:仅代表磁盘组织方式不同,没有上下之分;
组合RAID要求:
速度
数据可用性
1、0: 条带
性能提升: 读,写
冗余能力(容错能力): 无
空间利用率:nS
至少2块盘
2、1: 镜像(mirro)
性能表现:写性能下降,读性能提升
冗余能力:有
空间利用率:1/2
至少2块盘
3、2:
4、3:
5、4:
6、5: 校验码技术
性能表现:读,写提升
冗余能力:有
空间利用率:(n-1)/n
至少需要3块
最多只能坏一块盘
7、1+0:
性能表现:读、写提升
冗余能力:有
空间利用率:1/2
至少需要4块
8、0+1:
性能表现:读、写提升
冗余能力:有
空间利用率:1/2
至少需要4块
9、5+0:
性能表现:读、写提升
冗余能力:有
空间利用率:(n-2)/n
至少需要6块
10、jbod:
性能表现:无提升
冗余能力:无
空间利用率:100%
至少需要2块
三、SCSI
数据报文的首部会标记出数据该发往哪个目标地址
四、如何实现RAID
1、硬件RAID
a)主板上的RAID控制器--线缆连接--外置的RAID陈列;
b)RAID芯片--通过主板上的总线连接--Raid插槽--bIOS配置Raid--安装系统是需要先安装Raid驱动程序;
2、软件RAID
a)首先是内核中要有multi disks模块来支持软件RAID
b)逻辑RIAD(内核内部):
/dev/md0
/dev/md1
c)文件系统:fd(Linux raid auto)
五、mdadm命令
1、mdadm: 将任何块设备做成RAID
2、模式化的命令:
a)创建模式
-C raid设备:
专用选项:
-l: 级别
-n #: 设备个数
-a {yes|no}: 是否自动为其创建设备文件
-c: CHUNK大小, 2^n,默认为64K
-x #: 指定空闲盘个数
b)管理模式
--add, --remove, --fail
模拟磁盘损坏,如:mdadm /dev/md# --fail /dev/sda7
c)监控模式
-F
d)增长模式
-G
e)装配模式
-A,如:mdadm -A /dev/md0 /dev/hda{5,6}
3、查看RAID阵列的详细信息
mdadm -D|--detail /dev/md#
4、停止阵列:
mdadm -S|--stop /dev/md#
如:mdadm --stop /dev/md0
5、将当前RAID信息保存至配置文件,以便以后进行装配:
mdamd -D --scan > /etc/mdadm.conf
练习1,创建RAID0、RAID1:
1、创建RAID0
2G:
4: 512MB
2: 1G
2、创建RAID1
2G
2:2G
2参考答案:
1)创建RAID1:
划分2块2G的磁盘
mdadm -C /dev/md1 -l 1 -n 2 -a yes /dev/hda{7,8}
cat /proc/mdstat
mke2fs -j /dev/md1
mount /dev/md1 /media
cp /etc/inittab /media
2)模拟/dev/hda8磁盘损坏:
mdadm /dev/md1 -f /dev/hda8
mdadm --detail /dev/md1
cat /media/inittab(能访问)
3)移除损坏的磁盘/dev/hda8:
mdadm /dev/md1 --remove /dev/hda8
添加一块同样大小的磁盘/dev/hda9来填充修复损坏的磁盘:
mdadm /dev/md1 -a /dev/hda9
cat /proc/mdstat(同步是否完成)
4)模拟/dev/sda7磁盘损坏:
mdadm /dev/md1 -f /dev/hda7
mdadm --detail /dev/md1
cat /media/inittab(能访问)
5)添加一块空闲磁盘做备份,当其中一块损坏,另一块自动补充:
mdadm /dev/md1 -a /dev/hda7
mdadm -D /dev/md1
mdadm /dev/md1 -f /dev/hda9
mdadm -D /dev/md1
六、RAID相关的2个命令
1、watch: 周期性地执行指定命令,并以全屏方式显示结果
-n #:指定周期长度,单位为秒,默认为2
格式: watch -n # 'COMMAND'
2、指定条带大小,提高raid性能:
mke2fs -j -E stride=16 -b 4096 /dev/md0
练习2:
创建一个空间大小为10G的RAID5设备;其chuck大小为32k;要求此设备开机时可以自动挂载至/backup目录;
mdadm -C /dev/md5 -l 5 -n 3 -a yes -c 32 /dev/hda{10,11,12}
watch 'cat /etc/mdstat'
mke2fs -j /dev/md5
mkdir /backup
vim /etc/fstab
/dev/md5 /backup ext3 defaults 0 0