LVM儲存磁碟動態擴容方案
LVM簡介:是 Logical Volume Manager(邏輯卷管理)的簡寫,它是Linux環境下對磁碟分割槽進行管理的一種機制,它由Heinz Mauelshagen在Linux 2.4核心上實現,目前最新版本為:穩定版1.0.5,開發版 1.1.0-rc2,以及LVM2開發版。Linux使用者安裝Linux作業系統時遇到的一個常見的難以決定的問題就是如何正確地評估各分割槽大小,以分配合適的硬碟空間。普通的磁碟分割槽管理方式在邏輯分區劃分好之後就無法改變其大小,當一個邏輯分割槽存放不下某個檔案時,這個檔案因為受上層檔案系統的限制,也不能跨越多個分割槽來存放,所以也不能同時放到別的磁碟上。而遇到出現某個分割槽空間耗盡時,解決的方法通常是使用符號連結,或者使用調整分割槽大小的工具,但這只是暫時解決辦法,沒有從根本上解決問題。隨著Linux的邏輯卷管理功能的出現,這些問題都迎刃而解,使用者在無需停機的情況下可以方便地調整各個分割槽大小。–《摘自百度百科》
這裡我們在虛擬機器上進行講解測試相關步驟,大家也可以在KVM上進行測試搭建過程。
為什麼要使用LVM?
因為它可以完美的解決方法應該是在零停機前提下可以自如對檔案系統的大小進行調整,可以方便實現檔案系統跨越不同磁碟和分割槽。幸運的是Linux提供的邏輯盤卷管理(LVM,LogicalVolumeManager)機制就是一個完美的解決方案。
好介紹到此,我們來開始進行搭建步驟講解!!!!
《一》準備虛擬機器進行測試
檢視磁碟狀態
df -h
檢視磁碟分割槽情況
fdisk -l
通過虛擬機器在掛載2塊盤,為了方便測試是否可以動態擴容使用另外一塊盤的空間,這裡2塊盤都給予了第一塊給予1G,第二塊給予2G。1G的盤格式化後,用於做LVM的主分割槽和組,2G盤用於新增入組。
盤已經掛載好了
fdisk -l 後記錄碟符 sdb sdc
初始化分割槽sdb為物理卷pv
pvcreate /dev/sdb //初始化sdb盤
pvdisplay //顯示物理卷資訊
建立邏輯卷組vg,將/dev/sdb物理卷加入到這個卷組裡(VGroupzhu為自己定義的名字)
vgcreate VGroupzhu /dev/sdb //建立邏輯卷組
vgdisplay //顯示卷組資訊
建立邏輯卷LV,名稱VGroupzhu100,由卷組VGroupzhu提供空間,並給他指定擁有1G的空間
lvcreate -L 1020M -n VGroupzhu100 VGroupzhu //建立邏輯卷 lvdisplay //顯示邏輯卷資訊
格式化邏輯分割槽,格式 ext4
mkfs.ext4 /dev/VGroupzhu/VGroupzhu100
將/dev/VGroupzhu/VGroupzhu100這個邏輯卷掛在到/var/ftp檔案下
mount /dev/VGroupzhu/VGroupzhu100 /var/ftp
到此步,物理卷pv–>邏輯卷組vg–>邏輯卷lv 建立完成,並且可以掛載檔案系統
檢視物理卷資訊:
pvdisplay
測試把空間整滿
動態增加空間
sdc碟符進行處理
pvcreate /dev/sdc //初始化
pvdisplay //顯示物理卷資訊
/dev/sdc新增到VGroupzhu卷組中,VolGroup00卷組在上一步中已經建立
vgextend VGroupzhu /dev/sdc
pvdisplay //顯示物理卷資訊
增大/dev/VGroupzhu/VGroupzhu邏輯卷 2G
分2次擴充,1次擴充1G
lvextend -L +1000M /dev/VGroupzhu/VGroupzhu100
或者執行
lvextend -L +1000M /dev/mapper/VGroupzhu-VGroupzhu100
顯示邏輯卷資訊
lvdisplay
上一步操作保是增加了邏輯卷的大小,/var/ftp檔案系統大小並未改變,使用resize2fs命令,重定義檔案系統大小
為了一會上傳一個大檔案,這裡我們先刪除了一個zip包,刪除了300M的空間
df -h
重定義檔案系統大小
resize2fs /dev/VGroupzhu/VGroupzhu100
現在空間已經有1G變成了3G,繼續上傳檔案檢視是否可以上傳,測試上傳1.2G 的檔案
上傳檔案完畢後圖
再次新增一個盤,本次新增一個5G空間的盤,然後上傳一個光碟映象進行測試(大小4G)
5G盤已經新增成功
按上面操作進行格式化盤,新增入組,動態擴容
sdd碟符進行處理
pvcreate /dev/sdd //初始化
pvdisplay //顯示物理卷資訊
/dev/sdd新增到VGroupzhu卷組中,VolGroup00卷組在上一步中已經建立
vgextend VGroupzhu /dev/sdd
pvdisplay //顯示物理卷資訊
增大/dev/VGroupzhu/VGroupzhu邏輯卷 5G
lvextend -L +5G /dev/VGroupzhu/VGroupzhu100
和
lvextend -L +5G /dev/mapper/VGroupzhu-VGroupzhu100
一樣,執行那句都行!!!
顯示邏輯卷資訊
lvdisplay
上一步操作保是增加了邏輯卷的大小,/var/ftp檔案系統大小並未改變,使用resize2fs命令,重定義檔案系統大小。
重定義檔案系統大小
resize2fs /dev/VGroupzhu/VGroupzhu100
已擴充至8G,進行上傳光碟映象操作
df -h
好,那動態擴容方案就到此結束,為了讓大家更直觀的檢視動態擴容的方案,我們先後擴容了3此,分別一次1G、2G、5G,在擴容期間,我們沒有進行任何業務的停止及重啟操作,可見此方案的優越性!!!!!!