Iper-V - Hyper-V

Hyper-V
Sviluppatore/i Microsoft
Versione iniziale 2008 ; 13 anni fa ( 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 .com /en-us /virtualiization /hyper-v-on-windows /about /

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:

  1. 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 .
  2. 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

Un diagramma a blocchi di Hyper-V, che mostra uno stack di quattro livelli dall'hardware alla modalità utente
Architettura Hyper-V

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:

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.

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:

  1. 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).
  2. La versione minima supportata di CentOS è 6.0.
  3. La versione minima supportata di Red Hat Enterprise Linux è 5.7.
  4. 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

Riferimenti

Ulteriori letture

  1. "Specifiche funzionali di livello superiore dell'Hypervisor" . Microsoft . 2016 . Estratto 04-04-2017 .
  2. Koens, Dimitri (2013). "Riferimento rapido Hyper-V" (PDF) . Dimensione IT TV . Estratto 04-04-2017 .
  3. Howard, John (2006). "Slide di presentazione WinHEC 2006" . Blog sulla virtualizzazione . Microsoft . Archiviato dall'originale il 20-12-2015 . Estratto 04-04-2017 .
  4. Radzikowski, Przemek (2009). "Benchmarking di Hyper-V su Windows Server 2008 R2 x64" . Estratto 04-04-2017 .
  5. 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