1. 程式人生 > >邏輯卷管理器(LVM)以及快照(特殊邏輯卷)的用法

邏輯卷管理器(LVM)以及快照(特殊邏輯卷)的用法

LVM PV VG LV 快照

1.LVM基本介紹

2.PV、VG、LV關系詳解(PV/VG/LV的創建、擴展邏輯卷大小、減小(減小操作很少用,僅作學習))

3.快照的概念以及基本用法(特殊的邏輯卷)

4.總結


  1. LVM基本介紹

LVM:Logical Volume Manager,邏輯卷管理,是Linux下對磁盤分區進行管理的一種機制

傳統硬盤管理機制:1. 文件系統是基於分區的

2. 不同分區之間相對獨立無法互聯

3. 空間難以平衡利用,且當一個分區/文件系統已滿時無法擴充,只能重分區/重建文件系統,若涉及到數據,則只能備份——> 重分區/重建文件系統——> 恢復數據

LVM(邏輯卷管理): 1. 硬盤的多個分區由LVM統一管理

2. 可以方便的擴大和減小( Attention ,充分利用磁盤空間

3. 文件系統建立在邏輯卷上,而邏輯卷可以根據需求隨時改變大小這是LVM最值錢/最帥的功能

4. 在大型企業中,使用LVM可以在不停止服務的情況下,實現把用戶數據從個舊硬盤轉移到新硬盤中

Attention : 實際生產環境中,減小磁盤容量的操作十分危險,很容易危及已存在的數據,比起數據的價值,磁盤的價值簡直如同草芥,所以幾乎不會執行減小操作(僅供學習之用)】

2. PV、VG、LV關系詳解

PV(Physical Volume): 物理卷設備,基於Block Device(磁盤塊設備)創建

VG(Volume Group):卷組,基於已存在的PV(物理卷設備)創建

LV(Logical Volume):邏輯卷,基於已存在的VG(卷組)創建

PE(Physical Extent):物理區域,是物理卷中可用於分配的最小存儲單元,可自定義,但確定之後不能更改

技術分享圖片

*最下面的三個空白格比作磁盤塊設備(Block Device)


2.1 PV :LVM系統中最底層的設備

基本管理命令:pvscan/pvs/pvdisplay/pvcreate/pvremove

1. pvscan :在系統中搜索已存在的物理卷(不存在PV設備時)

技術分享圖片

(存在PV設備時)

技術分享圖片

2. pvs: 類似於pvscan

技術分享圖片

3.pvdisplay :物理卷全路徑民稱,用於顯示指定物理卷的屬性信息(命令後面不加指定物理卷,默認顯示所有物理卷)

技術分享圖片

4.pvcreate :創建物理卷設備(參數位可以跟多個塊設備路徑,可同時創建多個PV)

技術分享圖片

5.pvremvoe:刪除物理卷 若此物理卷存在於卷組(PV)和邏輯卷(LV)中,需要先移除LV,再移除VG,最後移除PV

技術分享圖片

2.2 VG:卷組

基本管理命令:vgscan/vgs/vgdisplay/vgcreate/vgpremove/vgrename/

1.vgscan,vgs:都是查看當前已存在的卷組,執行對比如下

技術分享圖片

2.vgdisplay :查看卷組信息(默認所有卷組信息)

技術分享圖片

3.vgcreate :創建卷組

技術分享圖片

4. vgremove : 刪除卷組 若此卷組存在於邏輯卷(LV)中,則需要先移除LV,再移除VG

技術分享圖片

5. vgrename: 更改卷組名稱

技術分享圖片

2.3 LV:邏輯卷

基本管理命令:lvscan/lvs/lvdisplay/lvcreate/lvrename/lvremove

1. lvscan,lvs:顯示基本的邏輯卷信息

技術分享圖片

2. lvdisplay :顯示邏輯卷詳細信息(默認所有邏輯卷,也可指定邏輯卷)

技術分享圖片

3.lvcreate:創建邏輯卷(需指定大小(-L),名稱(-n))

技術分享圖片

*若不指定邏輯卷名稱,則系統默認定義名稱,如上所示“lvo10”

技術分享圖片

技術分享圖片

4.lvrename :修改邏輯卷名稱(需要提供完整路徑,不能像VG修改一樣只提供舊卷組名稱和新卷組名稱即可)

技術分享圖片

5.lvremove :移除邏輯卷

技術分享圖片


2.4 在邏輯卷上創建文件系統

當PV/VG/LV都創建完成之後,就可以在LV上創建文件系統,就可以掛載使用了,當然,這個創建的過程再贅述一下:這個過程可以理解為有三塊豆腐,你想把這三塊豆腐分成2塊,傳統的辦法就是把一塊切成兩半,然後每一半分給余下的兩塊,LVM則是把三塊豆拼成一大塊豆腐,然後切成兩半,比起之前的兩塊豆腐,顯然更完整,

好了,現在都創建好了,可以創建文件系統了,創建那幾步都明白了,後面就簡單了,跟之前格式化磁盤創建文件系統、掛載使用就沒什麽區別了

創建文件系統(格式化LVM),當然了,具體的需要什麽文件系統,則自行決定,以ext4為例:

技術分享圖片

掛載文件系統


技術分享圖片

當然了,掛載成功,就可以開始使用了,到此,LVM系統創建成功並且可以正常使用了。



BUT 不過 ……,空間不夠用了怎麽辦?就需要擴展,下面再來看擴展的具體步驟吧



首先,再看一遍這張圖:

技術分享圖片

這個圖示順序很清晰,所以很容易理解:需要擴展LV,就需要擴展VG,需要擴展VG就需要擴展PV,那就需要在創建新的PV,再往下就是加一塊或若幹塊物理塊設備

2.5 擴展整個系統的步驟概括如下:創建新PV——>擴展VG——>擴展LV

PV涉及不到擴展或者縮小,因為是LVM系統中最小組成單位,所以只需要在創建即可

VG擴展:vgextend(若原有的文件系統正在使用則需要先卸載,再執行擴展操作)

技術分享圖片

LV擴展:lvextend

技術分享圖片

擴展完成了,看一下擴展之前的LV和擴展之後的LV對比:

技術分享圖片

技術分享圖片

基本上LVM以上的基本操作在生產環境中的使用時足夠了,再強調一下,諸如lvreduce/vgreduce等等減小磁盤空間的命令,稍有不慎,極易損壞數據,而且無論是出於成本還是實用性都幾乎不會用到的操作,對於一個對數據安全性要求很高的時候,可以認為禁止這麽做的,切記啊

3. 快照的概念(特殊的邏輯卷)

快照的概念:LVM中快照創建的時候,僅拷貝原始卷裏數據的元數據;創建的時候,並不會有數據的物理拷貝,因此快照的創建幾乎是瞬間完成的,當原始卷上有寫操作執行時,快照跟蹤原始卷塊的改變,這個時候原始卷上將要改變的數據在改變之前被拷貝到快照預留的空間

為現有邏輯卷創建快照

技術分享圖片

為了驗證快照的功能,在/app目錄下創建了兩個文件,其中一個是在創建快照之前創建,一個是在創建快照之後創建,若執行恢復快照功能成功,則在創建快照之後的創建的文件就不會存在

創建的兩個文件如圖所示:

技術分享圖片

在這個過程中,源LV一直處於掛載狀態,所以先卸載源:

技術分享圖片

卸載源之後,執行恢復快照功能:

技術分享圖片

再重新掛載源:

技術分享圖片

切換到/app目錄下查看文件:名為create_after.txt的文件不見了

技術分享圖片

到此,快照恢復成功,並且快照自動刪除,lvs查看邏輯卷列表裏面沒有了快照,只有源邏輯卷

快照梗概如下圖所示:

技術分享圖片

4.總結

實際生產環境中,為了保證數據安全都一定會用RAID(磁盤冗余陣列)來保證,但同時,由於傳統磁盤管理機制的局限性,擴展設備容量極其的麻煩,所以又會使用LVM來管理/擴容磁盤,達到擴容的目的,單純的使用LVM來劃分磁盤也可以用,但是一旦物理層設備損壞,則LVM也會全盤毀掉, 所以會用RAID來保證數據的安全,以上就是LVM基本的使用,如有疏漏和錯誤還望指正

邏輯卷管理器(LVM)以及快照(特殊邏輯卷)的用法