RAID(Redundant Array of Inexpensive Disks):
原來叫做廉價冗餘磁盤序列,後改爲了獨立冗餘磁盤序列,是由多個獨立的物理硬盤按照不同的方式組合起來,形成一個虛擬的硬盤,又通過冗餘能力,提高了可靠性,極大的增強了管理能力。冗餘能力就是容錯能力。
不同RAID的優缺點
RAID 0 :條帶
優點:提高了讀,寫能力
冗餘能力 無 不適合用於數據安全性要求高的環境
所需磁盤數:最少兩塊
RAID 1:鏡像
性能表現(優點):寫性能下降,讀性能能升
冗餘能力 :有
空間利用率 :1/2
所需磁盤數:至少2塊盤
RAID 5:
性能表現:讀,寫提升
冗餘能力: 有
空間利用率:(n-1)/n
所需磁盤:最少3塊盤(留出一塊盤用於存放其他磁盤的校驗碼)
RAID 10:
性能表現:讀,寫提升
冗餘能力: 有
所需磁盤數:最少4塊盤
缺點:一塊磁盤損壞,會影響整體,可能會造成數據丟失等後果
RAID 50:
性能表現:讀,寫提升
冗餘能力 有
空間利用率 (n-2)/2
所需磁盤數:至少6塊盤
RAID 01:
性能表現:讀,寫提升
冗餘能力 有
空間利用率: 1/2
所需磁盤數:至少需要4塊
JBOD:將多個小存量的磁盤組合,形成一個較大的容量的虛擬磁盤
空間利用率:100%
所需磁盤數:至少2塊盤
RAID的實現方式:
1、硬RAID 即由獨立操作的硬件提供整個磁盤整列的控制盒計算功能,不依靠系統的CPU資源
2、軟RAID 即通過軟件程序來實現,由計算機的CPU提供運行能力
mdadm:用戶管理工具,可以將任何設備做成RAID
模式化的命令:
-C:創建模式
-l:指定級別
-n:設備個數
-a {yes|no}:是否自動爲其創建設備文件
-c:CHUNK大小(數據塊大小)
-x #:指定空閒盤個數
-F:監控模式
-G:增長模式
-A:裝配模式
例如:
啓用RAID:需要先將其格式化,然後再掛載。
查看陣列的詳細信息命令:
mdadm -D /dev/md#
停止陣列命令:
mdadm -S /dev/md#
LVM
DM:Device Mapper(磁盤映射)
是一種提供邏輯設備的機制,可以將多額物理設備映射成爲一個邏輯設備。
邏輯設備:可以動態的增添或縮減
PV:Physical Volome 物理卷
VG:Volume Group 卷組 可劃分多個邏輯卷 是PV的組合
LV:Logical Volume 邏輯卷
PV的創建、刪除等操作命令:
pvcreate /dev/sda#
pvcreate /dev/sda{5,6} 即在sda5和sda6上創建PV
pvdisplay :查看PV的詳細信息 pvs:簡單查看pv信息
pvremove :刪除pv,刪除前確認裏面的數據移出,可能會損壞數據,造成數據丟失
pvmove :移動PV裏面的數據
VG的創建、刪除等操作命令:
vgcreate -s # VG_NAME /dev/sda (第一個#代表大小。要有單位,默認是4M )
-s選項 指定PE的大小 默認是4M
例如:創建VG,名字爲abcd,並指定PE大小爲8M
vgcreate -s 8M abcd /dev/sda{5,6}
刪除vg:
vgremove ... 指定要刪除的VG
例如:vgremove abcd /dev/sda{5,6} 即刪除vg下的sda5和sda6
直接刪除可能會損壞pv中的數據,刪除前最好將數據移到別處
由於VG是PV的組合,所以可以根據PV的多少來擴展或縮減VG
擴展vg(在VG中增加一個PV):
vgxtend abcd /dev/sda7
縮減vg(在VG中拿走一個pv):
vgreduce abcd /dev/sda7
LV的創建、刪除等操作命令:
lvcreate -n LV_NAME -L # VG_NAME
例如:創建一個大小30M,名字爲abc的LV
lvcreate -L 30M -n abc abcd
LV邏輯卷的擴展與縮減:
擴展時應當注意:先擴展物理邊界,之後擴展邏輯邊界
擴展物理邊界命令爲:lvextend -L # /PATH/TO/LV
例如:擴展邊界至2G lvextend -L 2G /dev/abcd/abc (要帶有卷組名)
擴展邏輯邊界命令爲:
resize2fs /PATH/TO/LV 5G 表示直接擴展到5G
resize2fs -p /PATH/TO/LV 表示能擴展到多大就擴展到多大
縮減邏輯卷:
注意:1:先縮減邏輯邊界,再縮減物理邊界,不能在線縮減,得先卸載;
2;確保縮減後的空間大小依然能儲存原有的所有數據;
3:在縮減之前應該先強行檢查文件,以確保文件系統處於一致性狀態;
縮減邏輯邊界命令:resize2fs /PATH/TO/PV #
縮減物理邊界命令:lvreduce -L # /PATH/TO/LV
快照卷:
1、生命週期爲整個數據時長;在這段時長內,數據的增長量不能超出快照卷大小
2、快照卷應該是隻讀的;
3、跟原卷在同一卷組內;
創建:
lvcreate
-s 創建快照卷
-p r|w 給權限
lvcreate -L # -n SLV_NAME -s -p r|w /PATH/TO/LV
例如:創建一個大小爲30M,命名爲mykuaizhao 有讀權限的abc的快照
lvcreate -L 30M -n mykuaizhao -s -p r /dev/abcd/abc