Energy saving Micro-Servers running VMware vShpere 5


Hi,

we were looking for inexpensive and energy efficient micro servers working with VMware vSphere 5 for our Lab and testing. These models worked just fine (although they dont have any VMware Certification, so you wont get support from VMware) :

Fujitsu MX130 S2

  • Dual-Core AMD Athlon II X2 220 2,8GHz
  • 16 GB RAM max. (4 x 4GB DDR3 1333 ECC unregistered)
  • onboard Broadcom GBit-LAN (tg3)
  • 2 non-hotswap 3,5″  SATA drive bays
  • 2 x HDD 500 GB
  • 4 low profile expansion slots (PCIe x1, x4, x16, legacy PCI)
  • power consumption 48W (vShpere 5.0 running, no active VM, without harddisks)

 

HP Proliant N40L

  • Dual-Core AMD Processor 1,5 GHz
  • 8 GB RAM max.
  • onboard Intel GBit-LAN
  • 4 non-hotswap 3,5″ SATA drive bays with SFF-8087 connector
  • 1 x HDD 250 GB
  • power consumption 42W (vShpere 5.0 running, no active VM)
  • nice: Set of screws and screwdriver on the back side of the front door, USB connector onboard, boots vSphere from USB

IT is exciting,
Christian Eich

iSCSI performance tuning: 380 MB/s within a VM with openfiler and ESXi


Hi, folks

There is a large gap between entry level Storage appliances like QNAP, Thecus or Buffalo and „large“ SAN-Storages regarding performance, features and very much the price. We have found a solution to fill this gap for our datacenter. Using open source of course!

unsere TestumgebungFor quite a while we have been using Openfiler, a linux-based storage software. However, we were not content with the performance being just a notch above the entry level storages, despite the decent server hardware used. An ESXi cluster waiting for roll out was just the opportunity we needed to tune up I/O performance. So we hit the lab and found out, that the order of tuning steps was crucial to find the right configuration.

Our test bed:

  • 1 ESXi 4.1 server (Fujitsu RX 200 S6, 8 Cores 2,4 GHz, 48 GB RAM, 6 x GBit-NICs Intel)
  • 1 Openfiler 2.3 (Supermicro 8 Cores 2,0 GHz, 8 GB RAM, 3ware 9650SE 8 Ports, 6 x GBit-NICs Intel, 8 disk drives 2 TB SATA 7200U/min)
  • 1 switch Cisco Catalyst 2960S (24 port GBit)

We used four GBit NICs on either side for four iSCSI-VLANs with different IP address ranges. The NICs have to be assigned to the iSCSI software initiator to address all paths. We created an iSCSI volume in Openfiler, connected and formatted it in ESXi using VMFS 4 file system. Paths selection was configured „round robin“.

virtual machine for benchmarking:

We crated a VM with 1 CPU, 2 GB RAM and a harddisk of 15 GB + twice the size of the storage server’s RAM and installed Windows 7. Then we installed IOMETER and a standardized configuration from the VMware forums. This way your results can be compared with other forum posts.

1st step: Where do we start

First we measure the performance of the unoptimized system. The size of the test file we use is smaller than the storage server’s RAM. So any read and written data comes from the cache and we measure only the iSCSI connection.

Latency (ms) IO/s MB/s
Max Throughput-100%Read 14,6 4096,1 128,0
RealLife-60%Rand-65%Read 412,3 141,4 1,1
Max Throughput-50%Read 13,4 4302,2 134,4
Random-8k-70%Read 546,1 107,6 0,8

Not impressive, is it? Accessing the disks locally yields 420 MB/s! What a performance loss in the way to the VM.

2nd step: iSCSI path optimization

Next thing to do is tuning all parameters associated with the iSCSI paths. It is okay in this step to use unsafe settings (e.b. enabling a write buffer without having a BBU). The test file still is smaller than the storage server’s RAM, because we want to measure the iSCSI connection’s speed.

Things to look at:

  • Parameters of the network interface card (jumbo frames, TCP-offload)
  • iSCSI parameter (round-robin parameter)
  • RAID pontroller (enable write-cache)

The boost in performance was obvious:

Latency (ms) IO/s MB/s
Max Throughput-100%Read 4,69 12624,71 394,52
RealLife-60%Rand-65%Read 318,66 181,52 1,42
Max Throughput-50%Read 8,08 7030,93 219,72
Random-8k-70%Read 369,51 150,26 1,17

This is close the theoretical limit.Leistungsanzeige der iSCSI-Pfade bei sequentiellem Zugriff

Beware: Don’t continue if you’re not satisfied. From now on it’s getting worse!

Watching the load of iSCSI paths in vSphere client should give a equal share of traffic over all paths.

Things we stumbled upon:

  • bad jumbo frame configuration. Test it with ping using large packets and „dont fragment“-bit set. Our switch needed a „set mtu jumbo 9000“
  • VMwares „round robin“ algorithm switches paths only every 1000 IO ops. You have to use „esxcli“ to change that.

3rd step: optimizing storage parameters

Now we set up everything to safe values for the production environment. The IOMETER testfile is twice as big as the storage server’s RAM. Caution: Size is given in blocks of 512 bytes.

We compared different RAID levels (getting practice in online RAID migration while doing so) and different number of disk drives.

Raid-10 with 4 disks: 2 TB (SATA, 7200 U/min):

Latency (ms) IO/s MB/s
Max Throughput-100%Read 4,93 12089,4 377,79
RealLife-60%Rand-65%Read 333,02 171,66 1,34
Max Throughput-50%Read 8,15 6857,19 214,29
Random-8k-70%Read 454,2 129,76 1,01

Raid-10 with 8 disks:

Latency (ms) IO/s MB/s
Max Throughput-100%Read 4,8 12331,0 385,3
RealLife-60%Rand-65%Read 443,6 138,0 1,1
Max Throughput-50%Read 9,1 6305,3 197,0
Random-8k-70%Read 504,0 121,4 0,9

Increasing the number of spindles didn’t improve performance, although we expected better IOPS. So it would be better to use two independent datastores with 4 drives each.

Using RAID-6 with 8 drives gave worse IOPS.

Summary:

Almost 400 MB/s and >10.000 IOPS makes us very happy. Our x86 server with Openfiler (about $5.500) closes the gap between inexpensive entry level storage appliances ($1.500 Euro for 70 MB/s and2.000 IOPS) and large SAN storages for $15k+.

Further IOPS and latency improvement could be achieved using more and better drives (SSD, SAS). We haven’t tried storage replication yet, but we read reports about users successfully implementing „drbd“ .

 

IT bleibt spannend,

Christian Eich

This article is based on research by Christian Eich, Richard Schunn and Toni Eimansberger.
Author: Christian Eich

iSCSI-Performance-Optimierung: 380 MB/s in der VM mit openfiler und ESXi


Hallo, zusammen

(english version)

Zwischen den günstigen iSCSI-Storage-Appliances (QNAP, Thecus, Buffalo, Cisco SMB und Co.) und den „großen“ Storages aus der Fiberchannel-Welt klafft eine große Lücke, sowohl in der Performance, der Features aber insbesondere im Preis. Im WorNet-Labor haben wir eine überzeugende Lösung gefunden, die diese Lücke überbrückt. Natürlich mit OpenSouce-Mitteln!

unsere TestumgebungSchon lange setzen wir den auf Linux basierenden Openfiler für unsere iSCSI-Storage-Server ein. Allerdings waren wir mit der Performance nicht so recht zufrieden. Selbst mit leistungsfähiger Hardware kommt verglichen mit günstigen Appliances (in unserem Fall von QNAP) in den virtuellen Maschinen nur wenig mehr I/O-Leistung an. Die Testphase unseres neuen ESX-Clusters kam uns da sehr gelegen um systematisch an der Performance-Schraube zu drehen.

Hier hat sich ein optimales Vorgehen bei der Optimierung herauskristallisiert, bei dem die Reihenfolge der Optimierungsschritte  entscheidend ist.

Unsere Testumgebung:

  • 1 ESXi 4.1 Server (Fujitsu RX 200 S6, 8 Cores 2,4 GHz, 48 GB RAM, 6 x GBit-Netzwerk Intel)
  • 1 Openfiler 2.3 (Supermicro 8 Cores 2,0 GHz, 8 GB RAM, 3ware 9650SE 8 Ports, 6 x GBit-Netzwerk Intel, 8 Festplatten 2 TB SATA 7200U/min)
  • 1 Switch Cisco Catalyst 2960S (24 Port GBit)

Je 4 GBit Interfaces werden für iSCSI genutzt. Dabei werden 4 VLANs mit verschiedenen IP-Bereichen definiert. Die Interfaces müssen dem iSCSI-HBA zugeordnet werden bevor die Ziele sichtbar werden.  Dann wird ein Volume mit VMFS formatiert und man erhält einen Datastore mit dem man die Tests durchführen kann. Die Verwendung der Pfade wird auf „Round Robin“ konfiguriert.

virtuelle Testmaschine:

Wir haben eine virtuelle Maschine mit 1 vCPU, 2 GB RAM mit Windows 7 installiert. Die Größe der virtuellen Festplatte sollte mindestens 15 GB + 2 * RAM des Storageservers betragen. Zusätzlich wird IOMETER und ein standardisiertes Konfigurationsfile aus dem VMware-Forum installiert. Mit diesem Test erhält man Werte die mit den Ergebnissen anderer Forumsbeiträge vergleichbar sind.

1. Schritt: Ausgangssituation

Zunächst messen wir die Performance des nicht-optimierten Systems. Dabei wählen wir die Größe des Testfiles bewusst kleiner als der Arbeitsspeicher des Storage-Servers, d.h. wir messen zwar die iSCSI-Anbindung, nicht aber das Festplattensystem.

Latency (ms) IO/s MB/s
Max Throughput-100%Read 14,6 4096,1 128,0
RealLife-60%Rand-65%Read 412,3 141,4 1,1
Max Throughput-50%Read 13,4 4302,2 134,4
Random-8k-70%Read 546,1 107,6 0,8

Für 4 GBit Speicheranbindung ist das nicht gerade beeindruckend. Das RAID-System des Storage-Servers liefert lokal im Openfiler gemessen 420 MB/s!

2. Schritt: Optimierung der iSCSI-Speicheranbindung

Jetzt optimiert aggressiv man alle Parameter, die die Speicheranbindung betreffen. Dabei ist es in Ordnung, wenn unsichere Einstellungen (z.B. Write-Cache im RAID-Controller ohne vorhandene BBU) gewählt werden. Auch wählt man die Größe der Testdatei in IOMETER kleiner als den RAM des Storage-Systems, denn wir wollen möglichst wenig Einflüsse der Platten und statt dessen nur den Weg von der virtuellen Maschine bis zum iSCSI-Daemon im Storage-System testen.

Insbesondere konfiguriert man:

  • Netzwerkkartenparameter (Jumbo Frames, TCP-Offload)
  • iSCSI-Parameter (Round-Robin-Parameter)
  • RAID-Controller (Write-Cache einschalten)

Bei uns machte sich das deutlich bemerkbar:

Latency (ms) IO/s MB/s
Max Throughput-100%Read 4,69 12624,71 394,52
RealLife-60%Rand-65%Read 318,66 181,52 1,42
Max Throughput-50%Read 8,08 7030,93 219,72
Random-8k-70%Read 369,51 150,26 1,17

Damit sind wir sehr nahe am theoretischen Maximum (4 GBit entspricht ca. 440 MB/s inkl. iSCSI-Overhead).Leistungsanzeige der iSCSI-Pfade bei sequentiellem Zugriff

Wichtig: Machen sie nicht weiter wenn Sie mit diesen Werten nicht 100%ig zufrieden sind. Ab hier wird es wieder schlechter!

Wenn man im vShpere-Client unter Leistung die Nutzung der iSCSI-Pfade bei sequentiellem Zugriff ansieht müssen die Pfade gleichmäßig mit je 1 GBit ausgelastet sein (Bild rechts).

Stolperfallen in unserem Test:

  • fehlerhafte Jumbo-Frame-Konfiguration (Test: Ping mit großen Paketen und Dont-Fragment-Bit), hierbei auch an den Switch (Cisco 2960S: „set mtu jumbo 9000“) denken!
  • Der Round-Robin-Algorithmus bei ESXi wechselt den Pfad im default nur nach 1000 IO-Operationen. Das muss man mit einem esxcli-Befehl umstellen.

3. Schritt: Optimierung der Storageparameter

Jetzt stellt man sinnvolle Werte für den Produktivbetrieb ein und  erhöht die Größe des Testfiles für IOMETER auf das doppelte des RAM des Storageservers. Aufpassen die „Maximum Disk Size“ wird in Blocks angegeben, ein Block hat 512 Bytes.

In unserem Fall haben wir nun verschiedene Raid-Level und Spindelzahlen verglichen.

Raid-10 mit 4 Platten zu je 2 TB (SATA, 7200 U/min):

Latency (ms) IO/s MB/s
Max Throughput-100%Read 4,93 12089,4 377,79
RealLife-60%Rand-65%Read 333,02 171,66 1,34
Max Throughput-50%Read 8,15 6857,19 214,29
Random-8k-70%Read 454,2 129,76 1,01

Raid-10 mit 8 Platten:

Latency (ms) IO/s MB/s
Max Throughput-100%Read 4,8 12331,0 385,3
RealLife-60%Rand-65%Read 443,6 138,0 1,1
Max Throughput-50%Read 9,1 6305,3 197,0
Random-8k-70%Read 504,0 121,4 0,9

Die Erhöhung der Anzahl der Festplatten von 4 auf 8 bei RAID-10 hat sich erstaunlicherweise nicht signifikant ausgewirkt. Da ist besser zwei unabhängige Datastores mit je 4 Platten anzulegen.

Ein Test mit einem RAID-6 aus 8 Festplatten ergab noch schlechtere Werte, insbesondere beim Random-Zugriff.

Fazit:

Mit knapp 400 MB/s und >10.000 IOPS sind wir absolut glücklich. Unser x86-Server mit Openfiler (ca. 4.000 Euro) schließt die Lücke zwischen den „kleinen“ (ca. 1.000 Euro und 70 MB/s und 2.000 IOPS) und den „großen“ jenseits der 10 k€.

Eine weitere Verbesserung der IOPS oder Latenzen ist mit schnelleren Festplatten, SSDs oder SAS-Platten sicher realisierbar. Eine Storage-Replikation ist mit „drbd“ machbar, wurde aber in diesem Test nicht untersucht.

Dieser Artikel basiert auf den Testreihen und Erfahrungen von Christian Eich, Richard Schunn und Toni Eimansberger.

IT bleibt spannend,

Christian Eich

Schlafen Sie gut – Ihre IT ist sicher!


Hallo,

...schlaffördernde und beruhigende Wirkung...anbei sehen Sie Baldrian. Brauchen Sie Baldrian, um Nachts gut zu schlafen, weil Sie davor Angst haben, was passiert, wenn morgen Ihr wichtigster Server ausfällt? Oder weil Sie nicht wissen, ob die Datensicherung wirklich sicher ist: Der Kollege, der sich darum kümmert, hat zwar gesagt, es sei alles in Ordnung, aber kann man sich wirklich darauf verlassen? Kann eine Datei z.B. auch dann noch restauriert werden, wenn ihr Verschwinden erst nach Wochen bemerkt wird? Sein Fachgebiet ist ja eigentlich ein anderes…

Vertrauen Sie Ihre IT und Ihre Daten lieber Experten an, deren Fachgebiet wirklich die Stabilität von Servern und die Sicherheit von Daten ist.

Wir stellen laufend den Betrieb Ihrer wichtigen Server und die Verfügbarkeit Ihrer Daten sicher – und zwar individuell nach Ihren Bedürfnissen und detaillierter Planung. Dabei kommen – je nach Anforderung – moderne Techniken aus unserem Rechenzentrum, wie Remote-Backup und automatische Überwachung aller wichtigen Dienste zum Einsatz. Aber auch „Altbewährtes“, wie regelmäßige persönliche Vor-Ort-Besuche bei Ihnen, um zu besprechen, welche aktuellen Wünsche vorliegen.

Wenn auch bei Ihnen Daten und Server unternehmenswichtig sind, dann kommen Sie zu uns und Sie schlafen auch ohne Baldrian bestens 🙂 – Damit Sie sich voll auf die Dinge konzentrieren können, für die Sie Experte sind.

Vernetzte Grüße,

Dirk Steinkopf

WorNet AG
Vorstand, CEO

Datenspeicher der besonderen Art


Hallo,

Platz um seine Daten zu lagern kann man eigentlich nie genug haben. Kein Wunder, dass im Privatbereich die kleinen USB- und Netzwerkfestplatten einen wahren Siegeszug antreten.

Und im Büro? Wenn das Netzlaufwerk voll ist und der Admin drängt aufzuräumen? Was liegt da näher als eine Netzwerkfestplatte in die Abteilung zu stellen? Gleich unter den Schreibtisch, ist ja so einfach und praktisch. Und so billig! Meist sind diese Geräte so günstig, dass sie weder als Investition erfasst oder vom Chef genehmigt werden müssen.

Und so schlummern sie, und werden genutzt. Anfangs natürlich nur für temporäre Daten, die nicht gesichert werden müssen. Versteht sich von selbst! Und natürlich für die Dokumente an denen man gerade arbeitet, aber die werden selbstverständlich jeden Abend auf den Server kopiert. Eh klar!

Der Chef oder der IT-Verantwortliche wird sich dessen meist erst klar wenn das unvermeidliche passiert: Wichtige Daten sind weg!

Gehen sie doch mal durch ihr Unternehmen und schauen sie was – gerade bei den technisch versierten Mitarbeitern – unter dem Tisch an Elektronik steht. Und statt eines Verbots bieten Sie dem Mitarbeiter an: „Unsere IT hat da einen Server für genau diese Zwecke! Da bekommen Sie ein Laufwerk exklusiv für Ihre Abteilung. Und wir können ein Auge darauf haben, dass nichts verloren geht.“

Was glauben Sie was der Mitarbeiter sagt?

Wie das preiswert geht? Mit Linux! Aber das dachten Sie sich sicher schon 😉

Helfen Sie den verwaisten Pinguinen


Kürzlich sprach ich mit einem neuen Kunden über seine Server. Er hat ein paar Windows Server die er professionell betreuen lässt und einen Linux-Server auf dem eine MySQL-Datenbank läuft.Das Linux-Maskottchen wurde von Larry Ewing, Simon Budig und Anja Gerwinski  mit der freien Software GIMP erstellt.

CHE: Ist der Linux-Server mit der MySQL-Datenbank für Ihr Unternehmen wichtig?

Kunde: Das ist schwer untertrieben. Ohne die Datenbank wissen wir nicht was wir produzieren müsen.

CHE: Und wer kümmert sich um die Maschine?

Kunde: Kümmern tut sich keiner. Wenn es brennt rufen wir den Programmierer, der unsere Anwendung betreut. Cry

Solche „verwaisten Pinguine“ treffe ich immer öfter in Unternehmen an. Doch die IT-Dienstleister, die das Windows-Netz betreuen haben meist keine Erfahrung mit Linux und klammern diese Maschinen in ihren Wartungsverträgen gerne aus.

Linux-Server entstehen oft als Bastel-Projekt eines einzelnen engagierten Mitarbeiters. Eine ausrangierte Hardware und etwas freie Software, schon hat man ein Linux-System im Einsatz, oftmals ohne dass der Geschäftsführer davon weiß. Es mussten ja keine Lizenzen gekauft, keine Hardware angeschafft werden. Und sind sie erst einmal da, will man sie aufgrund ihrer Vielseitigkeit, Robustheit und der vielen freien Software nicht mehr missen.

Haben auch Sie Linux-Systeme im Einsatz?

Dann haben Sie ein Herz und lassen Sie den Pinguin  im Serverschrank nicht alleine. —- Wir lieben Pinguine!

Vernetzte Grüße,

Christian Eich

WorNet AG
Vorstand