Virtualizzazione. Di tutti. Per tutti. Autore: Claudio Cardinali Email: claudio@csolution.it 1
Agenda L.T.S.P. Linux Terminal Server Project Virtualizzazione K.V.M. Kernel Based Virtual Machine Deploy KVM e LTSP S.P.I.C.E. Simple Protocol for Independent Computing Environments 2
LTSP Linux Terminal Server Project 3
LTSP Linux Terminal Server Project Sistema utilizzato in tutto il mondo sin dal 1999. Più di 12 progetti basati su LTSP finanziati solo in Umbria tra il 2006 e il 2011. Soluzione software Open Source utilizzabile con diversi sistemi operativi (Debian, Ubuntu e derivate, CentOS, WiildOS, ecc.) 4
LTSP Linux Terminal Server Project Reti a basso costo nella scuola e in azienda... Permette il recupero di hardware obsoleto e non più utilizzato. Semplifica la gestione di un infrastruttura di rete centralizzata in determinati ambienti. 5
LTSP Linux Terminal Server Project 6
LTSP il Server e i Client Sistema Operativo. Software Applicativo. Struttura di autenticazione centralizzata. SERVER LTSP Interfaccia utente e supporto alle periferiche locali. THIN CLIENT LTSP 7
LTSP: Thin client old pc 8
LTSP: Thin client mini pc Thin Client Diskless 9
LTSP: Fat client 10
LTSP Il boot dei client in rete 1)Boot di rete. 2) Ricezione indirizzo di rete via DHCP 3) Caricamento sistema operativo da rete 11
LTSP: Ambienti grafici alternativi 12
LTSP: Ambienti grafici alternativi 13
LTSP: Ambienti grafici alternativi 14
LTSP: Ambienti grafici alternativi 15
LTSP: Ambienti grafici alternativi 16
LTSP: Ambienti grafici alternativi 17
LTSP - Deploy pc client obsoleti, senza sistema operativo e senza disco rigido Connessione internet Lubuntu pc client obsoleti, senza sistema operativo e senza disco rigido Firewall con: - Sistema selettivo di FILTRAGGIO CONTENUTI WEB. - Suddivisione subnet per scopi diversi (Amministrazione, Aule, Accesso Wi-fi Ospiti, ecc. ) - Terminatore per VPN. (...) Server LTSP con sistema operativo Gnu/Linux pc client obsoleti, senza sistema operativo e senza disco rigido Lubuntu pc client obsoleti, senza sistema operativo e senza disco rigido 18
Virtualizzazione 19
Virtualizzazione Per virtualizzazione si intende la creazione di una versione virtuale di una risorsa normalmente fornita fisicamente. Qualunque risorsa hardware o software può essere virtualizzata: sistemi operativi, memoria, spazio disco, applicativi, reti. Tra gli impieghi della virtualizzazione il più utilizzato è probabilmente la virtualizzazione di sistemi operativi. Via software è necessario un sistema operativo in esecuzione (host) che esegua un software di virtualizzazione che crei ad alto livello le varie virtual machine (guest) che girano come se fossero dei normali programmi e che comunicano con l'hardware solo indirettamente, tramite il software di virtualizzazione che agisce a basso livello. 20
Virtualizzazione 21
Vantaggi della virtualizzazione Riduzione dei costi di implementazione e di gestione, consolidando l'hardware Riduzione dello spazio e complessità Riduzione consumo energetico Allocazione delle risorse dinamicamente (quando e dove necessario) Riduzione tempo di inattività Isolamento architettura (sicurezza) Gestione più semplice delle risorse Facilità testing e debugging di ambienti controllati disaster recovery 22
KVM: Kernel Based Virtual Machine 23
KVM Integrato nel kernel Linux (dalla versione 2.6.20, uscita nel 2007) Principale sistema di virtualizzazione di distribuzioni come Red Hat Enterprise Linux e Debian/Ubuntu (hanno abbandonato il supporto a Xen in favore di KVM) Integrazione profonda: sicuro, stabile e veloce. Le macchine virtuali sono nel sistema dei processi gestire/monitorare una macchina virtuale come si fa con qualunque altro processo del sistema operativo Linux Guest support: Windows*(98,2000,XP,7,2003,2008..), Linux, Android, FreeBSD, OpenBSD, Solaris/OpenSolaris, Plan9, FreeDOS, ecc... Gestione testuale/grafica 24
KVM: Virsh CLI 25
KVM: Virtual Machine Manager 26
KVM + LTSP + 27
KVM LTSP Deploy INKJET USB LASERJET USB SCANNER SWITCH INTERNET VIRTUAL MACHINE SERVER LTSP ubuntu LASERJET IP xubuntu windows xubuntu windows xubuntu xubuntu LASERJET USB INKJET USB VIRTUAL MACHINE SERVER LTSP GATEWAY SWITCH SERVER KVM ubuntu windows ubuntu VIRTUAL MACHINE SERVER LTSP lubuntu ubuntu xubuntu SCANNER SWITCH INKJET IP KIOSK INFO LASERJET IP kubuntu kubuntu kubuntu kubuntu lubuntu lubuntu 28
SPICE Simple Protocol for Independent Computing Environments 29
Cos'è SPICE? SPICE era originariamente sviluppato dalla Qumranet con codice proprietario. RedHat ha acquisito Qumranet nel 2008, e nel Dicembre 2009 ha rilasciato il protocollo SPICE Open Source. SPICE è un protocollo di rendering remoto adattivo utilizzato da KVM per la connessione degli utenti ai desktop virtuali. SPICE permette di utilizzare un desktop remoto alla stessa stregua di uno locale, gestendo il rendering della grafica, la riproduzione di contenuti multimediali e la condivisione delle periferiche. La tecnologia di Red Hat è in grado di bilanciare dinamicamente il carico di lavoro tra server e client e di ottimizzare il flusso dati. A differenza dei protocolli di rendering della prima generazione, come Remote Desktop Protocol (RDP) e Independent Computing Architecture (ICA), VNC, SPICE dispone di un'architettura a più livelli progettata per supportare l'odierna esperienza desktop multimediale. 30
Architettura SPICE Architettura a 3 livelli SPICE opera su un'architettura a 3 livelli, sfruttando un componente unico in ciascuno dei livelli: SPICE Driver: un componente software che risiede all'interno di ciascun desktop virtuale SPICE Device: un componente software che risiede all'interno di KVM Virtualization Hypervisor SPICE Client: un componente software che risiede sul dispositivo end-point, ovvero un thin client o un PC reimpiegato, utilizzato per l'accesso a ciascuno dei desktop virtuali 31
SPICE: Elaborazione grafica più efficiente Questi 3 componenti contribuiscono a determinare il luogo più efficiente in cui elaborare la grafica, al fine di ottimizzare l'esperienza per l'utente e ridurre al minimo il carico del sistema. Se il client è abbastanza potente, SPICE invia i comandi di grafica al client e li elabora a livello di client, riducendo in modo significativo il carico sul server. Se invece il client non è abbastanza potente, SPICE elabora la grafica a livello di host, dove il processo è molto più efficiente dal punto di vista della CPU. 32
SPICE: Video 33
SPICE client da terminale 34
SPICE spicy client ubuntu 35
SPICE plugin Chrome o Firefox 36
aspice Pro Secure SPICE Client Android 37
Demo Demo e Question Time 38
Buona Virtualizzazione a tutti. Grazie! Autore: Claudio Cardinali Email: claudio@csolution.it 39
Bibliografia http://www.ltsp.org/ https://help.ubuntu.com/community/ubuntultsp http://edubuntu.org/documentation/ltsp-live http://www.linux-kvm.org/ http://wiki.qemu.org/ http://www.spice-space.org/ http://fedoraproject.org/wiki/features/spice www.redhat.com/rhev3/ 40
Licenza Creative Commons (CC BY-NC-SA 3.0 IT) Questo lavoro viene distribuito sotto Licenza Creative Commons Attribuzione - Non commerciale - Condividi allo stesso modo 3.0 Italia (CC BY-NC-SA 3.0 IT) Tu sei libero: di riprodurre, distribuire, comunicare al pubblico, esporre in pubblico, rappresentare, eseguire e recitare quest'opera di modificare quest'opera Alle seguenti condizioni: Attribuzione Devi attribuire la paternità dell'opera nei modi indicati dall'autore o da chi ti ha dato l'opera in licenza e in modo tale da non suggerire che essi avallino te o il modo in cui tu usi l'opera. Non commerciale Non puoi usare quest'opera per fini commerciali. Condividi allo stesso modo Se alteri o trasformi quest'opera, o se la usi per crearne un'altra, puoi distribuire l'opera risultante solo con una licenza identica o equivalente a questa. Ogni volta che usi o distribuisci quest'opera, devi farlo secondo i termini di questa licenza, che va comunicata con chiarezza. In ogni caso, puoi concordare col titolare dei diritti utilizzi di quest'opera non consentiti da questa licenza. Questa licenza lascia impregiudicati i diritti morali. 41