創建LVM分區: 相關命令: pvcreat /dev/sdb{1,2,3} 創建物理捲 vgcreat test_vg1 /dev/sdb1 創建捲組 vgcreat test_vg2 -s 16M /dev/sdb2 /dev/sdb3 指定PE大小為16M lvcreat 在已存在的捲組中創建 ...
創建LVM分區:
相關命令: pvcreat /dev/sdb{1,2,3} 創建物理捲
vgcreat test_vg1 /dev/sdb1 創建捲組
vgcreat test_vg2 -s 16M /dev/sdb2 /dev/sdb3 指定PE大小為16M
lvcreat 在已存在的捲組中創建邏輯捲
-l 指定使用多少了捲組中的PE創建邏輯捲
-L 直接指定邏輯捲的大小
-n 指定邏輯捲名稱
實例:
1》使用fdisk 創建分區,並將分區標簽改為LVM(8e)
fdisk -cu /dev/sdb
partprobe /dev/sdb 保存分區表信息
將三個主分區和一個邏輯分區的標簽修改為8e
2》使用pvcreat 創建物理捲並使用 pvdisplay查看結果
pvcreat /dev/sdb{1,2,3,5}
2》使用pvcreat 創建物理捲並使用 pvdisplay查看結果
pvcreat /dev/sdb{1,2,3,5}
4》使用lvcreate創建邏輯捲並使用 lvdisplay 查看結果
lvcreate -n test_web -L 25G test_vg
lvcreate -n test_data -L 15G test_vg
5》格式化並掛載
修改LVM分區容量: LVM隨時可以幫助我們動態調整文件系統的大小,如果捲組還有足夠的剩餘空間可以劃分給邏輯捲,那麼我們可以直接使用lvextend命令調整邏輯捲的大小。但lvextend僅調整邏輯捲的大小,使用該命令調整完邏輯捲大小後,還需要使用resize2fs命令更新文件系統的大小。此外,當我們的捲組沒有足夠的空間劃分給邏輯捲時,LVM的捲組的捲組也是可以動態調整容量大小的,這時需要使用fdisk創建一個新的分區,並使用pvcreate 命令轉換為物理捲格式 ,接著通過vgextend將新的物理捲追加至現由的捲組空間中,最後使用lvextend調整邏輯捲的容量。
相關命令:
lvextend -L +5G /dev/test_vg/test_data 邏輯捲增加5G
resize2fs /dev/test_vg/test_data
pvcreate /dev/sdb6
vgextend test_vg /dev/sdb6
lvextend -L 25G /dev/test_vg/test_data 將邏輯捲增加到25G
resize2fs /dev/test_vg/test_data
刪除LVM分區:刪除LVM分區的順序應該與創建時的順序相反,也就是卸載文件系統,刪除邏輯捲,刪除捲組,刪除物理 捲,卸載文件系統時需要註意,如果有必要應該更新/etc/fstab。
相關命令:
umount /dev/test_vg/test_data
umount /dev/text_vg/test_web
lvremove /dev/test_vg/test_data
lvremove /dev/test_vg/test_web
vgremove test_vg
pvremove /dev/sdb{1,2,3,5,6}
RAID磁碟陣列概述:RAID即獨立冗餘磁碟陣列,其思想是將多塊獨立的磁碟按不同的方式組合為一個邏輯磁碟,從而提高存儲容量,提升存儲性能或提供數據備份 功能。
RAID級別:
RAID 0:(不含校驗和冗餘的條帶存儲)
數據將被分割並分別存儲在每塊硬碟中,所以能最大的提升存儲性能與存儲空間,但無法容錯,RAID 0至少需要兩塊磁碟,RAID 0的總存儲空間為兩塊磁 盤存儲空間之和;
RAID 0
DATA 1 DATA2
DATA3 DATA4
RAID 1 :(不含校驗的鏡像存儲)
數據將被同時複製到每塊磁碟中,製作這種磁碟至少需要兩塊磁碟,只要有一塊磁碟可用,即可正常工作,該級別的陣列安全性是最好的,寫入數據的 效率會降低,讀取數據的效率會提升,但是磁碟的利用率是最低的,其總存儲空間與每塊磁碟的存儲空間一樣;
RAID 1
DATA 1 DATA 1
DATA 2 DATA 2
RAID 2:(位級別的校驗式條帶存儲)
多塊磁碟組合為RAID 2後,數據將以位為單位同步式分別存儲在不同的硬碟上,並採用海明碼(海明碼是一種具有糾錯功能的校驗碼)對數據進行校驗 與恢復。其允許三塊磁碟中的任何一塊磁碟損壞,並能夠對未損壞的兩塊磁碟進行運算後還原已損壞磁碟上的數據,從而實現數據恢復的功能。RAID 2 對大數據量的讀寫具有很高的性能,但對少量數據的讀寫時性能反而不好,該磁碟陣列至少需要三塊硬碟;
RAID 2
DATA 1 DATA 2 Parity1
DATA 3 DATA 4 Parity 2
RAID 4: (數據塊級別的校驗式條帶存儲)
RAID 4
DATA 1 DATA 2 DATA 3 Parity 1
DATA 4 DATA 5 DATA 6 Parity 2
RAID 5:(數據塊級別的分散式校驗條帶存儲)
多塊磁碟組合為RAID 5後,數據將以塊為單位同步式分別存儲在不同的硬碟上,並對數據進行海明碼運算,與其他級別不同的是該級別的海明碼會被寫入 不同的磁碟;
RAID 5
DATA 1 DATA 2 Parity 1
DATA 3 Parity 2 DATA 4
Parity 3 DATA 5
RAID 10:(鏡像與條帶存儲)
RAID 10不是獨創的一種RAID級別,它由RAID 0與RAID 1結合而成,RAID 10 繼承了RAID 0的快速與高效,同時也繼承了RAID 1的數據安全,RAID 10至少需要四塊硬碟。RAID 10通常有兩種結構,一種是RAID 0+1結構,一種是RAID 1+0結構。如果是RAID 1+0 ,則小使用四塊硬
盤組合成兩個獨立的RAID 1,然後將兩個RAID 1再組合為一個RAID 0;它的缺點是磁碟利用率很低,只有百分之五十;
RAID 10 (1+0)
DATA 1 DATA 1 DATA 2 DATA 2
DATA 3 DATA 3 DATA 4 DATA 4
RAID 10 (0+1)
DATA 1 DATA 2 DATA 1 DATA 2
DATA 3 DATA 4 DATA 3 DATA 4
創建與管理軟RAID實例:
1》查看磁碟信息,可以將每塊硬碟分一個區組建RAID,也可以對硬碟分多個區實現軟RAID;
2》創建硬碟分區:
將三塊磁碟都進行分區後,運行 partprobe -a 命令更新分區表
3》創建RAID (分別創建 RAID 0 與 RAID 5)
相關命令: mdadm
-C 創建軟體RAID
-l 指定RAID 級別
-n 指定磁碟個數
-x 指定備用設備個數
mdadm -C /dev/md0 -l 0 -n 3 /dev/sdb1 /dev/sdc1 /dev/sdd1
mdadm -C /dev/md1 -l 5 -n 3 -x 1 /dev/sdb2 /dev/sdc2 /dev/sde2
mdadm --detail /dev/md0 查看的md0信息
mdadm --detail /dev/md1 查看md1的信息
4》格式化與掛載
mkfs.ext4 /dev/md0
mkdir /raid0
mount /dev/md0 /raid0
mkfs.ext4 /dev/md1
mkdir /raid5
mount /dev/md1 /raid5
將磁碟陣列設備設置為開機自動掛載項,系統開機會讀取磁碟陣列的配置文件/etc/mdadm.conf(此文件原 先不存在)以啟動RAID設備。下麵的命令可以幫助我們快速創建這樣的配置文件,DEVICE 行代表填寫所有磁碟陣列的設備成員名稱,ARRAY行描述磁碟陣列具體的基本信息,包括名稱,級別,UUID等信息;
=========================================
RAID 性能測試:
============普通磁碟:寫入模擬===============
================RAID 0:寫入模擬===============
==============RAID 5:寫入模擬==============
*****由於RAID 5需要生成校驗位數據,所以寫入數據的速度比RAID 0慢,但比普通磁碟快;
RAID 故障模擬:
mdadm /dev/md1 -f /dev/sdb2
註意: 使用 -f 選項可以模擬磁碟sdb2的損壞;