Linux 高级存储管理
############1.邏輯卷##################
物理卷(PV, Physical Volume)
物理卷就是指磁盤,磁盤分區或從邏輯上和磁盤分區具有同樣功能的設備(如RAID),是LVM的基本存儲邏輯塊,但和基本的物理存儲介質(如分區、磁盤等)比較,卻包含有和LVM相關的管理參數。當前LVM允許你在每個物理卷上保存這個物理卷的0至2份元數據拷貝.默認為1,保存在設備的開始處.為2時,在設備結束處保存第二份備份.
PE(physical extent)
每一個物理卷被劃分為稱為PE(Physical Extents)的基本單元,具有唯一編號的PE是能被LVM尋址的最小單元。PE的大小是可設置的,默認為4MB。
卷組(VG, Volume Group)
LVM卷組類似于非LVM系統中的物理硬盤,其由物理卷組成。能在卷組上創建一個或多個“LVM分區”(邏輯卷),LVM卷組由一個或多個物理卷組成。
邏輯卷(LV, Logical Volume)
LVM的邏輯卷類似于非LVM系統中的硬盤分區,在邏輯卷之上能建立文件系統(比如/home或/usr等)。
pv?? ?##物理卷?? ?被處理過的物理分區
pe?? ?##物理擴展?? ?設定存儲最小單元
vg?? ?##物理卷組?? ?捆綁pv到一個組中
lv?? ?##邏輯卷?? ?分配最終的使用設備
監控建立過程
watch -n 1 "pvs;echo ====;vgs;echo =====;lvs;echo =====;df -h /data"
lvm設備建立
建立物理分區并設定分區type為lvm
pvcreate? /dev/vdb1 ? ??? ??? ???? ##創建pv
vgcreate? westosvg -s 2M /dev/vdb1? ???? ##創建vg -s設定pe大小位2M
lvcreate? -L 300M -n westoslv westosvg?? ??? ?##創建lvm -L指定大小 -n指定名稱
mkfs.xfs? /dev/mapper/westosvg-westoslv?? ??? ?##格式化
mount /dev/westosvg/westoslv? /data/?? ?##掛載
監控畫面 :watch -n 1 "pvs;echo ====;vgs;echo =====;lvs;echo =====;df -h /data"
lvm拉伸
1.當vg中的容量充足
lvextend? -L 400M /dev/mapper/westosvg-westoslv ?? ?##拉伸設備
xfs_growfs? /data/?? ??? ??? ??? ?##拉伸文件系統,在rhel7中可以用設備或掛載點
?? ??? ??? ??? ??? ??? ??? ???????????????? ##在rhel8中只能用掛載點
resize2fs? /dev/mapper/westosvg-westoslv?? ??? ?##當文件系統為ext時使用此命令
?
2.當vg中的容量不足
劃分分區
pvcreate /dev/vdb2
vgextend? westosvg /dev/vdb2
lvextend? -L 2500M /dev/westosvg/westoslv
xfs_growfs? /data/
lvm縮減
xfs文件系統不支持縮減ext文件系統可以
mkfs.ext4?? ?/dev/westosvg/westoslv
ext4文件系統拉伸:
resize2fs? /dev/mapper/westosvg-westoslv
縮減步驟:
umount /data
e2fsck -f /dev/westosvg/westoslv?????????????????????????
resize2fs? /dev/westosvg/westoslv 400M? 壓縮文件系統
lvreduce? -L 400M /dev/westosvg/westoslv??? 壓縮設備
mount /dev/westosvg/westoslv? /weixindata/
pvmove /dev/vdb1 /dev/vdb2??? 將1中的數據傳輸到2中
vgreduce? westosvg /dev/vdb1
pvremove? /dev/vdb1
lvm刪除:
umount /dev/mapper/westosvg-westoslv
lvremove? /dev/westosvg/westoslv
vgremove? westosvg
pvremove /dev/vdb2
?
####2.vdo####
DO(Virtual Data Optimize虛擬數據優化):通過壓縮或刪除存儲設備上的數據來優化存儲空間 VDO層放置在現有塊存儲設備例如RAID設備或本地磁盤的頂部。這些塊設備也可以是加密設備。存儲層(如LVM logic卷和文件系統放置在VDO層的頂部。 VDO按以下順序將三個階段應用于數據,減少存儲設備上的占用空間 零區塊的排除: 在初始化階段,整塊為0的會被元數據記錄下來,這個可以用水杯里面的水和沙子混合的例子來解釋,使用濾紙(零塊排除),把沙子(非零空間)給過濾出來,然后就是下一個階段的處理 重復數據刪除: 在第二階段,輸入的數據會判斷是不是冗余數據(在寫入之前就判斷),這個部分的數據通過UDS內核模塊來判斷(U niversal D eduplication S ervice),被判斷為重復數據的部分不會被寫入,然后對元數據進行更新,直接指向原始已經存儲的數據塊即可 壓縮: 一旦消零和重刪完成,LZ4壓縮會對每個單獨的數據塊進行處理,然后壓縮好的數據塊會以固定大小4KB的數據塊存儲在介質上,由于一個物理塊可以包含很多的壓縮塊,這個也可以加速讀取的性能。
?
虛擬數據優化器
kvdo?? ?##壓縮數據
uds?? ?##優化重復數據
a
#vdo建立#
dnf install vdo -y
vdo create --name westos_vdo --device /dev/vdb
vdo status --name westos_vdo | less
Deduplication:?? ?enabled?? ??? ?##vdo檢測并刪除重復數據的功能時開啟的
Compression:??? enabled?? ??? ?##vdo數據壓縮功能開啟
#使用vdo設備#
mkfs.xfs? -K /dev/mapper/westos_vdo1
mkdir /westos_vdo
mount /dev/mapper/westos_vdo1 /westos_vdo
#測試vdo性能#
vdostats --human-readable
Device??????????????????? Size????? Used Available Use% Space saving%
/dev/mapper/westos_vdo1???? 20.0G????? 4.0G???? 16.0G? 20%?????????? 98%
cp /westos/images/install.img? /westos_vdo/
vdostats --human-readable
Device??????????????????? Size????? Used Available Use% Space saving%
/dev/mapper/westos_vdo1???? 20.0G????? 4.4G???? 15.6G? 22%??????????? 2%
cp /westos/images/install.img /westos_vdo/install.img.1
vdostats --human-readable
Device??????????????????? Size????? Used Available Use% Space saving%
/dev/mapper/westos_vdo1???? 20.0G????? 4.5G???? 15.5G? 22%?????????? 49%
重復復制兩次同樣的文件,查看文件的時候存儲兩份,但是文件大小僅占了一個文件的大小,兩個文件都存在,并不是以硬鏈接的形式存在。
所以說明了vdo 的壓縮,優化重復數據的功能。
#vdo設備的刪除#
vdo remove --name=westos_vdo
?
總結
以上是生活随笔為你收集整理的Linux 高级存储管理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux 系统中的定时任务及延时任务
- 下一篇: linux 操作系统中的谷歌浏览器goo