Hyper-V

Werbung
Server-Virtualisierung als Basis
eines modernen Rechenzentrums
Michael Korp
Infrastruktur Architekt
Microsoft Deutschland GmbH
Windows Virtualisierung
Den meisten bekannt: VMware – ESX, vCenter
Viele Funktionen als einzelne Module zu lizenzieren
Open Source = frei = Linux?
KVM
Xen (Citrix, freie und kommerzielle Lösung verfügbar)
Windows: Hyper-V
Kostenfreie Version verfügbar: Microsoft Hyper-V Server 2008 R2
Alle Funktionen für die Virtualisierung enthalten
Verwaltung über MMC oder im größeren Unternehmen mit den
Standard System Center Werkzeugen (kostenpflichtige Lizenzen)
Hyper-V Server 2008 R2
Unterstützt „nur“ die Virtualisierung mit Hyper-V

Reduzierter Server Core mit Hyper-V

Micro-Kernel
Alle relevanten Features enthalten, inkl. Clustering,
also auch Live Migration und Failover
Alle aktuellen Fähigkeiten wie SLAT, Core Parking, …
Vollständige Integration!

Active Directory

System Center

Alle Hyper-V Tools und Skripte
Gleiche Updates und Service Packs wie Windows Server 2008 R2
Hyper-V Server:
Lokale Administration – HVconfig
Kommandozeile zur Konfiguration des Hyper-V Servers
Automatischer Start nach dem Anmelden
Lokalisiert in 11 Sprachen
Hyper-V Server: Fähigkeiten und Grenzen
Hyper-V Server 2008 R2
CPU
8 CPUs
Arbeitsspeicher (Host)
1 TB
Arbeitsspeicher (VM)
64 GB pro VM
Live Migration
Ja
Failover Clustering
Ja
Verwaltung
Hyper-V Manager (MMC),
System Center Virtual Machine Manager
Windows Server 2008 R2:
Verbesserter Hypervisor
Live Migration – basiert auf dem Failover Cluster
Prozessor Unterstützung
Second Level Address Translation (SLAT)
Core Parking
Netzwerk Unterstützung
TCP/IP Chimney Offload
Jumbo Frames
VM Queues – erlaubt Direct Memory Access für VMs
Dynamische Festplattenkonfiguration
Hinzufügen und Entfernen von Disks (VHD und Pass-Through) während
das Gastsystem online ist
Bessere Skalierbarkeit
Stichwort: Live Migration
Virtual
Machine
User
Cluster
Node 1
Virtual
Machine
Configuration
Memory
MemoryContent
Sync
Data
VHD
Network
Storage
Cluster
Node 2
Live Migration
Steuerung
Failover Cluster Manager (MMC)
System Center Virtual Machine Manager
Voraussetzungen für die Implementierung
Einschränkungen für Gastsysteme:
Nein!
Änderungen an Gastsystemen:
Nein!
Änderungen an Storage Controller (SAN):
Nein!
Änderungen am Netzwerk:
Nein!
Quick Migration vs. Live Migration
Quick Migration
Live Migration
1. Save state
1. VM State/Memory Transfer
(Hyper-V seit Windows Server 2008)
(Hyper-V seit Windows Server 2008 R2)
a) Erstellen der VM auf Target Host
a) Erstellen der VM auf Target Host
b) Hibernate auf Shared Storage
b) Kopieren des Speicher-Inhalts auf
Ziel-VM
2. Verschieben der VM
a) Zugriff auf Shared Storage -> Target
Host
3. Resume
2. State Transfer
a) Pausieren der VM
b) Zugriff auf Cluster Shared Volume
3. Resume
a) Resume von Shared Storage
b) Ausführen der VM auf Target Host
Host 1
Host 2
Host 1
Host 2
Stichwort: Cluster Shared Volumes
Konsistenter Namensraum:
Alle Server sehen die gleichen LUNs (Disks)
Sehr einfache Installation
Keine Änderung an bestehenden LUNs: verwendet NTFS
Keine Probleme mit Laufwerksbuchstaben
Bestehende Tools und Prozesse funktionieren weiterhin
Ausfallsicherheit für Netzwerk und SAN-Anbindung!!!
Cluster Shared Volumes
Gleichzeitiger
Zugriff auf das
Dateisystem
SAN
VHD
VHD
VHD
Nur noch ein Volume
Cluster Fault Tolerances
I/O Connectivity Fault Tolerance
I/O Redirected
via network
VM running on
Node 2 is
unaffected
Volume
mounted on
Node 1
SAN
VHD
SAN
Connectivity
Failure
Cluster Fault Tolerances
Node Fault Tolerance
Node Failure
Volume
relocates to a
healthy node
VM running on
Node 2 is
unaffected
SAN
VHD
Brief queuing
of I/O while
volume
ownership is
changed
Cluster Fault Tolerances
Network Fault Tolerance
Routed to
Redundant
Network
VM running on
Node 2 is
unaffected
SAN
VHD
Network Path
Connectivity
Failure
Stichwort Netzwerk I/O: Datenpfad klassisch
Parent Partition
VM1
VM2
TCP/IP
TCP/IP
VM NIC
1
VM NIC
2
Virtual Machine Switch
Routing
VLAN Filtering
Data Copy
Port 2
Port 1
Miniport
Driver
VM BUS
NIC
Ethernet
Netzwerk I/O Datenpfad mit VMQ
Parent Partition
VM1
VM2
TCP/IP
TCP/IP
VM NIC
1
VM NIC
2
Virtual Machine Switch
Routing
VLAN filtering
Data Copy
Port 2
Port 1
Miniport
Driver
Q1 Q2
Default
Queue
VM BUS
Switch/Routing unit
NIC
Ethernet
Stichwort SLAT: VM Memory Management
Ein Hypervisor muss zwei Ebenen von Speicher-Virtualisierung
abwickeln -> Shadow Page Table
VM definiert GVA > GPA-Zuordnung
Guest Virtual
Address
Guest Virtual
Address
CPU unterstützt
nur eine Ebene der
SpeicheradressenVirtualisierung
Guest Physical
Address
Hypervisor
definiert GPA ->
SPA-Zuordnung
System Physical
Address
System Physical
Address
Second Level Address Translation (SLAT)
Verschiedene Bezeichnungen
Intel: Extended Page Tables (EPT)
AMD: Nested Page Tables (NPT) oder
Rapid Virtualization Indexing (RVI)
CPU unterstützt zwei Ebenen der Adress-Virtualisierung
Kein Hypervisor-Code benötigt
Signifikante Einsparungen
CPU Nutzung des Hypervisor : 2% (vorher: 10%)
Windows Server 2008 R2 SP1
Hyper-V Aktualisierungen durch das SP1
Dynamic Memory

Dynamische ArbeitsspeicherVerwaltung für Hyper-V

Aktive Abstimmung zwischen
Hyper-V Host und Gastsystem

Kein Verlust an Leistung
RemoteFX

Hardware-basierte Grafikbeschleunigung
für Hosted Desktops

Virtuelles Gerät: GPU

Unterstützt Rich Clients und Thin Clients

Applikationsunabhängig!!!
SP1 Update: Dynamic Memory
Dynamische ArbeitsspeicherVerwaltung für Hyper-V
Aktive Abstimmung zwischen
Hyper-V Host und Gastsystemen
Kein Performanz-Verlust
Dynamic Memory ≠ Memory Overcommit
Gibt es nicht als Technologie …
Bedeutung:
Mehr RAM zuweisen, als physikalisch vorhanden ist
Technologien zur Speicherverwaltung
Page Sharing
Second Level Paging
Dynamic Memory Balancing (Ballooning)
Page Sharing
So funktioniert’s:
Hash aller RAM-Seiten, speichern in Tabelle…
Identische Hashes identifizieren…
Bit-Vergleich …
Das bedeutet…
Page Sharing ist nicht dynamisch
Benötigt Stunden, bis erste Wirkung spürbar ist
Funktioniert am besten bei „Zero Pages‟ …
Page Sharing: Begrenzung der Effektivität
Ältere Betriebssysteme nutzen
RAM nicht aus
Aktuelle Windows-Versionen:
SuperFetch
ASLR
(zufällige Adressen für DLL + EXE)
Large Memory Pages !!!
Second Level Paging (1/3)
Problem #1: Swapping Guest Kernel Resources
“the guest operating system will never page out its kernel pages
since those pages are critical to ensure guest kernel performance.
The hypervisor, however, cannot identify those guest kernel pages,
so it may swap them out. In addition, the guest operating system
reclaims the clean buffer pages by dropping them. Again, since the
hypervisor cannot identify the clean guest buffer pages, it will
unnecessarily swap them out to the hypervisor swap device in order
to reclaim the mapped host physical memory.”
Understanding Memory Resource Management in VMware ESX Server p. 9-10;
http://www.vmware.com/resources/techresources/10062
Second Level Paging (2/3)
Problem #2: Double Paging
“Assuming the hypervisor swaps out a guest physical page, it is
possible that the guest operating system pages out the same
physical page, if the guest is also under memory pressure. This
causes the page to be swapped in from the hypervisor swap device
and immediately to be paged out to the virtual machine‟s virtual
swap device. Note that it is impossible to find an algorithm to
handle all these pathological cases properly. ESX attempts to
mitigate the impact of interacting with guest operating system
memory management by randomly selecting the swapped guest
physical pages.“
Understanding Memory Resource Management in VMware ESX Server p. 9-10;
http://www.vmware.com/resources/techresources/10062
Second Level Paging (3/3)
Problem #3: Ram vs. Festplatte
RAM-Zugriff:

DDR3-1600 = 5 ns;

DDR3-1066 = 7.5 ns;
DDR3-1333 = 6 ns
DDR3-800 = 10 ns
Festplatte: Seek Zeit ~8 ms
Und nochmal im direkten Vergleich …

DDR3-1600 Ram ist 1,600,000 mal schneller als die Festplatte

DDR3-1333 Ram ist 1,333,333 mal schneller als die Festplatte

DDR3-1066 Ram ist 1,066,666 mal schneller als die Festplatte

DDR3-800 Ram ist 800,000 mal schneller als die Festplatte
Fazit:

Je mehr es benutzt wird, desto langsamer wird es
Benchmark Fakten
Understanding Memory Resource Management in VMware ESX Server p. 16;
http://www.vmware.com/resources/techresources/10062
Dynamic Memory: Konfiguration
Startup: Boot RAM
BIOS weiß nichts von
Dynamic Memory
Gastsystem weiß vielleicht
nichts von Dynamic
Memory
Maximum
Obere Grenze
Nur auf Anfrage des
Gastsystems
Dynamic Memory: In Betrieb
Dynamic Memory: Beteiligte Komponenten
Provided by:
Guest Applications
VMWP
VMMS
Memory
Balancer
Memory
Balancer
Interface
OS
Microsoft Hyper-V
Dynamic Memory Components
User
Mode
DM
VDEV/VSP
GMO
Memory
Manager
Windows
Kernel
Windows
Kernel
DM VSC
VID
VMBus
VMBus
Hypervisor
Kernel
Mode
SP1 Update: RemoteFX
Hardwarebasierte
Grafikbeschleunigung für
Hosted Desktops
Virtuelles Gerät: GPU
Unterstützt Rich Clients und
Thin Clients
Applikationsunabhängig!
WAN-Beschleunigung z.B. mit
Citrix HDX
RemoteFX: Komponenten
Endgerät – Benutzer startet grafikintensive Applikation
RemoteFX Hardware oder Software Decoder
auf dem Endgerät
Server – Hardwarebeschleunigung (GPU)
GPU im Server, Zugriff für alle VMs
RemoteFX Hardware Encoder optional
Primitive Remoting (optional)
Hardware
Encoder
(optional)
Client
mit Decoder (SW/HW)
GPUs
Server
RemoteFX in Remote
Session Solutions
RemoteFX in VDI
Solutions
-Accelerated
-Enhanced
-Accelerated
-Enhanced
RemoteFX Software Encoding
RemoteFX Encoder and Decoder in ASIC
Graphics Processor
Windows
Client
Traditional
Thin Client
Ultra-Light
Thin Clients
With
RemoteFX
ASIC
LCD Panel
With
RemoteFX
ASIC
-Enabled Clients
RemoteFX USB vs. High-Level Redirection
RemoteFX USB
RDP High-Level
Treiber auf Endgerät?
Nein
Ja
Treiber auf Server?
Ja
Nein
Gleiche Methode der USBUmleitung für alle Geräte?
Ja
Nein
USB-Geräte von mehreren
Sitzungen verwendbar?
Nein
Ja
Netzwerk Anforderungen
LAN
LAN/WAN
Voraussetzungen auf dem Client
RDP 7.1
USB Redirection aktivieren
per Gruppenrichtlinie
Computer Configuration\Administrative Templates\Windows Components\Remote Desktop
Services\Remote Desktop Connection Client\RemoteFX USB Device Redirection
Voraussetzungen auf dem Hosted Desktop
RemoteFX aktiviert auf
Host und VM
Konfiguration per
Gruppenrichtlinie
Computer Configuration\Administrative Templates\Windows Components\Remote Desktop
Services\Remote Desktop Session Host\Device and Resource Redirection
Funktionsweise ohne RemoteFX
Anwendung
4
Win32 I/O API
User
Kernel
Windows Kernel
(I/O Mgr, PnP)
Provided by:
Microsoft
IHV/ISV
3
2
USB Device
Driver
USB HUB
1
Funktionsweise mit RemoteFX (1)
RDP Client
VM
RDP Server
6
RDP
User
3
Kernel
4
USB
DeviceUSB Driver
Remote FX
Generic
Driver
Windows Kernel
(I/O Mgr, PnP)
2
RemoteFX USB Hub Filter
Bereitgestellt von :
Microsoft
IHV/ISV
1
USB HUB
5
Funktionsweise mit RemoteFX (2)
Anwendung
VM
RDP Server
10
Win32 I/O
API
User
Kernel
7
USB Device
Driver
8
Bereitgestellt von:
Microsoft
IHV/ISV
RemoteFX Device Proxy
RemoteFX USB HUB
9
Weitere Informationen
TechNet Webcasts
http://www.microsoft.com/germany/technet/webcasts
TechNet Edge
http://technet.microsoft.com/edge
TechNet Blogs
http://blogs.technet.com/ralfschnell
http://blogs.technet.com/germanvirtualizationblog
http://blogs.technet.com/virtualization
www.microsoft.com Informationen
http://www.microsoft.com/de/de/dynamicit/thema/virtualisierung.aspx
http://www.microsoft.com/germany/windowsserver2008/produktinformationen/r2virtualisierung.mspx
http://www.microsoft.com/virtualization
Vielen Dank
für Eure Aufmerksamkeit
Michael Korp
Herunterladen