Perché oggi c'è così tanta pubblicità sulla virtualizzazione?


34

Macchina virtuale, server virtuale, disco virtuale, ecc ...

Non ha molto senso per me il motivo per cui qualcuno vorrebbe rendere le proprie cose "virtuali" quando fondamentalmente ciò aggiunge un altro livello a tutto (che nella maggior parte dei casi lo farà funzionare più lentamente).

Qual è lo scopo della virtualizzazione nei molteplici casi precedenti?


15
Perché con un semplice clic del mouse è possibile spostare l'intero server virtuale da un computer fisico a un altro senza tempi di inattività, ad esempio.
AndrejaKo

8
"che nella maggior parte dei casi lo farà funzionare più lentamente" - Non sono d'accordo con questa affermazione.
EJB

4
-1 MOTIVO: "Questa dose di domanda non mostra alcuno sforzo di ricerca; non è chiara o non è utile (fare clic di nuovo per annullare)"
wizlog

3
"Questa dose di domanda non mostra alcuno sforzo di ricerca": LOL!
bwDraco,

Risposte:


67

In poche parole, la virtualizzazione non è la risposta a tutto, ma è grandiosa!

Dici di aggiungere un altro livello / lo fa funzionare lentamente, ma, nei sistemi moderni, questo non è poi così tanto. Esistono molte tecniche e funzionalità che rendono questo "livello" minimo (come Intel VT-x, AMD-V ). Se si utilizza la virtualizzazione basata su hypervisor , questo livello è ancora più piccolo.

Tuttavia, in base al modo in cui vengono utilizzati i dischi e la memoria, è possibile vedere aumenti di velocità in alcune situazioni.

Ora, un breve riepilogo dei prodotti di virtualizzazione in quanto vi è un po 'di confusione. Esistono 4 categorie, molte delle quali piuttosto diverse:

Hypervisor : il più piccolo overhead e generalmente solido, progettato per la virtualizzazione 24x7. (Ad esempio Microsoft Hyper V , VMware ESXi .

Virtualizzazione desktop (basata su software) - Generalmente progettata per programmatori, tester e professionisti IT - La velocità è ancora molto veloce / quasi nativa su macchine moderne, ma, in balia del sistema operativo guest, funziona sotto, quindi, mentre sono in esecuzione 3 VM 24x7 sulla mia macchina per varie attività, non è realmente "progettato" per questo - (ad esempio Microsoft Virtual PC , VMware Workstation , Sun (Oracle?) Virtual Box ). Questi emulano un intero computer virtuale.

Virtualizzazione di server (basata su software) : per un po 'questo era un mercato piuttosto vasto, ma era meno capace di Hypervisor ed è generalmente un mercato morto ora. Fondamentalmente è la virtualizzazione desktop che è stata semplicemente ottimizzata per un ambiente server - (ad esempio Microsoft Virtual Server , VMware Server .

Virtualizzazione del software - Come da commenti, ho lasciato fuori questo. Questo è un mercato specializzato che di solito è per la virtualizzazione di singoli programmi (ad es. Microsoft App-V , VMware ThinApp ). Questo crea un sottile "strato" tra il tuo computer e il software - fondamentalmente intercetta tutte le chiamate effettuate dal programma al fine di reindirizzare le scritture di file / registro e sostanzialmente sandbox dell'applicazione. Ciò ha alcuni vantaggi come la possibilità di eseguire più versioni di alcune applicazioni complicate e rende la distribuzione abbastanza semplice (tuttavia, può essere un'area difficile da comprendere / accedere).

Per quanto riguarda il motivo per cui sono così popolari ora - Tutto si riduce ai costi e ai tempi di amministrazione.

Ad esempio, nella mia azienda, ho bisogno di eseguire molti "sistemi" per vari sistemi che uso ... SQL Server, un sistema intranet, un sistema di fatturazione, un sistema di posta elettronica, VOIP, un sistema legacy per alcuni vecchi software che ho per pochi clienti e pochi altri - ha garantito che alcuni di questi possono essere eseguiti dalla stessa casella, ma, per un lungo elenco di motivi noiosi, voglio dividerli.

Questa scelta nel 2004/5 mi ha permesso di avere 6 server che erano su 24x7: funzionava benissimo, ma ogni macchina aveva 2 GB di memoria (quando era costoso!) E un processore dell'era P4 su cui potevo cucinare un uovo . I processori su tutti i sistemi difficilmente superavano il 5% ... forse un picco del 10-15%, ma la maggioranza restava inattiva sullo 0% per quasi la vita delle macchine.

Per quanto riguarda l'elettricità, non riesco proprio a ricordare, ma credo che questo mi costasse circa £ 100 per macchina all'anno.

Ora, se avessi invece virtualizzato questo ambiente (cosa che ho finito per fare), sono stato in grado di spostare tutti questi sistemi su una singola macchina e beneficiare di molte funzionalità come l'eccessiva sottoscrizione della memoria.

Ciò significa che le mie 6 macchine avevano ciascuna 2 GB di memoria, ma, in media, ne usavano tutte circa 1/4. Su questa nuova macchina, sono stato in grado di inserire solo 8 GB e, in un P2V senza soluzione di continuità ( Da fisico a virtuale - il processo di migrazione di una macchina) si muovono, ho tutte le mie macchine in esecuzione più veloci che mai ... in effetti, sono più veloci (in quanto ha una CPU più veloce).

Oltre a ciò, ci sono molti altri vantaggi come la migrazione ( V-Motion ) e l' alta disponibilità che rendono la virtualizzazione una scelta geniale.

Va anche detto che ci sono alcuni extra a cui molti utenti domestici / non aziendali non pensano: sono stato in grado di sbarazzarmi di alcune delle mie apparecchiature di rete, perdere un carico di cavi, non è necessario il mio costoso KVM ... Potrei far cadere 5 UPS e il mio PDU ... E soprattutto, si inserisce in un unico armadio / fuori strada invece del fastidioso enorme ronzio di un rack ventilato! ... e non un bisogno così importante di gestire l'aria condizionata così in alto in estate (che non ho tenuto conto dei costi dell'elettricità sopra).

Potrei essere stato piccolo, ma, penso che le aziende più grandi lo facciano su una scala più ampia - una volta ho aiutato una società di grandi dimensioni a migrare verso un ambiente virtualizzato - Non avevano il budget, quindi, ho negoziato che i miei termini del contratto erano che Avrei ottenuto un risparmio sui costi per 1 anno e il 20% per i successivi 3 ... Mi ha pagato molto bene e, nel primo anno, hanno goduto dei benefici amministrativi e enormi risparmi in futuro.

Spero che questo risponda alla tua domanda! Se hai domande di follow-up, sarò felice di risponderti.


2
Ottima risposta Aggiungerei anche una quarta categoria: VM software (principalmente per la programmazione) come Java VM, Perl, V8, CLI ecc. Che migliorano la portabilità.
schnaader,

4
Forse dovresti scrivere un post sul blog @Wil ;-)
Ivo Flipse,

4
Non riesco a vedere come le macchine virtuali contribuiscono all'alta disponibilità. Proprio l'altro giorno abbiamo avuto un deposito hardware sul nostro hardware del server VM. Immediatamente otto server furono eliminati dalla rete. VMotion non funziona a meno che l'host che si desidera spostare non sia in esecuzione, da quello che ho capito.
Andy,

2
@Andy - vmware.com/products/high-availability/overview.html - L'ho usato per i client, la VM viene eseguita in due posizioni e se una si abbassa, l'altra riprende all'istante senza nemmeno perdere un solo ping - davvero è una tecnologia davvero sorprendente senza dover configurare il clustering o altro nel software: questa è puramente una caratteristica dell'hypervisor.
William Hilsum,

1
@IvoFlipse Deal! .... Quando ho tempo! Dovrebbe iniziare un nuovo lavoro la prossima settimana (tutto per un mese) e le cose sono solo un po 'frenetiche in questo momento.
William Hilsum,

22

Da aggiungere alla risposta di William

Test del software su sistemi operativi Ho visto uno script di programmazione che, quando è stata creata una nuova versione del loro software, avvia automaticamente le macchine virtuali per vari sistemi operativi diversi e installa il nuovo software, quindi esegue alcuni test unitari per assicurarsi che tutto funzioni e quindi spegne la macchina virtuale. In questo caso particolare era solo una VM per ciascun sistema operativo, ma sarebbe possibile estenderlo a più scenari. Ad esempio un Vm per Windows 7 a 32 bit, un altro per Windows 7 a 64 bit. Un altro per W7 a 32 bit con Service Pack 1, W7 a 64 bit con SP1, vms con IE 9, vms con IE. Poiché solo una di queste vms viene eseguita alla volta, tutto ciò che utilizza è lo spazio su disco, quindi è possibile avere dozzine di vms su un server normale.

Risparmio di spazio su disco: se ho dieci computer virtuali che eseguono tutti lo stesso sistema operativo, è possibile che condividano lo stesso disco rigido virtuale di base e quindi scrivano le loro modifiche sul proprio disco rigido virtuale.

Allocazione / riassegnazione dello spazio. Con server fisici diversi, è abbastanza comune vedere una macchina che sta esaurendo lo spazio su disco e altri server che hanno carichi liberi. Sfortunatamente non è possibile utilizzare quel mezzo disco (o mezzo array) da un server e collegarlo a un altro server. Ma con i server virtuali, è possibile ridurre l'allocazione per un server e aumentarne l'altro (o semplicemente utilizzare dischi ad espansione dinamica).

Istantanee. Ciò consente di acquisire un'istantanea del server in un determinato momento, piuttosto come un backup completo quasi istantaneo. Ciò significa che puoi fare cose come, scattare un'istantanea, spegnere il server. Installa lo snapshot della scorsa settimana, controlla alcune cose, quindi spegni e monta lo snapshot più recente e continua, il tutto senza perdere ore a eseguire il backup e il ripristino del server. Con un po 'più di lavoro, puoi montare l'istantanea più vecchia come un'altra macchina virtuale e far girare le copie vecchie e nuove fianco a fianco)

Spostamento di server virtuali. Se sì, dite due server host e scoprite che host1 è sovraccarico, ma host2 no, è possibile spostare una delle quest da host1 a host2 che è quasi semplice come spegnere l'ospite spostando un (piuttosto grande) file. (Ci sono opzioni, di solito extra, che ti consentono di fare cose meravigliose come spostare gli ospiti tra host senza spegnere l'ospite, quindi gli utenti non se ne accorgono.)

E non sono solo i server / le aziende in cui la virutalizzazione può essere vantaggiosa.

Realizzo i miei account personali usando una vecchia versione di Quicken e una versione davvero vecchia di Excel e alcuni altri piccoli programmi. Questa configurazione non funziona correttamente in Vista / W7 e non funziona affatto nelle finestre a 64 bit. Lo eseguivo su un vecchio computer che ha iniziato a diventare inaffidabile. Questo è ora in un disco rigido virtuale di XP e ora quando ottengo una nuova macchina, installo solo Virtual PC e copio la mia macchina virtuale e avvio la mia macchina virtuale e tutto è configurato e funziona molto più velocemente. Non è necessario installare Quicken ed Excel e non è necessario trovare i floppy disk che Excel ha prodotto (ho detto che era una versione davvero vecchia).

L'aspetto negativo di farlo con Windows a casa è il costo aggiuntivo delle licenze. Come ha sottolineato AaronM, ci possono essere significativi risparmi sui costi per le imprese, ma non è così nel paese.


3
Le istantanee non sono così grandi come sembrano: subiscono un GRANDE successo nelle prestazioni. Ogni istantanea acquisita rallenta la macchina virtuale e se continui a scattare istantanee con più rami, la tua macchina virtuale si fermerà. Se ciò di cui hai bisogno è un backup, ti conviene copiare altrove i contenuti della VM piuttosto che scattare istantanee. Le istantanee sono ideali quando non ne prendi troppe e hai bisogno di un meccanismo di backup e ripristino "rapido", come test di installazioni software o comportamenti dei virus.
Ippopotamo,

@sgmoore è strano, perché la mia installazione di Windows Office a 32 bit ha funzionato perfettamente sulla mia nuova macchina a 64 bit. Queste macchine non dovrebbero essere tutte compatibili con le versioni precedenti?
Templare oscuro,

+1 per le istantanee. Se ciò che viene testato non funziona, ripristina, se funziona, elimina l'istantanea.
Bratch

@JacobHayden. La compatibilità non è perfetta, ed è a questo che serve la modalità XP. Ma in realtà non sono arrivato al punto di testare la mia copia di Excel con Windows a 64 bit (ma sto eseguendo la versione a 32 bit di Office 2007 con W7 a 64 bit al lavoro). I miei problemi erano più relativi agli altri programmi, poiché l'installazione di Quicken si è appena arrestata e in secondo luogo ho avuto problemi con ODBC. È stato più facile evitare i problemi e continuare a utilizzare XP in una macchina virtuale.
sgmoore,

Faccio tutto in Linux sul mio notebook (non è affatto un'impresa), ma ho ancora bisogno di cose occasionali in XP o 7. Ero solito dover affrontare il serio aggravamento del riavvio della mia macchina dual-boot due volte - una volta per arrivare a XP e una volta per tornare. Ora, posso avere XP in esecuzione in un VM, quindi sembra proprio un'altra applicazione sotto Linux. È un enorme miglioramento. E per di più, tutto ciò che devo fare è copiare un (enorme) file per eseguire il backup completo di Windows, in una modalità pronta per l'esecuzione con tutte le mie impostazioni intatte. È brillante!
Joe

5

Nelle grandi imprese consente inoltre un notevole risparmio sui costi in termini di licenze. Vale a dire una licenza CPU per Datacenter due Microsoft Server 2008 Datacenter ti consentirà di eseguire tutte le copie di Server 2008 R2 su una scatola virtuale che è in grado di gestire, senza il sovraccarico aggiuntivo delle licenze per sistema operativo. Allo stesso modo Microsoft SQL Server è concesso in licenza per CPU.

Un singolo server fisico con due CPU può eseguire diversi sistemi operativi guest e ciascuno di essi può eseguire un'istanza di SQL Server, tutti coperti dalla licenza di un singolo server fisico, che può consentire un notevole risparmio sui costi.

Consultare http://www.bythebell.com/2010/05/virtualization-licensing-savings-for-microsoft-windows-and-sql-server-products.html per alcuni esempi di questo.

Sono validi anche tutti i commenti di William sopra.


5

Un altro motivo chiave per cui penso che sia così popolare è che è considerato un modo " ecologico " di gestire il tuo data center, perché ha il potenziale per utilizzare meno elettricità. E Greenwashing è una cosa importante per i dipartimenti PR aziendali negli ultimi tempi.

In un tipico ambiente non virtualizzato hai creato ogni server con capacità in eccesso per gestire il carico di picco, il che significa che hai un sacco di potenza in più in lattazione su una presa di corrente nel caso in cui tutti decidano che devono dare il via a una richiesta costosa allo stesso tempo.

In un ambiente virtualizzato, più server logici possono condividere quella capacità in eccesso supponendo che i server logici collocati su una macchina fisica non vengano tutti massimizzati contemporaneamente.

Un secondo motivo per cui sta guadagnando forza è che sta cavalcando le code del cloud computing . I server virtualizzati sono una tecnologia di base che consente di offrire molte delle funzionalità del cloud computing, che non coincidono casualmente con quelle della virtualizzazione. Il cloud computing è una tendenza in questo momento e probabilmente ci sono server virtuali nel cloud che sono server virtualizzati.


Ciao JohnFX, potresti spiegare un po 'come il cloud computing e la virtualizzazione sono simili o correlati? Grazie :)
Templare oscuro,

1
Mi riferivo principalmente al cloud computing di tipo Hardware-As-A-Service, in cui esternalizzi le piattaforme server e accedi ad esse su Internet. Prima che le società di virtualizzazione come Rackspace avessero letteralmente computer fisici dedicati a ciascun cliente. Ora allocano risorse utilizzando la virtualizzazione e ciò consente loro di risparmiare costi considerevoli.
JohnFx,

0

Tutte le cose menzionate nelle risposte precedenti sono corrette, ma la vera ragione per cui ha guadagnato così tanta popolarità all'inizio nelle grandi aziende è che ha aggirato tutte le nostre restrizioni di esportazione di licenze software e crittografia quando ha spostato i lavori di call center nei paesi in via di sviluppo.


-3

Il commento di Mrm è giusto sui soldi. Oltre a consentire l'utilizzo del software molte, molte più volte di quanto il numero di licenze acquistate consentirebbe (e fornendo una nobile area grigia legale, dal momento che il software era tecnicamente installato su un solo sistema ed è molto difficile dimostrare forense che più sistemi usato, tanto meno spiega come sia illegale una volta che lo hai dimostrato) la virtualizzazione consente ai dipartimenti IT pigri di distribuire vecchie versioni di software. Ciò consente di risparmiare denaro e ore di lavoro per l'aggiornamento, la riqualificazione degli utenti e la gestione dei problemi causati dall'aggiornamento


4
Non direi che questo è molto accurato - Leggi la mia risposta - Non mi definirei pigro e eseguo applicazioni legacy. Il motivo è che posso eseguire Windows NT 4 per un sistema client perfettamente virtualizzato, dove, dove, dove posso trovare supporto per hardware vecchio come quello? E se qualcosa si rompe, sarò nei guai seri ... Funziona perfettamente in una VM. Inoltre, ogni VM ha un ID BIOS, NIC MAC e altro, quindi sembrano completamente una macchina separata ed è molto facile distinguere.
William Hilsum,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.