LVM: Logical Volume Manager: differenze tra le versioni

nessun oggetto della modifica
Nessun oggetto della modifica
Nessun oggetto della modifica
Riga 24: Riga 24:


Ad  esempio, una delle possibili differenze tra le due versioni, è il fatto  che l'''LVM1'' permetta ''snapshot'' solo in lettura, invece  nella 2 sono utilizzabili sia in lettura che scrittura.
Ad  esempio, una delle possibili differenze tra le due versioni, è il fatto  che l'''LVM1'' permetta ''snapshot'' solo in lettura, invece  nella 2 sono utilizzabili sia in lettura che scrittura.
== Funzionamento ==
In questa sezione sono introdotti i  principi elementi che compongo l'''LVM'' ed è introdotto il  funzionamento dello stesso.
===La struttura base dell'''LVM''===
Il LVM basa il proprio funzionamento sulla seguente struttura:
; ''Volume Group'' ('''VG'''): trattasi del più alto livello di astrazione che raggruppa in sé una collezione di Logical Volume e di Physical Device.
; ''Physical Device'' ('''PD'''): sono i nostri  supporti di memorizzazione e possono essere di qualsiasi tipo, sia Hard  Disk, sia nastri, sia memorie solide ma anche ambienti RAID, etc.
; ''Logical Volume'' ('''LV'''): l'equivalente nel nostro ''LVM'' in tutto e per tutto di quella che è una partizione su un Hard Disk. L'unica piccola differenza subito evidente è l'etichetta/label (ad es. /dev/nome-''VG''/nome-''LV'' invece del canonico /dev/sda1). Come ogni normale partizione il ''LV'' può contenere un file system a nostro piacimento.
; ''Logical Extend'' ('''LE'''): seppure difficilmente  avremo a che farci direttamente, i ''LE'' sono i pezzetti in cui viene  suddiviso il ''LV'' in modo di poterlo allocare tra i vari ''PE''  disponibili al ''VG''.
; ''Physycal Extent'' ('''PE'''): ad  esempio, quando vogliamo aggiungere un ''PD'' al nostro ''VG'', dobbiamo  per prima cosa iniziarlo con il comando <tt>pvcreate</tt>.  Questo comando altro non fa che dividere il supporto in tanti spazi in  modo da poter poi creare una corrispondenza tra i ''LE'' ed i ''PE'' e  così allocare lo spazio necessario per i ''LV''.
In modo un po' stilizzato, possiamo descrivere il passaggio dal concetto di partizioni a quello di ''LV'' nel seguente modo:
<pre>
  hd1    sda2      (Physical Device - partizioni)
    \    /
    \  /
    server1        (Volume Group)
    / | \
    /  |  \
  /  |  \
Home Root  Dati  (Logical Volume)
</pre>
La spiegazione di come  si comporta e funziona l&#39;''LVM'' è già stata tratta  nell'<u>e-zine numero 5</u> di ''debianizzati.org'' nello  sviluppo dell'articolo  [http://e-zine.debianizzati.org/web-zine/numero_5/?page=46|'''LVM  mirror''']. Ecco a seguire  [http://e-zine.debianizzati.org/web-zine/numero_5/?page=48| il riporto  dell&#39;'''Introduzione teorica all'LVM''']:
{|  style="-moz-border-radius: 0.5em; width:90%; margin-top:+.7em;  background-color:#f0f8ff; border:1px solid #87ceeb; color:#000"  align="center"
|-
|''LVM'' è l'acronimo di '''Logical  Volume Manager''', ovvero di Gestore dei Volumi Logici di Linux. Ma  quindi cosa sono questi ''volumi logici''?<br />
L'idea di  fondo è di sostituire al concetto di partizione un diverso contenitore  (il '''Logical Volume''') il quale non dipende più dalle limitate  informazioni contenibili  nell'[http://guide.debianizzati.org/index.php/MBR MBR] ma, tramite le  gestione del kernel Linux, si può liberamente  spostare/raggruppare/estendere da un settore all'altro di ogni disco,  quasi come se fosse un file o una cartella all'interno del ''file  system''.<br />
<br />
All'atto pratico  <u>la modalità di funzionamento dell'''LVM''</u> può essere  riassunta nel seguente modo. L'unità principale sulla quale si basa il  sistema è il '''Volume Group'''. Detto ''VG'' verrà da noi dotato di una  certa capacità di memoria pari alla capacità di tutti i supporti di  massa che gli assegnaremo.<br />
Tali supporti possono  essere dischi SATA, PATA, USB, configurazioni RAID, SSD o quant'altro e  mi riferirò ad essi come '''Physical Device'''. I ''PD'' possono anche  non avere alcuna partizione, seppure si consiglia di dotarli almeno di  una partizione primaria siccome altri sistemi operativi, qualora non  riscontrino alcuna partizione, potrebbero inavvertitamente  sovrascriverli.<br />
I ''PD'', quando sono assegnati ad un  ''VG'', sono gestiti dall'''LVM'' suddividendo lo spazio disponibile su  ognuno di essi tramite una suddivisione in unità fisiche ridotte (di  default di qualche Mb) dette '''Physical Extent'''. Per questo motivo,  prima di aggiungere un ''PD'' ad un ''VG'' sarà necessario  inizializzarlo proprio per creare su di esso i vari ''PE''.<br />
Quando  creeremo un '''Logical Volume''' (ovvero lo spazio che useremo come  "partizione") l'''LVM'' gestirà lo spazio virtuale (logico) da noi  richiesto suddividendolo in tanti '''Logical Extent''' tali da  permettere di distribuire ogni ''LE'', che altro non è che un pezzo del  nostro ''LV'', tra i ''PD''. Questa allocazione avviene facendo  corrispondere ad ogni ''LE'' un determinato ''PE'' secondo  necessità.<br />
<br />
Da tale modo di  spezzettare i ''LV'' ed i ''PD'' nasce tutta la potenzialità  dell'''LVM''. Infatti, quando all'interno del nostro ''VG'' creeremo un  ''LV''  l&#39;''LVM'' non sarà obbligato a distribuire lo spazio da  noi richiesto tra i ''PD'' ma tra le ''PE''. Pertanto sarà possibile  spostare/allargare/ridurre il ''LV'' semplicemente agendo sulla  distribuzione delle ''LE'' tra i ''PE'' disponibili.<br />
Ad  esempio, quando in questo articolo creeremo il nostro ''LV'' in  modalità mirrored, l&#39;''LVM'' si limiterà semplicemente a  sincronizzare alcune ''PE'' di un ''PD'' con le ''PE'' del nostro  secondo ''PD''. Pertanto ad ogni coppia di ''PE'' sincronizzata  corrisponderà il medesimo ''LE'' (e quindi il medesimo ''LV'').<br  />
<br />
Per chi, perso tra queste sigle, volesse  maggiormente approfondire segnalo alcuni utili HOWTO  [http://en.wikipedia.org/wiki/Logical_volume_management [2]]  [http://tldp.org/HOWTO/LVM-HOWTO/index.html [3]].<br />
<br />
Chi  è riuscito a seguire fin qui il discorso, ecco un grafico  esemplificativo del funzionamento. In questo caso i ''LE'' sono omessi  in quanto corrispondono 1:1 ai ''PE'', ovviamente se vi ci fosse un  ''mirror'' la corrispondenza tra ''LE'' e ''PE'' sarebbe 1:2 (un ''LV''  fa riferimento a due diversi spazi sui ''PD''). Infine si osservi il  ''LV'' /home, quest'ultimo è in modalità ''striped'' ovvero è in parte  sul primo ''PD'' ed in parte sul secondo ''PD''.<br />
[[immagine:500px-LVM1.svg.png]]
|}


{{Autori
{{Autori
3 155

contributi