Iper-V - Hyper-V
Sviluppatore/i | Microsoft |
---|---|
Versione iniziale | 2008 |
Sistema operativo |
Windows Server Windows 8 , Windows 8.1 , Windows 10 , Windows 11 (x64; Pro, Enterprise e Education) |
Predecessore | PC virtuale Windows |
Tipo | Hypervisor nativo |
Sito web | docs |
Microsoft Hyper-V , nome in codice Viridian e brevemente noto prima del suo rilascio come Windows Server Virtualization , è un hypervisor nativo ; può creare macchine virtuali su sistemi x86-64 che eseguono Windows . A partire da Windows 8 , Hyper-V ha sostituito Windows Virtual PC come componente di virtualizzazione hardware delle edizioni client di Windows NT . Un computer server che esegue Hyper-V può essere configurato per esporre singole macchine virtuali a una o più reti. Hyper-V è stato rilasciato per la prima volta con Windows Server 2008 ed è disponibile senza costi aggiuntivi da Windows Server 2012 e Windows 8. Un server Windows Hyper-V autonomo è gratuito, ma solo con l' interfaccia della riga di comando .
Storia
Una versione beta di Hyper-V è stata fornita con alcune edizioni x86-64 di Windows Server 2008. La versione definitiva è stata rilasciata il 26 giugno 2008 ed è stata fornita tramite Windows Update . Da allora Hyper-V è stato rilasciato con ogni versione di Windows Server.
Microsoft fornisce Hyper-V attraverso due canali:
- Parte di Windows: Hyper-V è un componente facoltativo di Windows Server 2008 e versioni successive. È disponibile anche nelle SKU x64 delle edizioni Pro ed Enterprise di Windows 8 , Windows 8.1 e Windows 10 .
- Hyper-V Server: è un'edizione freeware di Windows Server con funzionalità limitate e componente Hyper-V.
Server Hyper-V
Hyper-V Server 2008 è stato rilasciato il 1° ottobre 2008. È costituito da Windows Server 2008 Server Core e dal ruolo Hyper-V; altri ruoli di Windows Server 2008 sono disabilitati e sono disponibili servizi Windows limitati . Hyper-V Server 2008 è limitato a un'interfaccia della riga di comando utilizzata per configurare il sistema operativo host, l'hardware fisico e il software. Un'interfaccia CLI guidata da menu e alcuni file di script scaricabili gratuitamente semplificano la configurazione. Inoltre, Hyper-V Server supporta l'accesso remoto tramite Connessione desktop remoto . Tuttavia, l'amministrazione e la configurazione del sistema operativo host e delle macchine virtuali guest vengono generalmente eseguite sulla rete, utilizzando Microsoft Management Console su un altro computer Windows o System Center Virtual Machine Manager . Ciò consente una configurazione "punta e fai clic" molto più semplice e il monitoraggio del server Hyper-V.
Hyper-V Server 2008 R2 (un'edizione di Windows Server 2008 R2 ) è stato reso disponibile nel settembre 2009 e include Windows PowerShell v2 per un maggiore controllo della CLI. L'accesso remoto a Hyper-V Server richiede la configurazione CLI delle interfacce di rete e Windows Firewall. Anche l'utilizzo di un PC Windows Vista per amministrare Hyper-V Server 2008 R2 non è completamente supportato.
Architettura
Hyper-V implementa l'isolamento delle macchine virtuali in termini di partizione . Una partizione è un'unità logica di isolamento, supportata dall'hypervisor, in cui viene eseguito ogni sistema operativo guest . Deve essere presente almeno una partizione padre in un'istanza hypervisor, che esegue una versione supportata di Windows Server (2008 e versioni successive). Il software di virtualizzazione viene eseguito nella partizione padre e ha accesso diretto ai dispositivi hardware. La partizione padre crea partizioni figlio che ospitano i sistemi operativi guest. Una partizione padre crea partizioni figlio utilizzando l' API hypercall , che è l' interfaccia di programmazione dell'applicazione esposta da Hyper-V.
Una partizione figlio non ha accesso al processore fisico , né gestisce i suoi interrupt reali . Ha invece una vista virtuale del processore e viene eseguito in Guest Virtual Address , che, a seconda della configurazione dell'hypervisor, potrebbe non essere necessariamente l'intero spazio di indirizzi virtuali . A seconda della configurazione della macchina virtuale, Hyper-V può esporre solo un sottoinsieme dei processori a ciascuna partizione. L'hypervisor gestisce gli interrupt al processore e li reindirizza alla rispettiva partizione utilizzando un logico Synthetic Interrupt Controller (SynIC). Hyper-V può accelerare l'hardware della traduzione degli indirizzi degli spazi di indirizzi virtuali guest utilizzando la traduzione degli indirizzi di secondo livello fornita dalla CPU, denominata EPT su Intel e RVI (precedentemente NPT) su AMD.
Le partizioni figlio non hanno accesso diretto alle risorse hardware, ma hanno invece una vista virtuale delle risorse, in termini di dispositivi virtuali . Qualsiasi richiesta ai dispositivi virtuali viene reindirizzata tramite il VMBus ai dispositivi nella partizione padre, che gestiranno le richieste. Il VMBus è un canale logico che consente la comunicazione tra le partizioni. La risposta viene anche reindirizzata tramite il VMBus. Se i dispositivi nella partizione padre sono anche dispositivi virtuali, verrà reindirizzato ulteriormente fino a raggiungere la partizione padre, dove otterrà l'accesso ai dispositivi fisici. Le partizioni padre eseguono un provider di servizi di virtualizzazione (VSP), che si connette al VMBus e gestisce le richieste di accesso al dispositivo dalle partizioni figlio. I dispositivi virtuali della partizione figlio eseguono internamente un Virtualization Service Client (VSC), che reindirizza la richiesta ai VSP nella partizione padre tramite VMBus. L'intero processo è trasparente per il sistema operativo guest.
I dispositivi virtuali possono anche sfruttare una funzionalità di virtualizzazione di Windows Server, denominata Enlightened I/O , per sottosistemi di archiviazione, rete e grafica, tra gli altri. Enlightened I/O è un'implementazione specializzata nella virtualizzazione di protocolli di comunicazione di alto livello, come SCSI , che consente di bypassare qualsiasi livello di emulazione del dispositivo e sfrutta direttamente VMBus. Ciò rende la comunicazione più efficiente, ma richiede che il sistema operativo guest supporti l'I/O illuminato.
Attualmente solo i seguenti sistemi operativi supportano l'Enlightened I/O, consentendo loro quindi di funzionare più velocemente come sistemi operativi guest in Hyper-V rispetto ad altri sistemi operativi che necessitano di utilizzare hardware emulato più lento:
- Windows Server 2008 e versioni successive
- Windows Vista e versioni successive
- Linux con un kernel 3.4 o successivo
- FreeBSD
Requisiti di sistema
Il ruolo Hyper-V è disponibile solo nelle varianti x86-64 delle edizioni Standard, Enterprise e Datacenter di Windows Server 2008 e versioni successive, nonché nelle edizioni Pro, Enterprise ed Education di Windows 8 e versioni successive. Su Windows Server, può essere installato indipendentemente dal fatto che l'installazione sia completa o principale. Inoltre, Hyper-V può essere reso disponibile come parte del sistema operativo Hyper-V Server, che è un freeware di edizione di Windows Server. In entrambi i casi, il computer host ha bisogno di quanto segue.
- CPU con le seguenti tecnologie:
- Almeno 2 GB di memoria, oltre a quanto assegnato a ciascuna macchina ospite
La quantità di memoria assegnata alle macchine virtuali dipende dal sistema operativo:
- Windows Server 2008 Standard supporta fino a 31 GB di memoria per l'esecuzione di macchine virtuali, più 1 GB per il sistema operativo host.
- Windows Server 2008 R2 Standard supporta fino a 32 GB, ma le edizioni Enterprise e Datacenter supportano fino a 2 TB. Hyper-V Server 2008 R2 supporta fino a 1 TB.
- Windows Server 2012 supporta fino a 4 TB.
Il numero di CPU assegnate a ciascuna macchina virtuale dipende anche dal sistema operativo:
- Windows Server 2008 e 2008 R2 supportano 1, 2 o 4 CPU per macchina virtuale; lo stesso vale per Hyper-V Server 2008 R2
- Windows Server 2012 supporta fino a 64 CPU per VM
Esiste anche un numero massimo di macchine virtuali attive contemporaneamente.
- Windows Server 2008 e 2008 R2 supportano 384 per server; Hyper-V Server 2008 supporta lo stesso
- Windows Server 2012 supporta 1024 per server; lo stesso vale per Hyper-V Server 2012
- Windows Server 2016 supporta 8000 per cluster e per nodo
Ospiti supportati
Windows Server 2008 R2
La tabella seguente elenca i sistemi operativi guest supportati in Windows Server 2008 R2 SP1.
Sistema operativo ospite | CPU virtuali | ||
---|---|---|---|
OS | Edizioni | Numero | Architettura |
Windows Server 2012 | Hyper-V, Standard, Datacenter | 1–4 | x86-64 |
Windows Home Server 2011 | Standard | 1–4 | x86-64 |
Windows Server 2008 R2 SP1 | Web, Standard, Enterprise, Datacenter | 1–4 | x86-64 |
Windows Server 2008 SP2 | Web, Standard, Enterprise, Datacenter | 1–4 | IA-32 , x86-64 |
Windows Server 2003 R2 SP2 | Web, Standard, Enterprise, Datacenter | 1 o 2 | IA-32 , x86-64 |
Windows 2000 SP4 | Professionale, Server, Server avanzato | 1 | IA-32 |
Windows 7 | Professionale, Enterprise, Ultimate | 1–4 | IA-32 , x86-64 |
Windows Vista | Business, Enterprise, Ultimate | 1–4 | IA-32 , x86-64 |
Windows XP SP3 | Professionale | 1 o 2 | IA-32 , x86-64 |
Windows XP SP2 | Professional, Professional x64 Edition | 1 | IA-32 , x86-64 |
SUSE Linux Enterprise Server 10 SP4 o 11 SP1–SP3 | N / A | 1–4 | IA-32 , x86-64 |
Red Hat Enterprise Linux 5.5–7.0 | Kernel compatibile con Red Hat | 1–4 | IA-32 , x86-64 |
CentOS 5.5-7.5 | N / A | 1–4 | IA-32 , x86-64 |
Ubuntu 12.04–20.04 | Kernel compatibile con Debian | 1–4 | IA-32 , x86-64 |
Debian 7.0 | Kernel compatibile con Debian | 1–4 | IA-32 , x86-64 |
Oracle Linux 6.4 | Kernel compatibile con Red Hat | 1–4 | IA-32 , x86-64 |
Fedora 8 o 9 non sono supportati; tuttavia, sono stati segnalati per l'esecuzione.
Il supporto di terze parti per FreeBSD 8.2 e successivi è fornito da una partnership tra NetApp e Citrix . Ciò include modalità operative emulate e paravirtualizzate, nonché diversi servizi di integrazione HyperV.
I prodotti di virtualizzazione desktop ( VDI ) di società terze (come Quest Software vWorkspace, Citrix XenDesktop, Systancia AppliDis Fusion ed Ericom PowerTerm WebConnect) offrono la possibilità di ospitare e gestire centralmente le macchine virtuali desktop nel data center, offrendo agli utenti finali una Esperienza desktop del PC.
I sistemi operativi guest con I/O illuminato e un kernel compatibile con l' hypervisor come Windows Server 2008 e versioni server successive, client Windows Vista SP1 e versioni successive e offerte di Citrix XenServer e Novell saranno in grado di utilizzare meglio le risorse host poiché i driver VSC in questi guest comunicano con i VSP direttamente su VMBus. I sistemi operativi non "illuminati" funzioneranno con I/O emulato; tuttavia, i componenti di integrazione (che includono i driver VSC) sono disponibili per Windows Server 2003 SP2, Windows Vista SP1 e Linux per ottenere prestazioni migliori.
Supporto Linux
Il 20 luglio 2009, Microsoft ha presentato i driver Hyper-V per l'inclusione nel kernel Linux secondo i termini della GPL . Microsoft ha dovuto inviare il codice quando è stato scoperto che aveva incorporato un driver di rete Hyper-V con componenti con licenza GPL collegati staticamente a binari closed-source. I kernel che iniziano con 2.6.32 possono includere il supporto per la paravirtualizzazione Hyper-V integrato che migliora le prestazioni dei sistemi guest Linux virtuali in un ambiente host Windows. Hyper-V fornisce il supporto di virtualizzazione di base per i guest Linux immediatamente. Il supporto per la paravirtualizzazione richiede l'installazione dei componenti di integrazione Linux o dei driver Satori InputVSC. Le distribuzioni guest Linux abilitate per Xen possono anche essere paravirtualizzate in Hyper-V. A partire dal 2013 Microsoft ha ufficialmente supportato solo SUSE Linux Enterprise Server 10 SP1/SP2 (x86 e x64) in questo modo, sebbene qualsiasi Linux abilitato per Xen dovrebbe essere in grado di funzionare. Nel febbraio 2008, Red Hat e Microsoft hanno firmato un patto di virtualizzazione per l'interoperabilità degli hypervisor con i rispettivi sistemi operativi server, per consentire a Red Hat Enterprise Linux 5 di essere ufficialmente supportato su Hyper-V.
Esaminando il codice Hyper-V che Microsoft ha inviato al kernel Linux, è stato riscontrato che qualcuno all'interno di Microsoft ha memorizzato una costante in formato esadecimale come "0x__B16B00B5__". In hexspeak , questo significa "GRANDE TETTE ". Dopo che questo è stato scoperto, Microsoft si è scusata per l'incidente e ha inviato una patch per modificare il valore.
Windows Server 2012
Hyper-V in Windows Server 2012 e Windows Server 2012 R2 modifica l'elenco di supporto sopra come segue:
- Hyper-V in Windows Server 2012 aggiunge il supporto per Windows 8.1 (fino a 32 CPU) e Windows Server 2012 R2 (64 CPU); Hyper-V in Windows Server 2012 R2 aggiunge il supporto per Windows 10 (32 CPU) e Windows Server 2016 (64 CPU).
- La versione minima supportata di CentOS è 6.0.
- La versione minima supportata di Red Hat Enterprise Linux è 5.7.
- Il numero massimo di CPU supportate per i sistemi operativi Windows Server e Linux è aumentato da quattro a 64.
Windows Server 2012 R2
Hyper-V su Windows Server 2012 R2 ha aggiunto la macchina virtuale di seconda generazione.
Retrocompatibilità
Hyper-V, come Microsoft Virtual Server e Windows Virtual PC , salva ogni sistema operativo guest in un singolo file del disco rigido virtuale. Supporta il vecchio formato .vhd , così come il più recente .vhdx . I file .vhd precedenti di Virtual Server 2005, Virtual PC 2004 e Virtual PC 2007 possono essere copiati e utilizzati in Hyper-V, ma qualsiasi vecchio software di integrazione di macchine virtuali (equivalenti a Hyper-V Integration Services) deve essere rimosso dalla macchina virtuale. Dopo che il sistema operativo guest migrato è stato configurato e avviato utilizzando Hyper-V, il sistema operativo guest rileverà le modifiche all'hardware (virtuale). L'installazione di "Hyper-V Integration Services" installa cinque servizi per migliorare le prestazioni, aggiungendo allo stesso tempo i nuovi driver della scheda di rete e video guest.
Limitazioni
Audio
Hyper-V non virtualizza l'hardware audio. Prima di Windows 8.1 e Windows Server 2012 R2 , era possibile aggirare questo problema connettendosi alla macchina virtuale con Connessione desktop remoto tramite una connessione di rete e utilizzando la sua funzionalità di reindirizzamento audio. Windows 8.1 e Windows Server 2012 R2 aggiungono la modalità sessione avanzata che fornisce il reindirizzamento senza una connessione di rete.
Pass-through delle unità ottiche
Le unità ottiche virtualizzate nella macchina virtuale guest sono di sola lettura. Ufficialmente Hyper-V non supporta le unità ottiche del sistema operativo host/root per il pass-through nelle VM guest. Di conseguenza, la masterizzazione su dischi, CD audio, riproduzione di CD video/DVD-Video non è supportata; tuttavia, esiste una soluzione alternativa utilizzando il protocollo iSCSI . L'impostazione di un target iSCSI sulla macchina host con l'unità ottica può quindi essere discussa dall'iniziatore iSCSI standard di Microsoft. Microsoft produce il proprio software iSCSI Target o possono essere utilizzati prodotti di terze parti alternativi.
Gestione VT-x/AMD-V
Hyper-V utilizza VT-x su Intel o AMD-V su virtualizzazione AMD x86 . Poiché Hyper-V è un hypervisor nativo , finché è installato, il software di terze parti non può utilizzare VT-x o AMD-V. Ad esempio, l'emulatore di dispositivi Android Intel HAXM (utilizzato da Android Studio o Microsoft Visual Studio ) non può essere eseguito mentre è installato Hyper-V.
Sistemi operativi client
Gli SKU x64 di Windows 8, 8.1, 10 Pro, Enterprise, Education sono dotati di una versione speciale Hyper-V chiamata Client Hyper-V.
Funzionalità aggiunte per versione
Windows Server 2012
Windows Server 2012 ha introdotto molte nuove funzionalità in Hyper-V.
- Switch virtuale estensibile Hyper-V
- Virtualizzazione della rete
- Multi-locazione
- Pool di risorse di archiviazione
- Formato disco .vhdx che supporta dischi rigidi virtuali fino a 64 TB con resilienza in caso di interruzione di corrente
- Canale in fibra virtuale
- Trasferimento dati scaricato
- Replica Hyper-V
- Connettività cross-premise
- Backup su cloud
Windows Server 2012 R2
Con Windows Server 2012 R2 Microsoft ha introdotto un'altra serie di nuove funzionalità.
- Disco rigido virtuale condiviso
- Conservazione della qualità del servizio
- Macchina virtuale di seconda generazione
- Modalità sessione avanzata
- Attivazione automatica della macchina virtuale
Windows Server 2016
Hyper-V in Windows Server 2016 e Windows 10 1607 aggiunge
- Virtualizzazione nidificata (solo processori Intel, sia l'istanza host che quella guest di Hyper-V devono essere Windows Server 2016 o Windows 10 o versioni successive)
- Discrete Device Assignment (DDA), che consente il passaggio diretto di dispositivi PCI Express compatibili alle macchine virtuali guest
- Contenitori Windows (per ottenere l'isolamento a livello di app anziché a livello di sistema operativo)
- VM schermate che utilizzano server di attestazione remoti
- Monitoraggio dell'utilizzo delle risorse della CPU dell'host da parte dei guest e protezione (limitazione dell'utilizzo della CPU da parte dei guest)
Windows Server 2019
Hyper-V in Windows Server 2019 e Windows 10 1809 aggiunge
- Miglioramenti delle macchine virtuali schermate inclusa la compatibilità con Linux
- Reti crittografate con macchine virtuali
- Unione del segmento di ricezione vSwitch
- Macchina virtuale dinamica multi-coda (d. VMMQ)
- Supporto per la memoria persistente
- Miglioramenti significativi delle funzionalità e delle prestazioni per Storage Spaces Direct e Failover Clustering
Guarda anche
- Confronto del software di virtualizzazione della piattaforma
- Funzionalità nuove di Windows 8
- Immagine del disco virtuale
- Promessa delle specifiche aperte di Microsoft
- Microsoft Remote Web Workplace
- Server privato virtuale
- Sottosistema Windows per Linux
Riferimenti
Ulteriori letture
- "Specifiche funzionali di livello superiore dell'Hypervisor" . Microsoft . 2016 . Estratto 04-04-2017 .
- Koens, Dimitri (2013). "Riferimento rapido Hyper-V" (PDF) . Dimensione IT TV . Estratto 04-04-2017 .
- Howard, John (2006). "Slide di presentazione WinHEC 2006" . Blog sulla virtualizzazione . Microsoft . Archiviato dall'originale il 20-12-2015 . Estratto 04-04-2017 .
- Radzikowski, Przemek (2009). "Benchmarking di Hyper-V su Windows Server 2008 R2 x64" . Estratto 04-04-2017 .
- Posey, Brien; Zerger, Peter; Henley, Chris (2013). La guida pratica: Comprensione di Hyper-V in Windows Server 2012 . Software Veeam . Archiviato dall'originale il 13/04/2014 . Estratto 04-04-2017 .
link esterno
- Sito ufficiale
- Guida alle considerazioni sulla progettazione dell'infrastruttura di virtualizzazione
- Hyper-V su Microsoft TechNet
- Benchmarking di Hyper-V su Windows Server 2008 R2 x64
- Architettura Hyper-V
- Architettura Hyper-V (tedesco)
- Requisiti CPU Hyper-V (tedesco)
- Dettagli sul volume condiviso cluster (tedesco)