Please enable JavaScript.
Coggle requires JavaScript to display documents.
Virtualizzazione e Container (Virtualizzazione (Caratteristiche (Uso…
Virtualizzazione e Container
Virtualizzazione
Caratteristiche
Uso efficente delle risorse
Non devo convertire istruzioni in un linguaggio macchina diverso
Creo un livello software che virtualizza un hardware uguale alla macchina che sto utilizzando
Suddivisione
Livello di Vitualizzazione
Hardware
Differenza Set Istruzioni
Para Virtualization
L'OS ha consapevolezza di essere ospitato da una macchna virtuale
Os modificato ad Hoc per essere su una macchina virtuale specifica
L'hypervisor implementa delle chiamate dette Hypercall richiamabili dalla macchina virtuale in sostituzione alle chiamate di sistema classiche
Full Virtualization
Il sistema operativo che installiamo non ha concezione di essere installato all'interno di una macchina virtuale
Utilizza le stesse system call che utilizza un normale OS
Le sistem call a basso livello, che potenzialmente potrebbero pericolose per l'esecuzione delle altre macchine
Ad esempio l'os richiede di scrivere su uno spazio di memoria attualmente utilizzata da un altra macchina virtuale in esecuzione
Queste System call vanno quindi gestite dall'Hypervisor
Gestione System Call a basso livello
Binary Translation
3 more items...
Hardware Assisted
3 more items...
Utilizzo un sistema di TRAP
Livello dell'Hypervisor
Bare-Metal ( tipo 1)
L'Hypervirsor è implementato prima di qualsiasi sistema operativo subito dopo il livello macchina
é lui che si occupa dello switch tra le varie macchine virtuali che sono ospitate sul Hardware
L'Hypervisor funziona da sistema operativo vero e proprio
Hosted (tipo 2)
L'Hypervisor è ospitato da un sistema operativo in esecuzione sull'hardware
ESEMPIO virtualbox installata su un OS
Contro
Per fare girare un applicazione virtualizzata devo fare girare l'intero sistema operativo
In questo caso è piu comodo ed efficente usare un container
OS
Container
Implementazione
Windows
Hyper-V
Su win 10 NON il concetto di Hyper-V non rappresenta un Container
Su win server l'Hyper-V è effettivamente un container
Win server è un OS pesante, esistono versione più leggere adatte alla virtualizzazione come Windows Nano Server
Accroocchio Docker
Alcune aziende cercano di fare funzionare Docker su Windows
Overhead dovuto al'esecuzione di un os linux su windows
Linux
Docker
Pacchettizzo l'aplicazione, la rendo pronta all'esecuzione
In caso di failure posso ripristinare l'immagine
Facile replicazione
anche su macchine e vm diverse
No layer virtuali aggiuntivi, ho un unico kernel in esecuzione
Si sposa perfettamente con il concetto di microservizio
Virtualizzazione del solo spazio utente
Il container ha la concezione del OS che lo ospita
Emulazione
Caratteristiche
Conversione delle istruzioni macchina
Uso poco efficente delle risorse
A volte indispensabile
retrocompatibilità
Creo uno stato software che emula hardware diverso dalla macchina che sto utilizzando