存儲管理是軟件技術(shù),也是操作系統(tǒng)具有的基本功能,AIX的存儲管理功能被稱為Logical Volume Manager(LVM)
LVM以物理磁盤為管理對象,但這是從操作系統(tǒng)層看到的物理磁盤,不一定是真正的物理磁盤。例如經(jīng)過RAID控制卡管理,一組真正的物理磁盤構(gòu)成了一個RAID組,再被分成了一個多或者多個邏輯磁盤LUN,這個邏輯磁盤對操作系統(tǒng)來說,就是物理磁盤了,也就是一個PV(Physical Volume)。
操作系統(tǒng)看的物理磁盤被稱為Physical Volumes(PVs),對應(yīng)的設(shè)備名用hdisk表示,它們按照一定的順序排列,分別是Hdisk0,hdisk1。。。順序并非一成不變的,系統(tǒng)自動識別時,按照控制卡和槽位由小到大的順序以及LUN號大小排列,也可以人工指定。并且沒有優(yōu)先級差別。只是在機器啟動時,操作系統(tǒng)并沒有完全被裝進系統(tǒng),因為操作系統(tǒng)在磁盤上,而啟動初期,可能這個磁盤還沒被識別。因此只能將操作系統(tǒng)安裝到機器微碼能夠識別的磁盤上,通常內(nèi)置SCSI控制卡上的磁盤都可以被識別到,一些較新的微碼也可以支持FC控制卡連接的磁盤,這樣就能夠?qū)崿F(xiàn)無內(nèi)置磁盤啟動,就是所謂的SAN Boot。
我們在使用PV前,必須將其加入到Volume Group(VG,卷組)中,或者直接在上面創(chuàng)建卷組。當(dāng)PV從屬于一個VG后,其空間被分為許多大小相同的最小分配單元,每一塊被稱為一個Physical Partitions(PP,物理分區(qū))。同一個VG中的PP大小都相等,我們可以繼續(xù)在VG上創(chuàng)建Logical Volume(LV,邏輯卷),創(chuàng)建邏輯卷時需要給邏輯卷指定名稱和大小,大小的單位是PP的大小,即最少要占用一個PP的空間,最多沒有特別限制,但在默認情況下,每個LV可能有256或者512個PP的限制,不過這個限制是軟限制,可以任意修改。
組成的邏輯卷是LP,即Logical Partitons(LP,邏輯分區(qū))每個LP根據(jù)鏡像要求,對應(yīng)1~3個PP的物理空間。在AIX中,邏輯卷被當(dāng)做一種特殊的塊設(shè)備,在/dev/目錄下可以看到對應(yīng)的設(shè)備名。例如/dev/mylv。邏輯卷可以直接被應(yīng)用程序使用,這種使用方式叫做裸設(shè)備方式,也可以在邏輯卷上創(chuàng)建文件系統(tǒng),然后按照普通文件操作方式來使用。
當(dāng)AIX識別到一個新PV時,先檢查它是否有PV ID。PV ID是分配給每個PV的唯一識別號。如果它是全新的磁盤,沒有PV ID,則對此PV除了在其上創(chuàng)建VG或?qū)⑵浼尤氲侥硞已經(jīng)建立的VG中,設(shè)置一個新的PV ID,從系統(tǒng)中刪除此PV之外,不能進行其他操作。而創(chuàng)建VG和加入VG將自動給此PV分配新的PV ID。
系統(tǒng)中管理PV完全是依靠PV ID,盡管有hdisk這樣的設(shè)備號可用,但是操作系統(tǒng)對于磁盤的識別仍然是依靠PV ID的,就是hdisk數(shù)字可能會改變,即使同一臺小型機也是如此,而PV ID永遠保持不變,即使拿到另一臺機器上PV ID也不變,直到執(zhí)行了以上可以改變PV ID的操作。保持PV ID不變,靠PV ID識別共享磁盤也是雙機熱備的基礎(chǔ)。從另一方面來講,如果你使用上面的命令改變了PV ID,操作系統(tǒng)就認為原來的磁盤消失了,而再也找不能找回來。更不巧的是,如果原有的PV還屬于某個VG,哪么這個VG再也發(fā)現(xiàn)不了原來的成員盤,這個盤上的數(shù)據(jù)就無法找回了,雖然數(shù)據(jù)和磁盤依然在那里。
VG被激活之后才能訪問,同時此VG也被執(zhí)行激活命令的操作系統(tǒng)映像鎖住,不允許別的操作系統(tǒng)映像訪問。但要注意,這個鎖只是邏輯的鎖,在磁盤上做一個標(biāo)記,而且當(dāng)VG被激活后,如果發(fā)生機器突然宕機,操作系統(tǒng)可能沒有能執(zhí)行磁盤解鎖的命令,清楚標(biāo)志位,則其他機器就無法激活此卷組了。需要再執(zhí)行帶參數(shù)-f的的強制命令激活此組。
有時甚至需要使用更底層的命令手工清除標(biāo)志位,這一命令須謹慎使用。