Ratgeber

SQL Server in virtualisierten Umgebungen betreiben

27.09.2011 von Malte Jeschke
Wer bei seinem Kunde Microsofts SQL Server mit Hyper-V oder in virtualisierten Umgebungen betreiben will, sollte einige Punkte beachten. Im nachfolgenden Beitrag finden Sie einige wichtige Fakten zur Installation, Dynamic Memory, Lizenzen und Hardware-Konfiguration.

Wer bei seinem Kunde Microsofts SQL Server mit Hyper-V oder in virtualisierten Umgebungen betreiben will, sollte einige Punkte beachten. Im nachfolgenden Beitrag finden Sie einige wichtige Fakten zur Installation, Dynamic Memory, Lizenzen und Hardware-Konfiguration.

Die folgende Aufzählung erhebt selbstverständlich keinen Anspruch auf Vollständigkeit, kann jedoch für Administratoren vielleicht einige Punkte hilfreich beleuchten. Wer es mit dem Microsoft SQL Server 2008 R2 einmal ausprobieren will, findet bei Microsoft eine voll funktionsfähige 180-Tage-Testversion zum Download.

Zunächst einige Anmerkungen zur Installation, dies betrifft Neuinstallationen in die Konsolidierungsumgebung, nicht die Migration von vorhandenen Umgebungen:

Dynamic Memory

SQL Server unterstützt Hyper-V 2008 R2 SP1 Dynamic Memory. Lesen Sie dazu auch unseren Workshop - Dynamic Memory beim Hyper-V einrichten.

Folgende Punkte sollen Sie im Hinblick auf Dynamic Memory beachten:

Bildergalerie:
Dynamic Memory unter Hyper-V
Start: Um Dynamic Memory nutzen zu können, muss zuerst das Windows Server Service Pack 1 installiert werden.
Dynamic Memory unter Hyper-V
Fertig: Die Installation ist abgeschlossen.
Dynamic Memory unter Hyper-V
Details: Unter Serverrollen muss die Funktion Hyper-V explizit aktiviert werden.
Dynamic Memory unter Hyper-V
Fortsetzung: Mit Hilfe des Hyper-V-Managers muss ein neuer Virtueller Computer angelegt werden.
Dynamic Memory unter Hyper-V
Standard: Wie gewohnt wird die Größe des Arbeitsspeicher beim Eiinrichten einer virtuellen Maschine vergeben.
Dynamic Memory unter Hyper-V
Zuweisung: In diesem Fenster werden die einzelnen Parameter des dynamischen Speichers einer virtuellen Maschine vergeben.

Storage

Alle Best Practices für SQL Server Storage gelten auch für virtualisierte Umgebungen. Folgendes gilt es zu berücksichtigen:

CPU

Virtualisierung erhöht leicht den CPU-Bedarf von SQL Server. Da Hyper-V maximal vier virtuelle CPUs pro VM unterstützt bedeutet das, dass nur Lasten, die weniger als vier volle CPU-Cores benötigen virtualisiert werden sollten.

Wenn CPUs overcommitted werden (also der Summe aller VMs mehr virtuelle CPUs zugewiesen werden als der Server physische CPU-Kerne hat) so erhöht sich der CPU-Bedarf durch die Virtualisierung weiter. Daher sollte bei Lastsystemen Overcommitment vermieden werden. Das gilt insbesondere, wenn die verwendeten Prozessoren keine Second Level Address Translation (SLAT) unterstützen Netzwerk-intensive Lasten erhöhen ebenfalls den CPU-Bedarf

Hochverfügbarkeit

Sowohl Host-Clustering (mit Live Migration) als auch Guest Clustering (Windows/SQL Cluster in VMs) ist mit Hyper-V unterstützt (zu VMWare siehe unten). Beides kann für höchste Flexibilität und Ausfallsicherheit kombiniert werden.

Ebenso wird Database Mirroring und Log Shipping auch im virtualisieren Betrieb unterstützt.

Lizenzen

SQL Server Enterprise bzw. Datacenter können in Virtualisierungsszenarien durch die erweiterten Virtualisierungsrechte deutlich Kosten sparen. Details dazu finden Sie auf der SQL Server Lizenzierungs-Seite.

VMware und andere Hypervisor

Grundsätzlich werden VMware-Lösungen (und andere Hypervisor) als Virtualisierungsumgebung unterstützt, solange die konkrete VMWare- Version mit dem SVVP validiert ist. Details hierzu finden Sie hier.

Soll statt Hyper-V VMware eingesetzt werden so muss man sich insbesondere im Zusammenhang mit Clustern Gedanken machen. Man muss sich zwischen Host Clustering (vMotion) und Guest Clustering (SQL Server/Windows Server Cluster) entscheiden. Dies gilt es zu berücksichtigen, denn die beiden Technologien schützen gegen unterschiedliche Arten von Ausfällen. (mje)

Weiterführende Whitepaper

Zum Thema betrieb von SQL Server in Virtualisierungsumgebungen und Private Cloud Szenarien gibt es auf der SQL CAT Seite vier hilfreiche Whitepaper:

Running SQL Server 2008 in a Hyper-V Environment - Best Practices and Performance Recommendations oder die deutsche Übersetzung.

High Performance SQL Server Workloads on Hyper-V

Onboarding SQL Server Private Cloud Environment

Running SQL Server with Hyper-V Dynamic Memory - Best Practices and Considerations

Dieser Artikel unserer Kollegen der Computerwoche basiert unter anderem auf einem Blogbeitrag von Steffen Krause aus dem SQL Server Team Deutschland Blog auf Microsofts TechNet.