Differences

This shows you the differences between two versions of the page.

Link to this comparison view

saisp:labs:04:contents:01 [2014/01/24 12:47]
mihai.carabas [01. Kernel-based Virtual Machine (KVM)]
saisp:labs:04:contents:01 [2014/03/16 23:55] (current)
razvan.deaconescu
Line 1: Line 1:
-==== 01. Kernel-based Virtual Machine (KVM) ====+==== 01. [10p] Investigare LVM ====
  
-Virtualizarea este folosită pe scară largă în centrele de date întrucât oferă flexibilitate foarte mare în managementul resurselor. Pentru ​a nu afecta perfomanța,​ producătorii de procesoare au introdus facilități virtualizare pentru a permite sistemelor de operare să ruleze nemodificate. Entitatea software care folosește aceste facilități se numește **hypervisor**. KVM este un hypervisor ce oferă suport pentru virtualizarea nativă (implementează facilități de virtualizare). În continuare vom prezenta modul de lucru cu soluția implementată de KVM. +Dorim să investigăm o configurație existentă LVM. Pentru ​aceasta pornim mașina virtuală aferentă KVM:<code bash> 
- +student@mjolnir:​~/​saisp$ ​./​lvm-start-kvm 
-Trebuie să verificăm dacă hardware-ul are suport pentru **virtualizare nativă** (mai poartă denumirea ​și de **extensie de virtualizare**). Numele extensiilor de virtualizare diferă de la un producător la altul astfel: +</​code>​ 
-    * INTEL - **vmx** (Virtual Machine eXtensions) +și ne conectăm peste SSH pentru a lucra în mașina virtuală:<​code ​bash
-    * AMD - **svm** (Secure Virtual Machine) +student@mjolnir:~/saispssh -l root 192.168.0.2
-Pentru a verifica prezența extensiilor de mai sus trebuie să ne uităm în ''/​proc/​cpuinfo''​ dacă câmpul //Flags// conține numele extensiei (**vmx** pentru Intel sau **svm** pentru AMD):<​code>​ +
-root@saisp:~$ cat /​proc/​cpuinfo |grep vmx +
-flags           : ... ds_cpl **vmx** smx...+
 </​code>​ </​code>​
  
-Pentru a folosit KVM trebuie să instalăm ​pachetul ''​qemu-kvm'', ​**qemu** fiind utilitarul din userspace folosit pentru ​porni mașinile virtuale ​și a transmite parametri doriți hypervisorului prin operații de ''​ioctl'' ​pe device-ul ​''​/dev/kvm''<​code>​ +Mașina virtuală conține o configurație LVM; pachetul ''​lvm2'', ​necesar configurării,​ este instalat. Pentru ​o investiga listăm volumele fizice, grupurile de volume ​și volumele logice folosind, respectiv comenzile ​''​pvs''​''​vgs''​, ''​lvs'':​<​code ​bash
-root@saisp:~# apt-get install qemu-kvm +root@lvm:~# pvs 
-[...]+  PV         ​VG ​     Fmt  Attr PSize    PFree 
 +  /​dev/​sdb1 ​ azeroth lvm2 a--  ​1020.00m ​   0 
 +  /​dev/​sdc1 ​ azeroth lvm2 a--  1020.00m    0 
 +root@lvm:~# vgs 
 +  VG      #PV #LV #SN Attr   VSize VFree 
 +  azeroth ​  ​2 ​  ​3 ​  0 wz--n- 1.99g    0 
 +root@lvm:~# lvs 
 +  LV        VG      Attr       ​LSize ​  Pool Origin Data%  Move Log Cpy%Sync Convert 
 +  arathor ​  ​azeroth -wi-a----- 700.00m 
 +  dalaran ​  ​azeroth -wi-a----- 840.00m 
 +  lordaeron azeroth -wi-a----- 500.00m
 </​code>​ </​code>​
  
 +Detalii aflăm folosind comenzile ''​pvdisplay'',​ ''​vgdisplay''​ și ''​lvdisplay'':<​code bash>
 +root@lvm:~# pvdisplay ​
 +  --- Physical volume ---
 +  PV Name               /​dev/​sdb1
 +  [...]
 +  --- Physical volume ---
 +  PV Name               /​dev/​sdc1
 +  [...]
 +root@lvm:~# vgdisplay
 +  --- Volume group ---
 +  VG Name               ​azeroth
 +  [...]
 +root@lvm:~# lvdisplay
 +  --- Logical volume ---
 +  LV Path                /​dev/​azeroth/​lordaeron
 +  [...]
  
 +  --- Logical volume ---
 +  LV Path                /​dev/​azeroth/​arathor
 +  [...]
  
-    * Tutorial ​exemplu masina virtuala si porniți-o +  ​--- Logical volume --- 
-      * modificand diferiti parametri: ram, cpu, parametri) +  LV Path                /​dev/​azeroth/​dalaran 
-      * pornire masina in background si conectare prin VNC+  [...] 
 +</​code>​
  
 +Observăm că în cadrul infrastructurii LVM există două volume fizice (//physical volumes//): ''/​dev/​sdb1''​ și ''/​dev/​sdc1''​. Aceste două volume fizice sunt angrenate într-un grup de volume denumit ''​azeroth'',​ care este partiționat în trei volume logice denumite ''​arathor'',​ ''​dalaran''​ și ''​lordaeron''​.
 +
 +Căile către volumele logice sunt, respectiv ''/​dev/​azeroth/​arathor'',​ ''/​dev/​azeroth/​dalaran''​ și ''/​dev/​azeroth/​lordaeron''​. Calea către fiecare volum cuprinde numele grupului de volume și apoi numele volumului logic. Acestea sunt, de fapt, link-uri simbolice către fișiere de tip dispozitiv direct din ''/​dev'':<​code bash>
 +root@lvm:~# ls -l /​dev/​azeroth/​lordaeron
 +lrwxrwxrwx 1 root root 7 Mar 16 16:57 /​dev/​azeroth/​lordaeron -> ../dm-0
 +</​code>​
saisp/labs/04/contents/01.1390560476.txt.gz · Last modified: 2014/01/24 12:47 by mihai.carabas
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0