Virtualizzazione. Di tutti. Per tutti: Server virtuali, Desktop virtuali, Applicazioni virtuali...
Relatore: Claudio Cardinali
Durata: 45 min.
Abstract: Sistemi di Virtualizzazione tramite K.V.M. "Kernel-based Virtual Machine", integrazione di L.T.S.P. "Linux Terminal Server Project", vedremo come creare un ambiente virtuale distribuito, utilizzando dei Thin Client/Fat Client Desktop virtuali modulari multipiattaforma, con accesso alle risorse anche da dispositivi Mobile (Android), e Sistemi VDI tramite SPICE Simple Protocol for Independent Computing Environments.
Migrazione da sistemi proprietari a sistemi open source
Claudio Cardinali - Virtualizzazione. Di tutti. Per tutti. - LINUX LTSP KVM SPICE
1. Virtualizzazione.
Di tutti. Per tutti.
Autore: Claudio Cardinali
Email: claudio@csolution.it
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
1
2. 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
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
2
3. LTSP Linux Terminal Server Project
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
3
4. 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.)
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
4
5. 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.
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
5
6. LTSP Linux Terminal Server Project
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
6
7. 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
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
7
8. LTSP: Thin client “old pc”
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
8
9. LTSP: Thin client “mini pc”
Thin Client
Diskless
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
9
10. LTSP: Fat client
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
10
11. LTSP – Il boot dei client in rete
1)Boot di rete.
2) Ricezione indirizzo
di rete via DHCP
3) Caricamento
sistema operativo
da rete
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
11
12. LTSP: Ambienti grafici alternativi
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
12
13. LTSP: Ambienti grafici alternativi
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
13
14. LTSP: Ambienti grafici alternativi
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
14
15. LTSP: Ambienti grafici alternativi
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
15
16. LTSP: Ambienti grafici alternativi
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
16
17. LTSP: Ambienti grafici alternativi
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
17
18. 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
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
18
19. Virtualizzazione
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
19
20. 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.
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
20
21. Virtualizzazione
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
21
22. 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
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
22
23. KVM: Kernel Based Virtual Machine
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
23
24. 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
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
24
25. KVM: Virsh CLI
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
25
26. KVM: Virtual Machine Manager
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
26
27. KVM + LTSP
+
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
27
28. 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
Perugia, 26 ott 2013
kubuntu
kubuntu
kubuntu
kubuntu
lubuntu
lubuntu
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
28
29. SPICE
Simple Protocol for Independent Computing Environments
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
29
30. 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.
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
30
31. 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
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
31
32. 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.
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
32
33. SPICE: Video
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
33
34. SPICE client da terminale
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
34
35. SPICE spicy client ubuntu
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
35
36. SPICE plugin Chrome o Firefox
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
36
37. aSPICE Pro Secure SPICE Client Android
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
37
38. Demo
Demo
e
Question Time
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
38
39. Buona Virtualizzazione a tutti.
Grazie!
Autore: Claudio Cardinali
Email: claudio@csolution.it
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
39
41. 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.
Perugia, 26 ott 2013
GNU/Linux User Group Perugia – www.perugiagnulug.org
Claudio Cardinali, Virtualizzazione. Di tutti. Per tutti.
41