Anfang dieses Jahres habe ich über den Vergleich der Leistung von Windows Azure-VMs geschrieben, wobei Geekbench 3.1.5 im 32-Bit-Testmodus verwendet wurde, um die Prozessor- und Speicherleistung einer Reihe von Windows Azure-VMs unterschiedlicher Größe zu messen. Diese reichten von einer einfachen A0-VM bis hin zu einer Standard-A7-VM, der damals größten verfügbaren VM. Diese Maschinen befanden sich alle im US-Ost-Azure-Rechenzentrum, und sie alle verwendeten zufällig die ältere Azure Gen 2-Hosthardware, die über den alten und relativ langsamen AMD Opteron 4171 HE-Prozessor verfügt.
Folglich waren die Geekbench-Ergebnisse für diese Maschinen ziemlich niedrig, sowohl für die Single-Core- als auch für die Multi-Core-Ergebnisse, wie Sie in Tabelle 1 sehen können.
VM-Größe | CPU-Kerne | Erinnerung | Monatliche Kosten | Single-Core-Bewertung | Multi-Core-Score |
---|---|---|---|---|---|
Basis A0 | 1 (geteilt) | 768 MB | 14 $ | 507 | 498 |
Basis A1 | 1 | 1,75 GB | $56 | 679 | 670 |
Basis A2 | 2 | 3,5 GB | 111 $ | 709 | 1.358 |
Basis A3 | 4 | 7 GB | 221 $ | 717 | 2.472 |
Basis A4 | 8 | 14 GB | $441 | 724 | 4.042 |
Standard A0 | 1 (geteilt) | 768 MB | 15 $ | 492 | 502 |
Standard A1 | 1 | 1,75 GB | 67 $ | 1.068 | 1.083 |
Standard A2 | 2 | 3,5 GB | 134 $ | 1.069 | 2.002 |
Standard A3 | 4 | 7 GB | 268 $ | 1.070 | 3.593 |
Standard A4 | 8 | 14 GB | $536 | 1.094 | 6.446 |
Standard A5 | 2 | 14 GB | 246 $ | 1.080 | 2.026 |
Standard A6 | 4 | 28 GB | $492 | 1.080 | 3.686 |
Standard A7 | 8 | 56 GB | $983 | 1.056 | 6.185 |
Tabelle 1:Ausgewählte Spezifikationen virtueller Maschinen für Windows Azure im östlichen US-Rechenzentrum
Selbst die größte Standard-A7-VM schneidet im Vergleich zu einem durchschnittlichen modernen Laptop sowohl bei der Single-Core- als auch bei der Multi-Core-Leistung ziemlich schlecht ab. In Geekbench misst der Single-Core-Score die Single-Thread-Leistung des Prozessors, was im Grunde die Rohgeschwindigkeit des Prozessors ist. Die Singlethread-Leistung ist sehr wichtig für OLTP-Workloads, bei denen die meisten Abfragen auf einem einzelnen Prozessorkern ausgeführt werden. Der Multi-Core-Score misst die Gesamtprozessorkapazität des Systems, die der Menge an gleichzeitiger Workload entspricht, die Sie unterstützen können. Während viele kleinere SQL Server-Workloads mit dieser VM-Leistung und -Kapazität perfekt ausgeführt werden könnten, wäre ich als DBA nicht sehr glücklich darüber, ältere Azure Gen 2-Hardware für meine SQL Server-VMs zu verwenden.
In jüngerer Zeit hat Microsoft größere und viel schnellere virtuelle Standard A8- und A9-Rechenintensive Azure-Maschinen verfügbar gemacht. Diese VMs verfügen über viel neuere und schnellere 32-nm-Intel Xeon E5-2670 Sandy Bridge-EP-Prozessoren, die ursprünglich im ersten Quartal 2012 veröffentlicht wurden. Dieser spezielle Prozessor verfügt über acht physische Kerne (plus Hyper-Threading); mit einer Basistaktfrequenz von 2,6 GHz und einer Turbo Boost-Taktfrequenz von 3,3 GHz. Dieser Prozessor war zwei Stufen niedriger als der achtkernige Xeon E5-2690-Prozessor der Spitzenklasse, aber eigentlich ist er ein ziemlich anständiger Prozessor. Ein weiteres sehr wichtiges Feature dieser neuen VM-Größen ist das InfiniBand-Netzwerk mit 40 Gbit/s, das Ihnen das Potenzial für eine viel bessere E/A-Leistung bietet.
VM-Größe | CPU-Kerne | Erinnerung | Monatliche Kosten | Single-Core-Bewertung | Multi-Core-Score |
---|---|---|---|---|---|
Standard A8 | 8 | 56 GB | 1.823 $ | 2.484 | 15.376 |
Standard A9 | 16 | 112 GB | 3.646 $ | 2.477 | 28.523 |
Tabelle 2:Ausgewählte Spezifikationen virtueller Maschinen für Windows Azure im östlichen US-Rechenzentrum
Wie Sie in Tabelle 2 sehen können, haben diese neuen rechenintensiven Azure-VMs viel bessere Single-Core- und Multi-Core-Ergebnisse in Geekbench. Sie haben auch deutlich höhere monatliche Kosten. Betrachtet man diese monatlichen Kosten aus direkter Hardware-Perspektive, könnten Sie einen brandneuen Dell PowerEdge R720-Server mit zwei neueren 22-nm-Intel Xeon E5-2667 v2 Ivy Bridge-EP-Prozessoren mit acht Kernen und 192 GB RAM für etwa 10.000,00 US-Dollar kaufen etwa drei Monate Standard-A9-Zeit. Bei einem physischen Server vor Ort fallen neben laufenden Wartungs- und Verwaltungskosten auch Kosten für Strom und Kühlung an. Sie hätten auch eine längere Vorlaufzeit, um einen physischen Server zu bestellen und zu erhalten und ihn dann in ein Rack zu stellen, zu verkabeln und zu konfigurieren. Dieser Prozess dauert in den meisten Unternehmen in der Regel etwa drei bis vier Wochen, kann aber viel länger dauern. Die wirtschaftliche Situation ändert sich, wenn Sie Ihre Lizenzkosten für SQL Server 2012/2014 Enterprise Edition einbeziehen, die etwa 110.000,00 USD für Lizenzen mit 16 Prozessorkernen betragen würden, was ungefähr 30 Monaten Standard A9-Zeit zu aktuellen Preisen entsprechen würde. Wenn Sie ein Azure-VM-Image aus der Microsoft-Standardgalerie von VM-Images verwenden, müssen Sie nicht für Ihre Betriebssystem- oder SQL Server-Lizenzen bezahlen.
Während ich diese Tests durchführte, bemerkte ich einige andere interessante Unterschiede zwischen einer Azure-VM und einem ähnlichen physischen Server. Der erste war die Tatsache, dass die Azure Standard A8- und A9-VMs anscheinend eine Art Energieverwaltung auf Host- oder Hypervisor-Ebene verwenden, sodass Intel Turbo Boost nicht verwendet wird. Wenn ich Geekbench auf dem System ausführe und CPU-Z während des Testlaufs beobachte, bleibt die Prozessorkerngeschwindigkeit während des gesamten Testlaufs auf der Nennbasistaktgeschwindigkeit. Wenn die Energieverwaltung auf allen Ebenen richtig konfiguriert und Turbo Boost im Host-BIOS aktiviert ist, sollte die Prozessorkerngeschwindigkeit während des Testlaufs regelmäßig auf die volle 3,3-GHz-Turbo-Boost-Taktfrequenz steigen. Bei den Azure-VMs A8 und A9 passiert das nicht, was den Single-Core-Geekbench-3.1.6-Score um etwa 10 % beeinträchtigt. Die Unterschiede in den Prozessorkerngeschwindigkeiten sind in den Abbildungen 1 und 2 dargestellt.
Abbildung 1:CPU-Z für Standard A9 Azure VM während Geekbench Testlauf
Abbildung 2:CPU-Z für Dell PowerEdge R720 während des Geekbench-Tests laufen
Was sind also die wichtigsten Lehren aus diesen Experimenten? Erstens scheint es offensichtlich, dass Sie mit einer Standard-A9-Azure-VM fast die gleiche VM-Leistung erzielen können wie mit einem ähnlich großen physischen Server mit zwei Sockeln (mit demselben Prozessor), wie z. B. einem Dell PowerEdge R720 oder einem HP ProLiant DL380 G8 . Sie verwenden einen etwas älteren Sandy Bridge-EP-Prozessor der Mittelklasse, ohne dass der Vorteil von Intel Turbo Boost aktiviert ist, sodass Sie im Vergleich zu einem aktuellen Jahrgang insgesamt etwa 40 % Ihrer Single-Thread-Prozessorleistung verlieren Intel Xeon E5-2667 v2 in einem neuen physischen, lokalen Server.
Ein weiteres potenzielles Problem ist das Arbeitsspeicherlimit von 112 GB für die Standard-A9-Azure-VM im Vergleich zu 384 GB in einem physischen, lokalen Server (mit 16-GB-DIMMs). Wenn Ihre Datenbank-Workload mit einem etwa 95 GB großen SQL Server-Pufferpool gut ausgeführt werden kann, sollte dies kein Problem darstellen. Andernfalls könnten Sie mit Ihrer Leistung nicht allzu zufrieden sein. Sie sollten auch einige E/A-Tests und Benchmarks durchführen, um festzustellen, wie gut die A9-Azure-VM funktioniert und ob sie Ihre Workload bewältigen kann.
Schließlich müssen Sie die Wirtschaftlichkeit der Verwendung eines standardmäßigen Azure-Katalog-VM-Images berücksichtigen, bei dem die Lizenzkosten für SQL Server 2014 als Teil Ihrer monatlichen Azure-Kosten enthalten sind. Je nachdem, wie lange Ihre Instanz Ihrer Meinung nach in Betrieb sein wird, kann die Verwendung einer Azure-VM ein sehr gutes oder weniger gutes Geschäft sein. Ein Faktor, der diese Berechnung beeinflussen könnte, ist die Wahrscheinlichkeit, dass die Preise für Azure-VMs im Laufe der Zeit sinken werden.