Veritas File System e Volume Manager su AIX

Il Veritas File System (VxFS) e la gestione del Volume Manager (VxVM) Veritas sono ambienti molto diffusi su tutti i sistemi Unix. In questo breve documento vengono riportate alcune indicazioni relative al loro utilizzo sul sistema operativo Unix AIX di IBM.
Il documento e' breve e semplice: a parte l'introduzione utilizza esempi concreti! Se servono ulteriori elementi... meglio consultare i manuali!

Cos'e' un Volume Manager e cosa fa VxFS? Partizioni, volumi, plex, ... tutto chiaro vero? Beh, se non lo sapete aspettate a leggere questo documento. Non ho voglia di descriverlo! Magari provate prima con Utilizzo di un Volume Manager su Unix...
Cos'e' AIX, quali caratteristiche ha? Beh, se non lo sapete aspettate a leggere subito questo documento. Non ho voglia di descriverlo! Magari iniziate con Il sistema operativo Unix: AIX...
Se invece servono indicazioni specifiche per altri sistemi operativi potete leggere: Veritas File System e Volume Manager per HP-UX...

Bene, l'introduzione e' stata anche fin troppo lunga. Ora parliamo di File System e di Volume Manager!

VxFS ed AIX

AIX supporta diversi tipi di File System e tra questi anche VxFS.

Prima di passare ai comandi... un ripasso su AIX: l'elenco dei File Systems si ottiene con df -k, i file system da montare sono definiti nel file /etc/filesystems, il comando per montare i file system e' il solito mount, l'opzione per indicare la tipo di file system e' -V, i file system possono essere facilmente dimensionati con chfs -a size=3G /tmp. Il comando cfgmgr consente di aggiornare la "base dati" interna ODM con tutte le periferiche connesse al sistema, i parametri del kernel si impostano con vmo -p -o opzione=valore, smitty e' l'interfaccia a menu per l'amministratore del sistema che consente di fare praticamente tutto ed anche di piu'.
Il boot del sistema esegue i comandi in /etc/rc.d/rc2.d, un reboot si esegue con il comando shutdown -Fr.

Cos'e' installato?

Per controllare la presenza dei pacchetti:

# lslpp -l | grep -i veritas
...
  VRTSvxvm                   5.0.3.0  COMMITTED  Veritas Volume Manager by
...
Banale!
Tipicamente su AIX il VxVM NON e' installato e bisogna quindi effettuare l'installazione con installer. E' poi consigliato committare i packages (non sempre sono tutti in COMMITTED) e lanciare il comando di configurazione vxinstall.

Allargare un File System utilizzando Smitty

Con smitty si fa tutto! E tutto e' semplice... fa tutto smitty in automatico.

Anche Veritas offre un'interfaccia grafica X con cui fare tutto. Il comando e': /opt/VRTSob/bin/vea.

A volte e' questione di gusti... personalmente preferisco utilizzare i comandi di linea.

VxVM ed AIX

Su AIX e' disponibile da sempre un suo Volume Manager l'LVM (Logical Volume Manager). L'LVM ha molte caratteristiche in comune a VxVM... e' robusto, affidabile ed le funzioni di basi sono comuni (eg. mirroring). Negli esempi utilizzati fino ad ora abbiamo sempre l'LVM ma... ora tocca al VxVM.

Il primo fondamentale vantaggio di VxVM e' che la sua disponibilita' su piattaforme differenti, naturalmente con le stesse funzionalita' e modalita' di utilizzo. Alcune attivita' risultano piu' semplici con il VxVM ed il VxVM offre alcune funzionalita' specifiche non presenti in LVM (eg. Dirty Region Logging, Online Relayout, Snapshot, ...).

Con il VxVM si gestiscono disk, disk group, subdisk, plex, volume, ... non sapete cosa sono? Leggete Utilizzo di un Volume Manager su Unix! Nel seguito facciamo solo semplici esempi di comandi.

Comandi facili...

Oltre all'interfaccia a comando completa, che vediamo negli ultimi esempi alla fine del documento, vi e' un'interfaccia a comando "assistita" che permette di fare la maggior parte delle attivita'. Il comando e' vxassist. Per esempio con vxassist -g diskgroup -b growto volname 8000m; il volume viene incrementato alla nuova dimensione in background ed il comando si occupa di trovare lo spazio sul disk group. Per controllare l'andamendo del comando si possono controllare i task lanciati con vxtask list.

Altro comando semplice e' vxprint che riporta la configurazione di disk group, disk, plex, ... insomma di tutto. La forma piu' leggibile e completa e' vxprint -Ath.

Per controllare invece i dischi "visti" dal Volume Manager il comando e' vxdisk -o alldgs list.

Sempre della serie dei comandi facili, con il menu richiamato da vxdiskadm si fanno la maggior parte delle attivita' di gestione sui singoli dischi.

Per poter essere utilizzato da VxVM un disco deve essere libero e va inizializzato (eg. con vxdiskadm). Se un disco contiene partizioni LVM non puo' essere utilizzato.

A volte e' utile sganciare un disk group da un sistema (ad esempio per simulare le azioni di un cluster o migrare dati tra sistemi diversi)... si fa con vxdg diskgroup deport. Quindi per riagganciarlo vxdg diskgroup import e per riattivare i volumi: vxvol [-f] -g diskgroup startall. Ma questi non sono piu' comandi facili...

Interfaccia grafica

Per una piu' semplice gestione dei dischi, dei volumi, ... e' fornita un'interfaccia grafica via X-Windows: /opt/VRTSob/bin/vea.
Effettivamente e' utile perche' consente di fare tutto (o quasi) e permette di avere una visione completa e veloce di tutto.
Infine alcuni semplici wizard permettono, anche a chi non conosce affatto VxVM come il sottoscritto, di fare le principali attivita'!

Configurare dischi in SAN

Un esempio comune ed interessante (spero!) e' quello di configurare su VxVM dischi in SAN (Storage Area Network). I passi sono diversi...

Innanzi tutto debbono essere definite le LUN sulla SAN, quindi deve essere fatto il mapping sugli switch (zoning). Per fare questo chi si occupa della configurazione dei dischi (spesso il venditore dell'HW SAN) ha bisogno di alcune informazioni sul sistema.

Con lscfg -vpl fcs0 si controllano le interfacce in fibra e si individuano i Port World Wide Name (per gli amici WWN, riportati nel campo Network Address). Si tratta dell'indirizzo univoco della scheda (come un MAC ma piu' lungo) necessario per la configurazione del mapping.

Terminata la configurazione della SAN si debbono far vedere i nuovi "dischi". I comandi sono:

cfgmgr
vxdctl enable
Ovviamente la loro funzione e' quella di fare lo scan dell'HW (primo comando "AIX"), ed avvertire il demone vxconfigd che c'e' qualcosa di nuovo (secondo comando "Veritas"). Se si vedono i nuovi dischi e' opportuno controllare anche il corretto funzionamento del Dynamic Multi Path con il comando vxdmpadm (nel caso di multipath andrebbe utilizzato prima dell'enable il comando vxdctl initdmp).
Ma attenzione: anche l'AIX gestisce il multipath (lslpv)! Se si vuole disabilitare il multipath di Veritas, il comando da lanciare e' vxddladm disablevscsi e quindi, eventualmente, cancellare con odmdelete i dischi N/A.

A questo punto con l'interfaccia grafica o in qualche altro modo si configurano i dischi su VxVM associandoli ad un disk group.
I vendor di SAN forniscono client specifici per il controllo della configurazione (eg. con EMC2 syminq, con IBM Shark esscli, ...). Inoltre, se vengono caricati i relativi driver, il sistema operativo e Veritas possono "riconoscere" gli enclosure e battezzarli correttamente.

Interfaccia a comando

L'interfaccia a comando consente di agire direttamente a livello di singolo disco, subdisk, plex, volume, disk group, ... con comandi specifici: vxdisk vxmake vxplex vxvol vxdg vxattr .... L'interfaccia a comando serve in tre casi:

Nella speranza che per voi valga il secondo caso, o che siate curiosi, vediamo comunque qualche esempio...

Creazione di un volume

Esempio di creazione di un volume a partire dai singoli componenti e quindi modificando alcuni parametri.
Naturalmente e' prima necessario assegnare almeno un disco al disk group con vxdiskadm (scegliere 1, list, NomeDisk, NomeDG, noCDS, initialize, aixformat, ... q)

# Creazione dei subdisk
vxmake sd sc0d1s3-01 /dev/dsk/sc0d1s3,0 len=1400000
vxmake sd sc0d1s3-02 /dev/dsk/sc0d1s3,1400000 len=103000
# ....
vxmake sd sc1d1s3-01 /dev/dsk/sc1d1s3,0 len=1400000

# Creazione dei plex
vxmake plex nomepl-0 sd=sc0d1s3-01
vxmake plex nomepl-1 sd=sc1d1s3-01

# Creazione del volume
vxmake -U fsgen vol nomevol plex=nomepl-0,nomepl-1

# Modifica delle permission sul volume (deve essere effettuata 
# sul volume e non sui file /dev)
vxedit set fstype=gen user=oracle group=dba mode=660 nomevol
vxedit set fstype=fsgen user=root group=bin mode=660 nomevol

# Attivazione del volume
vxvol init active nomevol
# vxvol init [clean active enable zero]
Naturalmente puo' anche essere utilizzata l'interfaccia semplificata che fa tutto con un solo passo!
vxassist -g DG make VOL 1000M
A questo punto i passi sucessivi sono semplici:
# Creazione di un file system sul volume
mkfs -V vxfs /dev/vx/dsk/nomedg/nomevol 
mkdir /homeXX
mount -V vxfs /dev/vx/dsk/nomedg/nomevol /homeXX
VCS

Veritas fornisce un software per la gestione dei cluster il Veritas Cluster Server (VCS). In questo capitolo vengono riportate solo le specificita' sul sistema operativo AIX.
Il prodotto di cluster nativo su AIX e' HACMP. Una descrizione generale sui cluster in ambiente Unix e' riportata nel documento: Unix Clusters. Una descrizione piu' completa del VCS si trova sui documenti: Veritas ClusterServer, Amministrazione di Veritas Cluster.

Le interfacce per l'LLT vanno configurate con size 1500:

set-node saturn
set-cluster 6060
link en2 /dev/dlpi/en:2 - ether - 1500
link en3 /dev/dlpi/en:3 - ether - 1500
link-lowpri en0 /dev/dlpi/en:0 - ether - 1500
Per il test dell'LLT sul DLPI i comandi sono:
pluto> /opt/VRTSllt/getmac /dev/dlpi/en:2
pluto> /opt/VRTSllt/dlpiping -s /dev/dlpi/en:2
venus> /opt/VRTSllt/dlpiping -c /dev/dlpi/en:2 MAC

L'installer di veritas configura correttamente i driver DLPI per l'LLT... nel caso in cui non fossero presenti si possono definire agendo sul file /etc/pse.conf.


Testo: Veritas File System e Volume Manager su AIX
Data: 31 Febbraio 2004
Versione: 1.0.2 - 14 Febbraio 2009
Autore: mail@meo.bogliolo.name