S obzirom da ima malo stručne literature na našem jeziku rešio sam da napišem par tekstova iz različitih oblasti AIX-a na srpskom. Nažalost, nemam mnogo slobodnog vremena, pa ću tekstove uglavnom pisati iz delova, koje ću objavljivati na svom sajtu kako koji stignem da napišem. Ako se u međuvremenu pojave neke vesti ubacivaću ih između. Vrlo je moguće da ću starim tekstovima koje objavim dodavati slike (grafikone, tabele i crteže) kad ih budem uradio kasnije, pa proverite s vremena na vreme da nešto nije update-ovano u međuvremenu. Prvi tekst je na temu AIX LVM-a.
LVM (Logical Volume Manager) pod AIX-om je skup alata za kreiranje, modifikovanje, brisanje i kontrolu logičkih segemenata (logical volumes). LVM kontroliše disk resurse mapirajući fizičke diskove u logičke celine koristeći specializovane drajvere “iznad” tradicionalnih device drajvera samih fizičkih uređaja (u ovom slučaju hard diskova, u IBM terminologiji nazvani DASD’s tj. Direct Access Storage Devices). Logički segmenti koje kreira LVM se eksportuju aplikativnom segmentu, i oni su potpuno nezavisni u odnosu na fizičku disk strukturu ispod.
Svaki individualni hard disk se pod AIX-om naziva Physical Volume (PV) i njegovo sistemsko ime je /dev/hdiskX (gde je X unikatni redni broj diska u sistemu). Svaki PV se dodeljuje Volume Grupi (VG) osim ukoliko se taj disk ne koristi kao RAW device ili kao SPARE disk (uglavnom nazvan HOT SPARE). Svaki PV je podeljen na tkz. Physical Partitions (PP) jednake fiksne veličine za zaj PV. Veličina PP-a zavisi od veličine samog PV-a.
Detaljan prikaz jednog PV-a (diska):
$ lspv hdisk0
PHYSICAL VOLUME: hdisk0 VOLUME GROUP: rootvg
PV IDENTIFIER: 00c4a37f07f270fd VG IDENTIFIER 00c4a37f00004c000000011787d7173d
PV STATE: active
STALE PARTITIONS: 0 ALLOCATABLE: yes
PP SIZE: 64 megabyte(s) LOGICAL VOLUMES: 10
TOTAL PPs: 799 (51136 megabytes) VG DESCRIPTORS: 2
FREE PPs: 44 (2816 megabytes) HOT SPARE: no
USED PPs: 755 (48320 megabytes) MAX REQUEST: 256 kilobytes
FREE DISTRIBUTION: 00..00..00..00..44
USED DISTRIBUTION: 160..160..159..160..116
LVM na identičan način tretira Redundant array of Independent Disk (RAID) disk polje (kao i bilo koji drugi disk). RAID polje koje sadrži veći broj diskova (u zavisnosti od tipa RAID-a) se tretira kao 1 disk. Prilikom instalacije AIX-a, sam AIX će po default-u automatski kreirati VG pod nazivom rootvg na koji će smestiti svoj operativni sistem. Budući PV-i mogu biti dodavani ovoj VG-i ili se mogu ubaciti u novu VG-u. Bitno je napomenuti da postoje neka pravila:
- VG-a može sadržati 1 ili više PV-a
- Isti PV se ne može deliti u više VG-a
- Ceo PV postaje deo VG-e kada se isti pridoda VG-i
- LVM-a ne zanima veličina PV-a oni mogu biti različite veličine
Kako bi AIX razlikovao PV-e, istim se dodeljuje tkz. Physical Volume ID (PVID). PVID možemo posmatrati kao neku vrstu serijskog broja koji se generiše tako što se kombinuje serijski broj mašine (koji se nalazi u EPROM-u) sa preciznim vremenom kreiranja samog PVID-a. PVID se zajedno sa sistemskom lokacijom (/dev/hdiskX) ubacuje u ODM. Prilikom podizanja sistema, disk konfigurator proverava PVID vrednost na disku sa PVID-em u ODM-u, ako se vrednosti podudare, disk dobija sistemsku lokaciju (/dev/hdiskX) i sam PV je spreman za upotrebu. Postoje određeni slučajevi kada se koriste dummy uređaji i kada se zbog okruženja PVID drugačije konfiguriše (primer su HACMP okruženja).
Prikaz PV-a na sistemu:
$ lspv
hdisk1 00c4a37f07f2a372 dvg active
hdisk0 00c4a37f07f270fd rootvg active
Kada dodamo PV u VG, PV se deli na kontinuinalne segmente identične veličine koje nazivamo Physical Partitions (PP). PP je najmanji segment prostora koji se može alocirati.
Prikaz distribucije PP-va unutar hdisk0 PV-a:
$ lspv -p hdisk0
hdisk0:
PP RANGE STATE REGION LV NAME TYPE MOUNT POINT
1-1 used outer edge hd5 boot N/A
2-160 used outer edge podaci jfs2 N/A
161-168 used outer middle hd6 paging N/A
169-213 used outer middle podaci jfs2 N/A
214-293 used outer middle hd1 jfs2 /home
294-320 used outer middle hd3 jfs2 /tmp
321-321 used center hd8 jfs2log N/A
322-322 used center hd4 jfs2 /
323-341 used center hd2 jfs2 /usr
342-342 used center hd9var jfs2 /var
343-343 used center hd3 jfs2 /tmp
344-344 used center hd1 jfs2 /home
345-346 used center hd10opt jfs2 /opt
347-426 used center hd2 jfs2 /usr
427-479 used center hd3 jfs2 /tmp
480-639 used inner middle podaci jfs2 N/A
640-755 used inner edge podaci jfs2 N/A
756-799 free inner edge
Prikaz volume grupe dvg:
$ lsvg dvg
VOLUME GROUP: dvg VG IDENTIFIER: 00c4a37f00004c000000011dbecd73a2
VG STATE: active PP SIZE: 256 megabyte(s)
VG PERMISSION: read/write TOTAL PPs: 199 (50944 megabytes)
MAX LVs: 256 FREE PPs: 69 (17664 megabytes)
LVs: 4 USED PPs: 130 (33280 megabytes)
OPEN LVs: 4 QUORUM: 2 (Enabled)
TOTAL PVs: 1 VG DESCRIPTORS: 2
STALE PVs: 0 STALE PPs: 0
ACTIVE PVs: 1 AUTO ON: yes
MAX PPs per VG: 32512
MAX PPs per PV: 1016 MAX PVs: 32
LTG size (Dynamic): 256 kilobyte(s) AUTO SYNC: no
HOT SPARE: no BB POLICY: relocatable
$
Unutar svake VG-e jedan ili više Logical Volumes (LV) su definisani. LV-i su način grupisanja informacija lociranih na jednom ili više PV-a. LV-i su prostor na disku za skladištenje podataka koji deluju kao kontinualni aplikativnom nivou, ali oni mogu biti diskontinuirani na konkretnom PV-u. Upravo ovo omogućuje LV-u da bude proširen, relociran, da se prostire preko nekoliko različitih PV-a i da se njihov sadržaj replicira sa većom lakoćom i dostupnošću.
Prikaz distribucije logickih particija unutar PV-a hdisk0:
$ lspv -l hdisk0
hdisk0:
LV NAME LPs PPs DISTRIBUTION MOUNT POINT
podaci 480 480 159..45..00..160..116 N/A
hd4 1 1 00..00..01..00..00 /
hd8 1 1 00..00..01..00..00 N/A
hd9var 1 1 00..00..01..00..00 /var
hd2 99 99 00..00..99..00..00 /usr
hd6 8 8 00..08..00..00..00 N/A
hd5 1 1 01..00..00..00..00 N/A
hd1 81 81 00..80..01..00..00 /home
hd3 81 81 00..27..54..00..00 /tmp
hd10opt 2 2 00..00..02..00..00 /opt
Svaki LV sadrži jean ili više Logical Parititions (LP). Svaki LP odgovara barem jednom PP-u. Ako je LV mirrorovan onda se dodatni PP alocira kako bi sadržao kopiju(e) svake LP-e. Ove kopije se obično distribuiraju na različitim PV (zbog bolje dostupnosti) ali mogu zbog performansi biti postavljene na istom PV-u, mada se ova mogućnost uglavnom izbegava zbog minijaturnih dobitaka u performansama a većim rizikom (sem kod potreba za mirror-om).
Volume grupa bez mirror-a (identičan broj LP-a i PP-a):
# lsvg -l rootvg
rootvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
hd5 boot 1 1 1 closed/syncd N/A
hd6 paging 8 8 1 open/syncd N/A
hd8 jfs2log 1 1 1 open/syncd N/A
hd4 jfs2 1 1 1 open/syncd /
hd2 jfs2 99 99 1 open/syncd /usr
hd9var jfs2 1 1 1 open/syncd /var
hd3 jfs2 81 81 1 open/syncd /tmp
hd1 jfs2 81 81 1 open/syncd /home
hd10opt jfs2 2 2 1 open/syncd /opt
podaci jfs2 480 480 1 closed/syncd N/A
Volume grupa sa mirrorovanim diskovima (duplo veći broj PP-a u odnosu na LP-e):
# lsvg -l rootvg
rootvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
hd5 boot 1 2 2 closed/syncd N/A
hd6 paging 4 8 2 open/syncd N/A
paging00 paging 8 16 2 open/syncd N/A
hd8 jfs2log 1 2 2 open/syncd N/A
hd4 jfs2 2 4 2 open/syncd /
hd2 jfs2 91 182 2 open/syncd /usr
hd9var jfs2 5 10 2 open/syncd /var
hd3 jfs2 129 258 2 open/syncd /tmp
hd1 jfs2 80 160 2 open/syncd /home
hd10opt jfs2 11 22 2 open/syncd /opt
lg_dumplv sysdump 8 8 1 open/syncd N/A
LV-ovi mogu biti korišćeni na različite načine:
- Unstructured – Ovo su tkz. RAW LV-i i imaju višestruke tipove namena. Ovaj prostor sistem koristi za tkz. Page Space (SWAP pod AIX-om) ili npr. kao Dump Space. Aplikacije DB2, ORACLE i drugi, ovakav prostor koriste u tkz. RAW modu gde sami određuju kako će podaci na tim LV-a biti raspoređeni.
- Structured – Ako je LV-a namena da drži obične fajlove onda AIX na ovaj tip LV-a smešta neki File System (najčešće JFS2) kako bi se kreirala hierarhijska struktura direktorijuma i fajlova za operativni sistem.
Luka Gerzic AIX, Storage AIX, dasd, lp, lv, lvm, odm, pp, pv, pvid, raid, rootvg, vg