細述LVM基本特性及日常管理

安全劍客發表於2019-08-11

細述LVM基本特性及日常管理細述LVM基本特性及日常管理

LVM基本特性:(可以通過外掛CLVM,實現群集邏輯卷管理)

PV物理卷

LV邏輯卷(邏輯卷管理:會在物理儲存上生成抽象層,以便建立邏輯儲存卷,方便裝置命名)(下面是邏輯卷的分類)
Linear		線性卷(這是預設的lvm形式,即按順序佔用磁碟,一塊寫完了再寫另一塊)
Stripe		條帶邏輯卷
RAID		raid邏輯卷
Mirror		映象卷
Thinly-Provision	精簡配置邏輯卷
Snapshot	快照卷
Thinly-Provisioned Snapshot	精簡配置快照卷
Cache		快取卷
建立PV時(一同被建立的有)
1:接近裝置起始處,放置一個標籤,包括uuid,後設資料的位置 #(這個標籤每個磁碟預設都保持一份)
2:lvm後設資料,包含lvm卷組的配置詳情
3:剩餘空間,用於儲存資料
lvm邏輯卷概念 及 建立lvm的步驟
#LVM的組成
	PE:(物理擴充,是VG卷組的基本組成單位)
	PV:(物理卷)
	VG:(卷組)
	LV:(邏輯卷)
#建立lvm的步驟
	1:將磁碟建立為PV(物理卷),其實物理磁碟被條帶化為PV,劃成了一個一個的PE,預設每個PE大小是4MB
	2:建立VG(卷組),其實它是一個空間池,不同PV加入同一VG
	3:建立LV(邏輯卷),組成LV的PE可能來自不同的物理磁碟
	4:格式化LV,掛載使用
lvm相關 命令 工具
pv操作命令
	pvchange	更改物理卷的屬性
	pvck		檢查物理卷後設資料
	pvcreate	初始化磁碟或分割槽以供lvm使用
	pvdisplay	顯示物理卷的屬性
	pvmove		移動物理Exent
	pvremove	刪除物理卷
	pvresize	調整lvm2使用的磁碟或分割槽的大小
	pvs		報告有關物理卷的資訊
	pvscan		掃描物理卷的所有磁碟
vg操作命令
	vgcfgbackup	備份卷組描述符區域
	vgcfgrestore	恢復卷組描述符區域
	vgchange	更改卷組的屬性
	vgck		檢查卷組後設資料
	vgconvert	轉換卷組後設資料格式
	vgcreate	建立卷組
	vgdisplay	顯示卷組的屬性
	vgexport	使卷組對系統不瞭解(這是個什麼)
	vgextend	將物理卷新增到卷組
	vgimportclone	匯入並重新命名重複的卷組(例如硬體快照)
	vgmerge		合併兩個卷組
	vgmknodes	重新建立卷組目錄和邏輯卷特殊檔案
	vgreduce	通過刪除一個或多個物理捲來減少卷組(將物理卷踢出VG)
	vgremove	刪除卷組
	vgrename	重新命名卷組
	vgs		報告有關卷組資訊
	vgscan		掃描卷組的所有磁碟並重建快取記憶體
	vgsplit		將卷組拆分為兩個,通過移動整個物理卷將任何邏輯卷從一個卷組移動到另一個卷組
lv操作命令
	lvchange	更改邏輯卷屬性
	lvconvert	將邏輯卷從線性轉換為映象或快照
	lvcreate	將現有卷組中建立邏輯卷
	lvdisplay	顯示邏輯卷的屬性
	lvextend	擴充套件邏輯卷的大小
	lvmconfig	在載入lvm.conf和任何其他配置檔案後顯示配置資訊
	lvmdiskscan	掃描lvm2可見的所有裝置
	lvmdump		建立lvm2資訊轉儲以用於診斷目的
	lvreduce	減少邏輯卷的大小
	lvremove	刪除邏輯卷
	lvrename	重新命名邏輯卷
	lvresize	調整邏輯卷大小
	lvs		報告有關邏輯卷的資訊
	lvscan		掃描所有的邏輯卷
PV管理
製作PV
pvcreate /dev/sdb1
刪除pv撤銷PV(需先踢出vg)
pvremove /dev/sdb1
VG管理
製作VG
vgcreate datavg /dev/sdb1
vgcreate datavg /dev/sdb1 /dev/sdb2
#解釋:vgcreate vg名 分割槽
vgcreate -s 16M datavg2 /dev/sdb3
#解釋:-s 指定pe的大小為16M,預設不指定是4M
從卷組中移除缺失的磁碟
vgreduce --removemissing datavg 
vgreduce --removemissing datavg --force		#強制移除
擴充套件VG空間
vgextend datavg /dev/sdb3
pvs
踢出vg中的某個成員
vgreduce datavg /dev/sdb3
vgs
LV管理
製作LV
lvcreate -n lvdata1 -L 1.5G datavg
#解釋:-n lv的name,-L 指定lv的大小,datavg 是vg的名字,表示從那個vg
啟用修復後的邏輯卷
lvchange -ay /dev/datavg/lvdata1
lvchange -ay /dev/datavg/lvdata1 -K	#強制啟用
LVM的快照

用途:注意用途是資料一致性備份,先做一個快照,凍結當前系統,這樣快照裡面的內容可暫時保持不變,系統本身繼續執行,通過重新掛載備份快照卷,實現不中斷服務備份。

lvcreate -s -n kuaizhao01 -L 100M /dev/datavg/lvdata1
檢視,刪除使用方法
1:檢視物理卷資訊
pvs,pvdisplay
2:檢視卷組資訊
vgs,vgdisplay
3:檢視邏輯卷資訊
lvs,lvdisplay
4:刪除LV
lvremove /dev/mapper/VG-mylv 
5:刪除VG
vgremove VG
6:刪除PV(注意刪除順序是LV,VG,PV)
pvremove /dev/sdb
vg卷組改名

vgrename xxxx-vgid-xxxx-xxxx xinname
細述LVM基本特性及日常管理細述LVM基本特性及日常管理

拉伸一個邏輯卷LV
1:用vgdisplay檢視vg還有多少空餘空間
2:擴充邏輯卷
lvextend -L +1G /dev/VG/LV01
lvextend -L +1G /dev/VG/LV01 -r  #這個命令表示在擴充套件的同時也更新檔案系統,但是不是所有的發行版本都支援,部分檔案系統不支援線上擴充套件的除外
3:進行擴充操作後,df -h你會發現大小並沒有變
4:更新檔案系統(爭對不同的檔案系統,其更新的命令也不一樣)
e2fsck -f /dev/datavg/lvdata1	#ext4檔案系統,檢查lv的檔案系統
resize2fs /dev/VG/LV01		#ext4檔案系統命令,該命令後面接lv的裝置名就行
xfs_growfs /nas			#xfs檔案系統,該命令後面直接跟的是掛載點
當更新檔案系統後,你就會發現,df -h正常了
縮小邏輯卷LV(必須離線,umount)
1:解除安裝
2:縮小檔案系統	
resize2fs /dev/VG/LV01 2G
3:縮小LV	
lvreduce -L -1G /dev/VG/LV01
4:檢視lvs,掛載使用
拉伸一個卷組VG
1:新插入一塊硬碟,若不是熱插拔的磁碟,可以試試這個在系統上強制重新整理硬碟介面
for i in /sys/class/scsi_host/*; do echo "- - -" > $i/scan; done
2:將/dev/sdd條帶化,格式化為PE
pvcreate /dev/sdd
3:將一塊新的PV加入到現有的VG中
vgextend VG /dev/sdd
4:檢視大小
vgs
縮小卷組VG(注意不要有PE在佔用)
1:將一個PV從指定卷中移除	
vgreduce VG /dev/sdd
2:檢視縮小後的卷組大小
將磁碟加入和踢出VG
將sdd1踢出datavg組裡
vgreduce datavg /dev/sdd1
將sdb1加入datavg組裡
vgextend datavg /dev/sdb1
lvm災難恢復場景案例
#場景再現:
三塊盤做lvm,現在有一塊物理壞了,將剩下兩塊放到其他linux伺服器上
#恢復步驟
第一,檢視磁碟資訊,lvm資訊,確認能查到lvm相關資訊,找到VG組的名字(pvs,lvs,vgs,fidsk,blkid)
第二:刪除lvm資訊中損壞的磁碟角色,(強制提出故障磁碟)"vgreduce --removemissing VG_name "
第三:強制啟用VG組 "vgchange -ay"
第四:強制啟用LVM  "lvchange -ay /dev/VG_name"
第五:掛載


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559985/viewspace-2653303/,如需轉載,請註明出處,否則將追究法律責任。

相關文章