1.RAID是什么
RAID:Redundant Arrays of Inexpensive Disks,是指由多個磁盤合成一個陣列,來提供更好的性能,冗余或者兩者都提供。在生產生活中,通常一個硬盤往往不能滿足我們的存儲需要,這是就需要通過RAID磁盤陣列來對磁盤進行“擴容”,來滿足我們的日常需要,相比較于單一的大容量的硬盤,使用RAID陣列可以更好的節約成本到達同樣的效果,所以,RAID陣列技術被廣泛的應用于我們的生產生活中。
RAID能提供的優點:
提高IO能力
磁盤并行讀寫
提高耐用性
磁盤冗余實現
RAID實現方式:
外界式磁盤陣列:通過擴展卡提供適配能力
內接式RAID:主板集成raid控制器
Software RAID
級別:多塊磁盤組織在一起的工作方式有所不同
RAID-0:0,條帶卷,strip
RAID-1:1,鏡像卷,mirror
RAID-2:
…
RAID-5:
RAID-6:
RAID01:
RAID10:
RAID-0 讀寫性能提升
可用空間N*min(s1,s2,s3…)
無容錯能力
最少磁盤數2,2+
RAID-0陣列就是將多個磁盤組成一個大容量的“新硬盤”,數據傳輸過來,以trunk值分別存儲到不同的硬盤中,這樣每個盤都有分攤了這個數據的一部分,從而提高了“大硬盤”的存儲能力,但是,有一個硬盤出現故障時,這個“大硬盤”將無法進行數據讀取,從而導致大硬盤也呈現“故障”狀態,RAID-0只是單純增加硬盤容量。
RAID-1 讀性能提升,寫性能略有下降
可用空間1*min(s1,s2…)
有冗余能力
最少磁盤數2
RAID-1磁盤陣列:硬盤B作為A的鏡像,當數據傳輸過來,A盤存儲這份數據,B盤也存儲這份數據,當作A盤的備份,當A盤出現故障時,B盤就頂替上去,保證了硬盤甚至于整個程序,服務的正常運行,有了冗余能力,但是,這樣磁盤的利用率就變為磁盤數的1/2。
RAID-5:讀寫性能提升
(N-1)*min(s1,s2,s3…)
有容錯能力 1塊磁盤
最少磁盤數 3
RAID-5磁盤陣列:與RAID-4類似,用一個盤存放校驗值,不過在4的基礎上有了改進,在實際生產中,做校驗盤的硬盤很容易損壞,經常性的讀寫,RAID-5,它實現了動態的存儲校驗值,第一次數據存儲在A,B盤上,C盤存儲校驗值,下一次數據存儲在A,C盤上,B盤存儲校驗值,第三次B,C盤存儲數據,A盤存儲校驗值,輪替的進行,從而減輕了某個存儲校驗值的硬盤的壓力,有冗余能力,當一個盤故障時,可以通過其他兩個盤進行抑或操作算出故障盤的數據,也能保證程服務正常運行。
RAID-6:最少磁盤數 4
讀寫性能提升
可用空間(N-2)*min(s1,s2…)
用容錯能力 2塊磁盤
RAID-6磁盤陣列:使用兩塊硬盤作為存放校驗值的盤,當其中一個存放校驗值的盤故障時且一塊數據盤也出現故障時,還可以通過另一個存放校驗值的盤計算出故障數據盤的數據,也可以保證服務的正常運行,但在企業中運用并不多。
混合類型
RAID-10 先做1,后做0
讀寫性能提升
可用空間N*min(s1,s2…)/2
有容錯能力每組鏡像只能最多壞一塊
最少磁盤數 4
RAID-10:先做1,再做0,先使用兩塊磁盤進行RAID-1,保證數據有冗余性,有備份,當主盤故障時,備份盤可以頂替上,再做RAID-0,這樣就可以使數據存儲在不同的硬盤上,實現了對磁盤的擴容,從而既達到0的效果,又達到1的效果。
RAID-01 先做0,后做1
RAID-01:先做0,再做1,先將磁盤組成RAID-0陣列,實現數據分開存儲,實現硬盤的擴容,再做1,即對先前做的0陣列進行1操作,為他們做備份,實現硬盤的冗余性,當主硬盤中一塊故障時,備份區的硬盤能夠為服務提供數據,同樣保障了服務程序的正常運行,但主硬盤區和備份區域都出現故障時,這個磁盤陣列則會呈現故障狀態,所以RAID-01比RAID-10性能方面還是有些差別的。
RAID7:可以理解為一個獨立存儲的計算機,自身帶有操作系統和管理工具,可以獨立運行,理論上性能最高的RAID模式
JBOD:just a bunch of disks
功能:將多塊磁盤的空間合并成一個大的連續空間使用
可用空間:sum(s1+s2…)
常用級別
RAID-0 RAID-1 RAID-5 RAID-10 RAID-50 JBOD
實現方式
硬件實現方式
軟件實現方式
Centos 6上的軟件RAID實現
結合內核中的md(multi devices)
Mdadm:模式化工具
語法格式:mdadm [mode] <raiddevice> [options]<component-device>
支持的RAID級別:LINERA RAID0 RAID1 RAID4 RAID5 RAID6 RAID10
模式:
創建模式 -C
裝配模式 -A
監控模式 -F
管理模式 -f:標記指定磁盤為損壞
-r:移除磁盤
-a:添加磁盤
觀察md狀態
cat /proc/md#
<raiddevice>: /dev/md#
<component-devices>:任意塊設備
-C 創建模式
-n #:使用#個塊設備來創建此RAID
-l #: 指明要創建的RAID級別
-a{yes|no} 自動創建目標RAID設備的設備文件
-c chunk_size 指明塊大小
-x # 指明空閑盤的個數
-D 顯示RAID詳細信息
停止md設備
mdadm –S /dev/md#
watch 命令
-n # :刷新時間,單位為秒
LVM邏輯卷管理器
Logical Volume Manager Version:2
dm:device mapper 將一個或多個底層塊設備組織成一個邏輯設備的模塊
/dev/dm-#
/dev/mapper/VG_name-LV_name
/dev/VG_name/LV_name
在硬盤上進行分區,可以滿足一些情況,但這樣的分區,它的存儲空間容量就固定了,不能進行擴容或者其他變更分區容量的操作,這樣便會給磁盤管理對來一些不便的影響,而LVM邏輯卷管理可以喊好的解決這種問題,所以,在實際生產生活中,這種技術也有相當廣泛的應用。
通過多個物理卷來創建一個卷組,,物理卷使用固定大小的物理區域來定義,在卷組之上可以根據需要劃分成多個邏輯卷。
Pv管理工具
Pvs 簡要顯示pv信息
Pvdisplay 詳細顯示信息
Pvcreate /dev/device 創建pv
Vg管理工具
Vgs
Vgdisplay
vgcreate /dev/vg# /dev/device
Lv管理工具
lvs
lvdisplay
lvcreate /dev/vg#
磁盤管理:
卸載命令
umount /dev/device
查看掛載情況
findmnt mount_point
查看正在訪問指定文件系統的進程
lsof mount_point
fuser -v mount_point
終止所有正在訪問指定文件系統的進程
fuser -km mount_point
文件掛載配置文件
/etc/fstab
每個要掛載的設備或偽文件系統
掛載點
文件系統類型
掛載選項
轉儲頻率 0 表示不轉儲 1 每天都備份 2 表示每隔一天備份
自檢次序 0 表示不自檢 1表示優先自檢
交換分區
交換分區是系統RAM的補充
基本設置包括:
創建交換分區或者文件
使用mkswap寫入特殊簽名
在/etc/fstab文件中添加適當的條目
使用swapon激活交換空間
swapon [option]…[device]
-a 激活所有的交換分區
-p priority 指定優先級
swapoff 禁用
移動介質的掛載
訪問前介質必須被掛在
摘除前介質必須被卸載
eject 彈出光驅
mount /dev/cdrom /mnt/
創建ISO文件
cp /dev/cdrom /root/centos7.iso
mkisofd -r -o /root/etc.iso /etc
刻錄光盤
wodim -v -eject centos.iso
free 內存空間使用狀態
-m 以MB為單位
-g 以GB為單位
df文件系統空間占用等信息的查看工具
-H 以1000為單位
-T 文件系統類型
-h human readable
-i 顯示節點數
-P 以posix兼容格式顯示
du查看某目錄總體空間占用狀態
-h human readable
-s summary
dd工具
dd if=/path/to/src of=/path/to/dst bs=# count=#
bs 復制單元大小
count 復制多少個bs
of 寫到文件中 if 從文件讀取
ibs 一次讀多少個byte obs 一次寫入多少個byte
cbs 一次轉化多少個byte
skip 從開頭忽略blocks個ibs大小的塊
seek 從開頭糊了blocks個obs大小的塊
conv=conversion[,conversion…]用指定的參數轉化文件
ascii 轉化EBCDIC為ascii
ebcdic 轉化ascii為ebcbic
block 轉化為長度為cbs的記錄,不足用空格補充
unblock 替代cbs長度的每一行尾的空格為新行
lcase 把大寫字符轉換為小寫字符
ucase 把小寫字符轉化為大寫字符
swab 交換輸入的每對字節
noerror 出錯時不停止
notrunc 不截斷輸出文件
sync 把每個輸入塊填充到ibs個字節,不足部分用空字符補齊
dd if=/dev/sda1 of=/dev/sdc1 bs=1 count=64 skip=446 seek=446 conv=notrunc
使用dd命令可以是實現數據的備份
dd if=/dev/sdx of=/dev/sdy
備份全盤數據
dd if=/dev/sdx | gzip > /path/to/image.gz
數據恢復
dd if=/path/to/image.gz of=/dev/sdx
gzip -dc /path/to/image.gz | dd of=/dev/sdx
習題
1:創建一個可用空間為1G的RAID1設備,文件系統為ext4,有一個空閑盤,開機可自動掛載至/backup目錄
對硬盤分區,并調整system id
查看分區是否被識別
分區格式化
創建RAID-1
mkfs.ext4 /dev/md/dm0
修改/etc/fstab
生成配置文件
2:創建由三塊硬盤組成的可用空間為2G的RAID5設備,要求其chunk大小為256k,文件系統為ext4,開機可自動掛載至/mydata目錄
創建共2G的單個分區
3、創建和擴展邏輯卷
原創文章,作者:Stupid_L,如若轉載,請注明出處:http://www.www58058.com/41817
不錯,內容充實,格式優美,能迅速吸引眼球并能勾起讀者繼續的欲望