Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

La Virtualizzazione

3,809 views

Published on

Cos'è la virtualizzazione dei Computer?

Published in: Technology
  • Be the first to comment

La Virtualizzazione

  1. 1. La Virtualizzazione Cos’è? Perchè? Storia? Come? Con che prodotti? Demo!
  2. 2. Cos’è? - 1 <ul><li>vir|tuà|le agg. 3 TS inform., che si fonda sulla simulazione del reale mediato da mezzi elettronici: viaggio v. , sesso v. </li></ul>(http://www.demauroparavia.it/127926)
  3. 3. Cos’è? - 2 In particolare in informatica si parla sempre più spesso di server virtualization che può assumere due significati: <ul><li>Molti computer fisici che appaiono come un unico server virtuale allora si parla di grid computing
  4. 4. Un unico computer fisico che appare però come molti server virtuali. E’ di questo che tratteremo qui di seguito </li></ul>
  5. 5. Cos’è? - 3 Virtualizzazione dei Server 1 singolo server chiamato host ‘ospita’ molte Virtual Machine (VM) guest (img from: http://www.vmware.com/pdf/virtualization.pdf)
  6. 6. Perchè? - Server Consolidation <ul><li>Domanda retorica: Costa di più 1 elaboratore o 8 elaboratori?
  7. 7. Riduzione costi: </li></ul><ul><ul><li>Acquisto
  8. 8. Consumi: </li></ul></ul><ul><ul><ul><li>Elettricità
  9. 9. Condizionamento
  10. 10. Volume – spazio rack </li></ul></ul></ul><ul><ul><li>Guasti </li></ul></ul>
  11. 11. Perchè? - Server Consolidation 2 <ul><li>Riduzione costi (continua): </li></ul><ul><ul><li>Manutenzione - riduzione del tempo necessario per svolgere le operazioni sistemistiche più comuni: </li></ul></ul><ul><ul><ul><li>Installazione
  12. 12. Configurazione
  13. 13. Replica
  14. 14. Backup </li></ul></ul></ul>
  15. 15. Perchè? - Server Consolidation 3 <ul><li>Aumento della disponibilità: </li></ul><ul><ul><li>Tolleranza ai guasti
  16. 16. Riduzione (o eliminazione) dei tempi di downtime
  17. 17. Alta affidabilità
  18. 18. Disaster Recovery </li></ul></ul>
  19. 19. Perchè? - Server Consolidation 4 <ul><li>Load Balancing – Live Migration
  20. 20. Dimensionamento delle risorse </li></ul>All'inizio del progetto si assegnano poche risorse (ram e cpu) per addattarle via via in base alle esigenze che si presentano
  21. 21. Perchè? - Test <ul><li>Possibilità per i programmatori e i sistemisti di testare le proprie soluzioni prima di metterle in produzione in modo semplice e su una varietà di ambienti.
  22. 22. Esempi: </li></ul><ul><ul><li>Avete scritto un programma, come fate a testarlo con Windows XP, Vista e Linux nelle diverse distribuzioni?
  23. 23. Dovete effettuare una nuova configurazione del server. La 'provate' nel server di produzione? </li></ul></ul>
  24. 24. Esempi d'uso <ul><li>Hosting sempre più evoluto e personalizzato => Virtual Housing
  25. 25. Mailserver Cluster – primo setup, test, replica degli MX => tempi ridotti da settimane a minuti tramite la virtualizzazione
  26. 26. Test di nuove distro prima di metterle in produzione in settori dedicati. Es. </li><ul><li>Per un firewall meglio IPCOP o con pfSense?
  27. 27. Per un NAS (Network Attacched Storage) meglio FreeNAS o Openfiler?
  28. 28. L'upgrade da CentOS 4 a CentOS 5 creerà problemi? </li></ul></ul>
  29. 29. Storia? - 1 <ul><li>Virtualizzazione Hardware </li></ul>IBM costruisce negli anni '60 il primo System/360™ Model 67 che ha tutte le interfacce HW virtualizzate attraverso un Virtual Machine Monitor (VMM) che fa girare un supervisor (SO) dal nome Conversational Monitor System (CMS) La compatibilità con il CMS è mantenuta anche negli attuali System z9™
  30. 30. Storia? - 2 <ul><li>Virtualizzazione del processore </li></ul>Uno dei primi usi è stato il P-code (Pseudo-Code) pensato per girare all'interno di una virtual machine (VM). Oggi la strategia è usata nei compilatori moderni e si chiama Object-Code Vi viene in mente un altro esempio?????
  31. 31. Storia? - 3 <ul><li>Virtualizzazione dell’Instruction Set </li></ul>Questa è la più recente forma di virtualizzazione. Un'istruzione virtuale viene traslata in una reale il più delle volte dinamicamente. Esempio il Code Morphing Software di Transmeta traduce le istruzioni assembler x86 in istruzioni VLIW http://it.wikipedia.org/wiki/Code_Morphing_Software
  32. 32. La Storia - 4 <ul><li>La Virtualizzazione futura riguarderà i dispositivi mobili </li></ul>
  33. 33. Come? <ul><li>Emulazione HW – pro / contro
  34. 34. Full Virtualization – pro / contro
  35. 35. Paravirtualization – pro / contro
  36. 36. Virtualizzazione a livello di SO – pro / contro </li></ul>Tecnologie che corrispondono a diversi livelli di astrazione e che vengono chiamate anche in modi diversi; qui viene usata l'accezione più comune.
  37. 37. Come? - Emulazione HW Emulazione di tipi di HW completamente diversi da quello disponibile a livello di host. Diversa CPU, architettura MB, ecc...  Possibilità di far girare diverse VM ognuna con un proprio HW  Performance scarse
  38. 38. Come? - Full Virtualization Un SO 'leggero' o hypervisor che media e gestisce le richieste tra le diverse VM  <ul><li>Performance vicine a quelle del nudo hw
  39. 39. SO guest senza modifiche </li></ul> <ul><li>L'hypervisor deve supportare l'hw sottostante </li></ul>
  40. 40. Come? - Paravirtualization I SO guest 'cooperano' con l'hypervisor per la gestione dell'HW sottostante  <ul><li>Performance migliori rispetto a quelle della Full Virtualization </li></ul> <ul><li>Il SO guest deve essere modificato
  41. 41. Possibili problemi di isolamento (sicurezza) tra le VM </li></ul>
  42. 42. Come? - Virtualizzazione a livello di SO Il sistema operativo garantisce nativamente più istanze di un singolo tipo di SO guest  Performance native  Un singolo sistema operativo supportato
  43. 43. Con che prodotti? Project Type License Bochs Emulazione HW LGPL QEMU Emulazione HW LGPL/GPL VMware Full virtualization Proprietary z/VM Full virtualization Proprietary Xen Paravirtualization GPL UML Paravirtualization GPL Linux-VServer Virtualizzazione SO level GPL OpenVZ Virtualizzazione SO level GPL
  44. 44. QEMU – Emulazione HW - GPL <ul><li>Storicamente uno dei primi ad essere implementato tanto che molte utility vengono usate anche da altre soluzioni tipo Xen.
  45. 45. Due modi di Funzionamento: </li></ul><ul><ul><li>Full System Emulation: Emula un PC completo nelle architetture - x86, x86_64, ARM, SPARC, PowerPC, MIPS
  46. 46. User Mode Emulation: disponibile solo su host Linux, permette l'esecuzione di un binario compilato in una delle precendenti architetture su una diversa </li></ul></ul>
  47. 47. VMWare – Full Virtualization - Proprietary <ul><li>Uno dei primi e dei più attivi nella ricerca di soluzioni per la Virtualizzazione.
  48. 48. Dispone di diversi prodotti alcuni rilasciati gratuitamente: </li></ul><ul><ul><li>ESXi (gratuito) – ESX (pagamento): hypervisor leggeri occupano in RAM circa 83 MB
  49. 49. VMWare Server (gratuito): layer di virtualizzazione che richiede un SO sottostante
  50. 50. VMWare Player (gratuito): ambiente di virtualizzazione desktop che consente la sola esecuzione delle VM
  51. 51. VMWare desktop (pagamento): ambiente di virtualizzazione desktop che consente la completa gestione delle VM
  52. 52. Altri tool per il management e la conversione di server reali in virtuali che generalmente sono gratuiti ma a pagamento nelle versioni più avanzate </li></ul></ul>
  53. 53. XEN – Para Virtualization - GPL <ul><li>Le virtual machine sono chiamate Domain
  54. 54. Il Domain0 è la VM di amministrazione creata direttamente dall'hypervisor in fase di boot e può essere ospitata su linux kernel 2.6 o su netBSD 3.0
  55. 55. I DomainU(nprevileged) sono le altre VM: </li><ul><li>Linux, BSD e altri SO opensource su HW qualsiasi
  56. 56. Windows e closed source in genere su HW predisposto (Intel – Vanderpool / AMD Pacifica) – ma siamo un po' ancora a livello di aneddoti </li></ul></ul>
  57. 57. Demo <ul><li>Software di Virtualizzazione VMWare Player su host Windows XP – Prove di avvio, backup e duplicazione
  58. 58. Diversi SO guest: </li><ul><li>Minidistro Linux ottimizzata per la gestione dei firewall - IPCOP con interfaccia web ( http://ipcop.org )
  59. 59. Minidistro FreeBSD ottimizzata per la gestione dei NAS – Freenas con interfaccia web ( http://www.freenas.org )
  60. 60. ReactOS – SO free con architettura Windows ( http://www.reactos.org )
  61. 61. Minidistro Linux per desktop ( http://damnsmalllinux.org ) </li></ul></ul>
  62. 62. Riferimenti <ul><li>Virtual Linux - An overview of virtualization methods, architectures, and implementations
  63. 63. VMware virtualizza i cellulari - http://punto-informatico.it/2471913/Telefonia/News/vmware-virtualizza-cellulari.aspx
  64. 64. QEMU - http://bellard.org/qemu/
  65. 65. VMWare - Get an intro to virtualization - http://www.vmware.com/virtualization/
  66. 66. XEN - http://www.cl.cam.ac.uk/research/srg/netos/xen/
  67. 67. Wikipedia - http://it.wikipedia.org/wiki/Virtualizzazione_X86 </li></ul>

×