ADMIN
Netzwerk & Security
EUR 5,90
Digitales
Special
prsentiert von
SSD-Speicher
storage MIT high-speed
Know-how zur neuen Storage-Technologie
Grundlagen
Tuning
Testen
Flashcache
So funktionieren SSDs
Was kommt danach?
Korrekte Benchmarks
mit dem Fio-Tool
Einstellungen fr
maximale Performance
www.admin-magazin.de
S S D -s p e i c h e r
Grundlagen
So funktionieren SSD-Speicher
Frische
Chips
Solid State Drives werden von Tag zu Tag populrer. Die kleinen Performance-Wunder versprechen eine deutlich
hhere I/O-Performance als herkmmliche Festplatten und das bei niedrigerem Stromverbrauch. Wie SSDs
funktionieren und wann sich deren Einsatz lohnt, verrt dieser Artikel. Werner Fischer
SSDs haben mit normalen Festplatten nur
eine Gemeinsamkeit: Beide Medien speichern Daten. Intern arbeiten SSDs allerdings vollkommen anders als Festplatten.
Whrend Festplatten die Daten auf mehreren Magnetscheiben speichern, nutzen
SSDs mehrere Flash-Chips meist bis zu
zehn Stck fr die Datenspeicherung.
Da bei SSDs keine mechanischen Teile
wie bei Festplatten bewegt werden, sind
vor allem zufllig verteilte Datenzugriffe
deutlich schneller.
Festplatte im Vergleich
Um die Performance von SSDs mit Festplatten zu vergleichen, lohnt zuvor ein
kurzer Blick auf den Aufbau herkmmlicher Festplatten. Diese speichern die
Daten auf mehreren rotierenden Magnetscheiben. Die Daten werden dabei mit
Schreib-/Lesekpfen auf die Scheiben
geschrieben beziehungsweise von diesen gelesen.
Soll nun ein zuflliger Sektor von der
Festplatte gelesen werden, muss die
Festplatte den Schreib-/Lesekopf an die
richtige Stelle bewegen (Seek Time) und
dann darauf warten, dass der gewnschte
Sektor auf der rotierenden Scheibe unter
dem Schreib-/Lesekopf vorbeifhrt (La-
A D M I N -SS D -S p ec ia l
Aufbau
Die kleinste Einheit in einem Flash-Chip
einer SSD ist die Speicherzelle. Je nach
Typ speichert eine einzelne Speicherzelle
ein oder mehrere Bits:
nSLC (Single Level Cell) 1 Bit
nMLC (Multi Level Cell) 2 Bits
nTLC (Triple Level Cell) 3 Bits
Eine SLC unterscheidet zwei Ladungszustnde, eine MLC vier und eine TLC
acht. Die angelegte Spannung beim
Schreiben auf eine Speicherzelle ist allerdings fix. Daher muss bei einer MLC
fr einen Schreibvorgang bis zu vier Mal
Spannung angelegt werden, um in den
hchsten Ladungszustand zu kommen.
Bei einer SLC reichen maximal zwei solcher Vorgnge die Schreibperformance
ist damit hher. TLCs erfordern bis zu
acht Mal Spannung und werden daher
fr SSDs nicht verwendet. Aufgrund ihrer
hohen Datendichte und hheren Kapazitt werden TLCs aber fr USB-Sticks
und SD-Karten genutzt. Dazu reicht ihre
Performance aus.
Bei jedem Anlegen von Spannung kommt
es zu einer kleinen Abntzung der Isolationsschicht der Speicherzelle. Da fr
einen einzelnen Schreibvorgang auf eine
MLC fter Spannung angelegt wird als
bei einer SLC, vertrgt die MLC weniger
Schreibvorgnge (sogenannte Program/
Erase Cycles oder p/e-Zyklen). MLCs haben meist eine Lebensdauer zwischen
10000 und 30000 p/e-Zyklen, SLCs rund
100000 p/e-Zyklen.
Mehrere Speicherzellen bilden eine Page.
Sie ist die kleinste Struktur, die vom
SSD-Controller gelesen oder beschrie-
w w w. admin - maga z in . d e
Grundlagen
Schreibtechniken
Die geschilderte interne Funktionsweise
einer SSD erfordert spezielle Schreibtechniken um sowohl eine hohe Performance
als auch eine lange Lebensdauer der SSD
zu erreichen. Das erstmalige Beschreiben
einer neuen SSD ist dabei noch einfach.
Alle Blcke (und somit auch alle Pages)
sind gelscht. Neue Daten schreibt der
SSD-Controller direkt auf die entsprechenden Pages.
Schwieriger wird es, sobald bereits vorhandene Daten verndert werden. Ohne
zustzliche Mechanismen msste der
SSD-Controller smtliche Pages eines
Blocks zuerst in einen Cache einlesen,
anschlieend den gesamten Block lschen, um abschlieend die zwischengespeicherten Pages versehen mit den
nderungen wieder in den Block zu
schreiben. Die nderung eines einzel-
w w w. admin - maga z in . d e
S S D -s p e i c h e r
Write Amplification
Durch die geschilderten Algorithmen werden einmal geschriebene Daten, selbst
wenn sie nicht verndert werden, in andere Pages kopiert (etwa durch Garbage
Collection oder Static Wear Leveling).
Ein geschriebenes Byte kann also mit
der Zeit vom SSD-Controller durchaus
mehrfach kopiert werden und somit zu
A D M I N -SS D -S p ec ia l
S S D -s p e i c h e r
Grundlagen
Lebensdauer
Die Lebensdauer von SSDs ist durch
die Lebensdauer der Speicherzellen begrenzt. Mit fortschreitender Nutzung
knnen vermehrt Blcke ausfallen. Wobei ein Ausfall dabei relativ ist. Je mehr
p/e-Zyklen stattfinden, umso lnger
dauert das Lschen eines Blocks. berschreitet diese Zeit zum Lschen einen
bestimmten Schwellwert, markiert der
SSD-Controller diesen Block als Bad
Block und nutzt stattdessen einen Spare
Block aus der Spare Area. Es kommt dabei also zu keinem Datenverlust. Es sinkt
nur die Anzahl der Spare-Blcke. Einzelne Bitfehler knnen zwar auftreten
(raw bit error rate, RBER), werden aber
durch ECC-Mechanismen korrigiert. Erst
Einsatzgebiete
A D M I N -SS D -S p ec ia l
Fazit
SSDs sind zwar nach wie vor mit hheren
Einstiegskosten verbunden. Sie zahlen
sich aber durch ihre hohe I/O Performance
oft sehr schnell aus. Entscheidend fr eine
gute Performance ist aber die Qualitt, wie
gut der Hersteller die Algorithmen im SSDController implementiert hat.
Ein weiterer Artikel in diesem ADMINSSD-Special zeigt, wie sich die SSD-Performance mit AHCI, ATA TRIM, einer
vergrerten Spare Area und durch ein
korrektes Partition Alignment optimieren
n
lsst. (ofr)
Infos:
[1] SSD-SMART-Analyse: [http://www.
thomaskrenn.com/SSDSMARTAnalyse]
[2] Maxcache-Support: [http://www.
thomaskrenn.com/maxCache]
Der Autor
Werner Fischer ist seit 2005 Technology Specialist bei der Thomas-Krenn.AG und Chefredakteur
des Thomas Krenn Wikis. Seine Arbeitsschwerpunkte liegen in den Bereichen HardwareMonitoring, Virtualisierung, I/O Performance
und Hochverfgbarkeit.
w w w. admin - maga z in . d e
S S D -s p e i c h e r
I/O -Benchmarks
Blockweise
Einfache Disk-Benchmarks messen oft nur einen bestimmten Anwendungsfall. Der flexible I/O-Tester Fio simuliert ganz unterschiedliche Workloads und misst neben der Bandbreite auch die Anzahl der I/Os pro Sekunde,
Latenzen sowie die CPU-Auslastung. Martin Steigerwald
Der Maintainer der Blockgerte-Ebene
des Linux-Kernels Jens Axboe entwickelte Fio, um die Performance in unterschiedlichen Anwendungsfllen zu messen. Einfache Benchmarks wie hdparm
oder dd sind zu beschrnkt und testen
beispielsweise nur sequenzielles I/O,
das in blichen Workloads mit vielen
kleinen Dateien keine groe Rolle spielt.
Fr jeden Workload ein eigenes Testprogramm zu schreiben, ist indes ziemlich
aufwendig.
Aktuell ist die Version 2.07. Fr Debian
gibt es ein vom Artikel-Autor erstelltes
Paket, das Ubuntu-Entwickler in ihrer
Distribution bernommen haben. Fr
Suse-Versionen ab SLES 9 sowie Open
Suse 11.3 stellt das Benchmark-Repository ein aktuelles Paket bereit [1].
In Fedora ist Fio ebenfalls enthalten.
Die Quellen aus dem Tarball oder dem
Git-Repository lassen sich mit den Entwicklerdateien zur libaio, bei Debian
und Abkmmlingen als libaiodev, bei
RPM-basierten Distributionen blicherweise als libaiodevel, mit einem simplen Make bersetzen [2][3]. Auch unter
verschiedenen BSD-Varianten und Win-
A D M I N -SS D -S p ec ia l
w w w. admin - maga z in . d e
I/O-Benchmarks
S S D -s p e i c h e r
Motorenvielfalt
w w w. admin - maga z in . d e
A D M I N -SS D -S p ec ia l
S S D -s p e i c h e r
I/O -Benchmarks
bedeutsam. Allerdings
gibt es asynchrones
und synchrones Verhalten sowie Warteschlangen sowohl
auf der Anwendungsebene als auch auf der
Gerte-Ebene.
So arbeitet die in
den bisherigen Beispielen verwendete
I/O-Engine sync, die
die Systemfunktionen
read, write und
gegebenenfalls lseek
verwendet, auf Anwendungsebene synchron, ebenso wie
psync und vsync:
Abbildung 2: Viele Ebenen sind unter Linux beim Lesen und Schreiben von
Der Aufruf der FunkDateien beteiligt.
tion kehrt erst zurck,
wenn die Daten geleParameter den Pagecache. Zugriffe auf
sen oder zum Schreiben im Pagecache geDateien setzt ein Dateisystem in Zugriffe
landet sind. Daher ist die Lnge der Warauf Blcke um, whrend systemnahe Pro- teschlange auf Anwendungsebene immer
gramme wie dd, der Linux-Kernel beim eins. Solange der Prozess aber nicht zu
Auslagern auf ein Swap-Gert sowie entviele Daten auf einmal schreibt, landen
sprechend konfigurierte Anwendungen
diese erst einmal nicht auf der Platte (Abwie einige Datenbanken oder der News- bildung 3). Der Kernel sammelt sie im
feeder/Reader Diablo direkt auf BlockPagecache und schreibt sie auf Gertegerte schreiben [7]. Im Block Layer
Ebene spter doch asynchron.
gibt der gerade laufende I/O-Scheduler
Das Lesen geschieht bei den synchronen
die Requests nach festgelegten Regeln
Engines auch auf Gerte-Ebene synchron,
an die Gertetreiber weiter. Der Contes sei denn, mehrere Prozesse lesen
roller schlielich spricht das Gert an,
gleichzeitig. Das ist dann aber nicht so
effizient wie asynchrones I/O auf der
das ebenfalls einen mehr oder weniger
aufwendigen Controller mit eigener FirmAnwendungsebene. Wer den Pagecache
ware besitzt.
umgehen und damit das Gert selbst
Fr Ergebnisse von Performance-Messungen ist es ausschlaggebend, ob Requests
asynchron oder synchron verarbeitet
werden. Auch die Lnge der RequestWarteschlange sowie der Einsatz oder
das berspringen des Pagecaches sind
Abbildung 3: Knapp 1 GiB/s und 256000 IOPS sind auch fr eine Intel SSD 320 unrealistisch.
A D M I N -SS D -S p ec ia l
w w w. admin - maga z in . d e
I/O -Benchmarks
S S D -s p e i c h e r
w w w. admin - maga z in . d e
A D M I N -SS D -S p ec ia l
S S D -s p e i c h e r
I/O -Benchmarks
Variation
Abbildung 6: Das mit einer Warteschlangenlnge von eins quasi synchrone I/O lastet die Intel SSD nur zu etwa
67 Prozent aus.
15
02
ioengine=libaio
16 [
sequentielllesen]
03
direct=1
17 s
tonewall
04
# Fr zufllige Daten ber die komplette Lnge
18 r
w=read
05
# der Datei vorher Job sequentiell laufen
19 r
untime=60
20
lassen
06
filename=testdatei
21 [
zuflligschreiben]
07
size=2G
22 s
tonewall
08
bsrange=2k16k
23 r
w=randwrite
09
24 r
untime=60
10
refill_buffers=1
25
11
26 [
sequentiellschreiben]
12
[zuflliglesen]
27 s
tonewall
13
rw=randread
28 r
w=write
14
runtime=60
29 r
untime=60
10
A D M I N -SS D -S p ec ia l
Eine anderer Weg ist, mit vielen Prozessen gleichzeitig zu testen oder viele Daten gepuffert zu schreiben. So liefert ein
Test mit numjobs=64 ebenfalls deutlich hhere Werte, die die Option group_
reporting pro Gruppe zusammenfasst.
Die Befehlszeilen-Option eta=never
schaltet die berlange Fortschrittsanzeige
ab. Hohe Latenzen bei der Reaktion auf
Benutzereingaben selbst auf einem Intel Sandybridge i5 Dualcore und etwa
770000 Kontext-Switches zeigen den hheren Overhead dieser Methode. Doch
immerhin sind auch damit circa 160 bis
180 MB/s und 18000 bis 19000 IOPS
beim Lesen und ungefhr 110 MiB/s und
12500 IOPS beim Schreiben drin. Die
Messprotokolle stehen auf der ADMINWebsite zum Download bereit.
Damit sind die Mglichkeiten von Fio
noch lange nicht ausgeschpft. Das
Programm arbeitet auch direkt mit der
Hardware, wie der Beispiel-Job disk
zoneprofile zeigt, der ber die gesamte
Gre eines Laufwerks in Abstnden die
Lese-Transferrate misst. Fr hardwarenahe, realistische Messungen ist es bei
Festplatten empfehlenswert, immer das
ganze Laufwerk zu verwenden, da die
Transferrate bei den auen liegenden Sektoren aufgrund des greren Zylinderumfangs hher ist. So ergeben sich bei einer
2,5-Zoll-Hitachi-Platte mit 500 GByte via
eSATA beim zuflligen Lesen von 2 bis 16
KiB-Blcken mit iodepth=1 noch etwa
50 IOPS (Abbildung 8). Alternativ verwendet man nur den Anfang der Platte.
Bei Lese-Tests mit ganzen Laufwerken,
w w w. admin - maga z in . d e
I/O -Benchmarks
S S D -s p e i c h e r
Impressum
ADMIN-Magazin eine Publikation der Linux New Media AG
Redaktionsanschrift Putzbrunner Strae 71
81739 Mnchen
Tel.: 0 89/99 34 11-0
Fax: 0 89/99 34 11-99 oder -96
Internet www.admin-magazin.de
E-Mail redaktion@admin-magazin.de
Geschftsleitung Brian Osborn (Vorstand), bosborn@linuxnewmedia.de
Hermann Plank (Vorstand), hplank@linuxnewmedia.de
Chefredakteure Oliver Frommel (V.i.S.d.P.),
ofrommel@admin-magazin.de (ofr)
Jens-Christoph Brendel
jbrendel@admin-magazin.de (jcb)
Redaktion
News/Report Ulrich Bantle (Ltg.), ubantle@linuxnewmedia.de (uba)
Mathias Huber, mhuber@linuxnewmedia.de (mhu)
Software/Test Marcel Hilzinger, mhilzinger@linuxnewmedia.de, (mhi)
Kristian Kiling, kkissling@linuxnewmedia.de, (kki)
Security/Networking Markus Feilner, mfeilner@linuxnewmedia.de (mfe)
Thomas Leichtenstern, tleichtenstern@linuxnewmedia.de (tle)
Stndige Mitarbeiter Elke Knitter (Schlussredaktion),
Carsten Schnober, Tim Schrmann, Claudia Thalgott
Produktionsleitung Christian Ullrich, cullrich@linuxnewmedia.de
Grafik
Klaus Rehfeld, Judith Erb (Titel, Ausgangsgrafik: Mikhail-Dudarev, 123RF)
Abo-Infoseite www.admin-magazin.de/abo
Abonnenten-Service Veronika Kramer
abo@admin-magazin.de
Tel.: 07131/27 07 274, Fax: 07131/27 07 78 601
Preise Print
Deutschland
sterreich
Schweiz
AuslandEU
Einzelheft
9,80
10,80
Sfr 19,60
(siehe Titel)
Mini-Abo (2 Ausgaben)
9,80
10,80
Sfr 19,60
(siehe Titel)
Jahres-DVD (Einzelpreis)
14,95
14,95
Sfr 18,90
14,95
Jahres-DVD (zum Abo 1)
6,70
6,70
Sfr 8,50
6,70
Jahresabo
49,90
54,90
Sfr 99,90
59,90
Preise Digital
Deutschland
sterreich
Schweiz
AuslandEU
Heft-PDF Einzelausgabe
9,80
9,80
Sfr 10,71
9,80
DigiSub (6 Ausgaben)
44,90
44,90
Sfr 49,05
44,90
w w w. admin - maga z in . d e
ISSN 2190-1066
DigiSub (zum Printabo)
6,
6, Sfr 6,
6,
HTML-Archiv (zum Abo 1)
48,
48, Sfr 48,
48,
Preise Kombiabos
136,60
151,70
Sfr 259,90
165,70
Profi-Abo 2
1
nur erhltlich in Verbindung mit einem Jahresabo Print oder Digital
2
mit Linux-Magazin-Abo und beiden Jahres-DVDs
Schler- und Studentenermigung: 20 Prozent gegen Vorlage eines Schlerausweises oder einer aktuellen
Immatrikulationsbescheinigung. Der aktuelle Nachweis ist bei Verlngerung neu zu erbringen. Andere AboFormen, Ermigungen im Ausland etc. auf Anfrage.
Adressnderungen bitte umgehend mitteilen, da Nachsendeauftrge bei der Post nicht fr Zeitschriften gelten.
Pressemitteilungen info@admin-magazin.de
Anzeigen/Reprsentanz
Es gilt die Anzeigenpreisliste vom 01.01.2010
National Petra Jaser
Tel.: 089/99 34 11 24, Fax: 089/99 34 11 99
E-Mail: anzeigen@admin-magazin.de
Pressevertrieb MZV, Moderner Zeitschriften Vertrieb GmbH
Breslauer Strae 5, 85386 Eching
Tel.: 089/31906-0, Fax: 089/31906-113
Druck Vogel Druck und Medienservice GmbH
97204 Hchberg
Der Begriff Unix wird in dieser Schreibweise als generelle Bezeichnung fr die Unix-hnlichen Betriebssysteme
verschiedener Hersteller, zum Beispiel Eurix (Comfood), Ultrix (Digital Equipment), HP/UX (Hewlett-Packard) oder Sinix
(Siemens) benutzt, nicht als die Bezeichnung fr das Trademark von X/Open. Linux ist eingetragenes Markenzeichen von
Linus Torvalds und wird in unserem Markennamen mit seiner Erlaubnis verwendet. Alle anderen Marken sind Eigentum
der jeweiligen Inhaber. Eine Haftung fr die Richtigkeit von Verffentlichungen kann trotz sorgfltiger Prfung durch
die Redaktion vom Verlag nicht bernommen werden. Mit der Einsendung von Manuskripten gibt der Verfasser seine
Zustimmung zum Abdruck im Admin-Magazin. Fr unverlangt eingesandte Manuskripte kann keine Haftung bernommen
werden. Die Redaktion behlt sich vor, Artikel zu krzen. Das Exklusiv- und Verfgungsrecht fr angenommene
Manuskripte liegt beim Verlag. Es darf kein Teil des Inhalts ohne ausdrckliche schriftliche Genehmigung des Verlags in
irgendeiner Form vervielfltigt oder verbreitet werden. Copyright 19942012 Linux New Media AG
A D M I N -SS D -S p ec ia l
11
S S D -s p e i c h e r
I/O -Benchmarks
Fazit
12
A D M I N -SS D -S p ec ia l
w w w. admin - maga z in . d e
Abbildung 1: Fr die PowerServer DUO T2000 Blade wird die OCZ Enterprise-SSD-Serie Deneva 2
verwendet. Diese SSDs liefern hohe Zuverlssigkeit und Performance zu einem erschwinglichen Preis.
Wichtige Features
Entscheidung fr SSDs
Deneva 2 implementieren
Inzwischen hat PSSC Labs die Deneva
2-SSDs als kompatibel zu den eigenen
Servern und Appliances zertifiziert.
Alex Lesser beschreibt die Einfhrung
als schmerzlosen Prozess:. Es gab
keine greren Probleme und OCZ hat
uns auf jeder Etappe des Weges begleitet. PSSC Labs war beeindruckt
von der hohen Zuverlssigkeit der
SSDs und davon, dass es nun mglich ist, Endverbrauchernbei der Lsung von Performanceproblemen zu
helfen, die anders nicht zu bewltigen
wren.
Probleme gelst
Die Deneva 2 SSDs von OCZ haben bei
PSSC Labs die anstehenden Schwierigkeiten gelst und der Firma wie ihren Kunden die Performance beschert,
die fr qualitativ hochwertige CloudDienstleistungen ntig ist. PSSC Labs
kann nun SSDs mit hherer Kapazitt
zu erschwinglichen Preisen anbieten,
was fr jeden unserer Endkunden ein
groer Vorteil ist, wie Lesser meint.
Auch beim Ausbau seiner Cloud-Angebote will PSSC Labs knftig weiter
auf Produkte von OCZ setzen. (jcb) n
S S D -s p e i c h e r
Tuning
SSD-Performance optimieren
Geschwindigkeit
ist keine Hexerei
SSDs sind schon von Haus aus vielfach schneller als konventionelle Festplatten. Falsche Konfiguration kann die
Speicherwunder jedoch bremsen. Wir zeigen, wie es richtig geht. Werner Fischer
SSDs werden so wie viele Festplatten
per SATA-Schnittstelle mit dem Rechner
verbunden. Sofern der Rechner halbwegs
aktuell ist, erkennt er die SSD beim Hochfahren und kann sie sofort verwenden.
Wer die optimale Performance erreichen
will, fr den lohnt es sich allerdings, vor
dem Einsatz ein paar Einstellungen zu
berprfen.
AHCI aktivieren
ta
Te
ck
sto
oli
ot
,F
14
A D M I N -SS D -S p ec ia l
w w w. admin - maga z in . d e
Tuning
01
root@ubuntu1010:~# hdparm I /dev/sda | grep
ADMIN
Netzwerk & Security
linux
Das HEft
i
windows
MEDiaDatEn
i
security i
Wie bereits erlutert kann ein SSD Controller die Daten von einer einmalig beschriebenen Page nicht verndern, sondern muss zuvor den gesamten Block mit
mehreren Pages lschen. Fr die Wiederverwendung einer zuvor bereits benutzten SSD ist es daher sinnvoll, vor dem
Einsatz alle Blcke der SSD zu lschen.
Bei den meisten SSDs klappt dies mit
HOME
Secure Erase
S S D -s p e i c h e r
Deviceinitiated
02
management
03
root@ubuntu1010:~# echo min_power > /sys/class/
scsi_host/host0/link_power_management_policy
04
root@ubuntu1010:~# hdparm I /dev/sda | grep
Deviceinitiated
05
management
www.admin-magazin.de
ADMIN-Magazin fr alle IT-Administratoren
Bei uns wird SICHERHEIT gro geschrieben
KOntaKt
Monitoring
nEwslEttEr
i
storage
abO
Datenbanken
Mailserver
Virtualisierung
Suchen
Diese Website durchsuchen:
Security
Server-Systeme richtig abzusichern
gehrt zu den Hauptaufgaben jedes
Administrators. Sei es durch Firewalls,
Intrusion-Detection-Systeme oder Mandatory Access Control mit SELinux.
Security
ber 100 Ergebnisse!
Suchen
Themen
Windows Verschlsselung Datenbank
IDS Dateisysteme
Linux Monitoring
Storage Webserver
Virtualisierung
oli
ot
F
r,
ilio
b
No
S S D -s p e i c h e r
Tuning
Abbildung 2: Eine etwas vergrerte Spare Area hat positive Auswirkungen. Nutzt man nur 144GB einer 160GB X25-M SSD, steigen I/O Performance und Lebensdauer.
Partition Alignment
Unter Partition Alignment versteht man
das Ausrichten von Partitionen an bestimmten Grenzen eines Datentrgers
[3]. Ein korrektes Partition Alignment
Festplatten und SSDs ist eine solche Partitionierung beginnend bei LBA-Adresse 63
daher sehr problematisch.
Formatiert der Benutzer eine solche Partition mit einem Dateisystem mit einer
typischen Blockgre von 4 KiB, passen
die 4-KiB-Dateisystem-Blcke nicht direkt
in die 4 KiB oder 8 KiB groen Pages der
SSD (Abbildung 3). Beim Schreiben eines einzelnen 4-KiB-Dateisystem-Blockes
mssen dann zwei 4 KiB Pages verndert werden. Erschwerend kommt dabei hinzu, dass die jeweiligen 512-ByteSektoren erhalten bleiben mssen es
kommt damit zu einem Read/Modify/
Write. Die Folge ist eine bis zu 25fach
schlechtere Schreibperformance bei kleinen Dateizugriffen, wie Analysen von
IBM zeigen [5].
Um diese Probleme zu vermeiden, empfiehlt sich ein Alignment auf 1 MiB damit ist man auf lange Sicht auf der sicheren Seite. Mit der aktuellen Adressierung
in 512 Byte groen logischen Sektoren
Abbildung 3: DOS-kompatible Partitionen, die bei LBA Adresse 63 beginnen, fhren zu erheblichen Performance-Nachteilen bei Datenzugriffen.
Abbildung 4: Eine korrekt ausgerichtete Partition bringt optimale Performance bei Lese- und Schreiboperationen.
16
A D M I N -SS D -S p ec ia l
w w w. admin - maga z in . d e
Tuning
Infos:
01
root@ubuntu1010:~# fdisk l u /dev/sda
[1] O
ver-provisioning an Intel SSD :
[http://cachewww.intel.com/cd/00/00/45/
95/459555_459555.pdf]
[2] Secure Erase: [http://www.thomaskrenn.
com/SecureErase]
[3] Partition Alignment:
[http://www.thomaskrenn.com/Alignment]
[4] Ben Martin, RAID-Systeme unter Linux optimal konfigurieren, ADMIN 02/2011, S. 80
[5] Linux on 4KB-sector disks:
[http://www.ibm.com/developerworks/
linux/library/l4kbsectordisks]
[6] LVM Alignment Patch:
[http://www.redhat.com/archives/
lvmdevel/2010August/msg00035.html]
02
03
Disk /dev/sda: 160.0 GB, 160041885696 bytes
04
255 heads, 63 sectors/track, 19457 cylinders, total 312581808 sectors
05
Units = sectors of 1 * 512 = 512 bytes
06
Sector size (logical/physical): 512 bytes / 512 bytes
07
I/O size (minimum/optimal): 512 bytes / 512 bytes
08
Disk identifier: 0x9349dd6c
09
10
Device Boot
11
/dev/sda1
Start
End
Blocks
Id
2048
2457599
1227776
System
HPFS/NTFS
HPFS/NTFS
12
Partition 1 does not end on cylinder boundary.
13
/dev/sda2
2457600
61051349
29296875
14
Partition 2 does not end on cylinder boundary.
15
/dev/sda3
61052928
80582655
9764864
83
Linux
83
Linux
16
Partition 3 does not end on cylinder boundary.
17
/dev/sda4
80582656
312580095
115998720
18
Partition 4 does not end on cylinder boundary.
ATA TRIM
Eine weitere Funktion zur Steigerung der
Performance sowie der Lebensdauer ist
ATA TRIM. Mit dem TRIM-Kommando
teilt das Betriebssystem der SSD mit,
welche Datenbereiche (etwa die Datenbereiche einer gelschten Datei) es
nicht mehr bentigt. Der SSD-Controller
kann damit betroffene Blcke lschen,
w w w. admin - maga z in . d e
S S D -s p e i c h e r
Der Autor
Werner Fischer ist Technology Specialist bei
der Thomas-Krenn AG und Chefredakteur des
Thomas Krenn Wiki. Seine Schwerpunkte sind
die Bereiche Hardware-Monitoring, Virtualisierung, I/O-Performance und Hochverfgbarkeit.
Online-Archiv
NUR
4
PRO MONAT
17
S S D -s p e i c h e r
Securedrive
18
A D M I N -SS D -S p ec ia l
kamphi, 123RF
SSD 007
gewaltsam ffnet. Stellen sie das fest,
beginnt die Selbstzerstrung. Da diese
Sensoren logischerweise Strom bentigen, aber die eingebauten Batterien irgendwann leer sind, haben die Entwickler auch diese Lcke geschlossen: Ist das
Gert entsprechend konfiguriert, zerstrt
es sich auch kurz vor dem endgltigen
Stromausfall selbst!
Schlielich bietet das Securedrive auch
noch die Mglichkeit, ein GSM-Funksignal zu tracken, um den eigenen Aufenthaltsort zu bestimmen. Verliert es
das Signal, weil ein Dieb es ins Auto
packt und damit davonrast, leitet es die
Selbstzerstrung ein. Alternativ lsst sich
die Selbstzerstrung auch aktiv per GSM
starten.
Selbstzerstrung
Das Unbrauchbarmachen des Securedrive
geschieht nach Herstellerangaben innerhalb von 300 Millisekunden und luft in
vier Schritten ab:
ndas Securedrive ndert den gespeicherten Schlssel, was im Fall des
Falles die nachtrgliche Wiederherstellung des Originalschlssels erschweren soll.
ndie Partitionstabelle der SSD wird mit
weiem Rauschen berschrieben.
ndie eingebauten NAND-Bausteine werden physisch zerstrt! (Abbildung 2,
Abbildung 3). Das soll verhindern,
dass die Speicherbausteine ausgebaut
und in einem anderen Board ausgelesen werden knnen.
nauch der Security-Controller wird physisch zerstrt.
Die Preise fr das Securedrive bewegen
sich zwischen 375 englischen Pfund fr
w w w. admin - maga z in . d e
Securedrive
S S D -s p e i c h e r
Fazit
Der Hersteller preist sein Securedrive
als die sicherste Speichertechnologie
der Welt an. Dazu verwendet er nicht
Infos
[1] Digittrade HS256:
[http://www.digittrade.de/shop/
product_info.php/info/p323_DIGITTRAD
EHS256128GBSSDHighSecurityexterneHDDAES256AcronisBackupSoftware.html]
[2] Securedrive: [http://www.securedrives.co.
uk/products/psdseriesexternalhardrive/]
[3] FIPS 140-2: [http://csrc.nist.gov/
publications/fips/fips1402/fips1402.pdf]
ADMIN Online-Archiv
Netzwerk & Security
nur
4,-e*
im Monat
Volltextsuche
Praxisrelevante Themen
fr alle IT-Administratoren
w w w. admin - maga z in . d e
A D M I N -SS D -S p ec ia l
Bestellen
Sie unter: www.admin-magazin.de/archiv
19
S S D -s p e i c h e r
Flashcache
Hochgeschwindigkeit
Festplatten sind heute gnstig, aber immer noch nicht besonders schnell,
SSDs dagegen schnell aber teuer. Der Knigsweg liegt derzeit darin,
beides zu kombinieren und SSDs als schnelle Caches fr Festplatten zu
verwenden. Georg Schnberger
Solid State Drives (SSDs) sind aus modernen IT-Umgebungen nicht mehr wegzudenken. Fr groe Storage-Systeme,
die sowohl mit Kapazitt als auch Performance glnzen sollen, kann eine Ausstattung rein mit SSDs aber schnell sehr
kostspielig werden. Abhilfe schaffen hier
SSD-Caching-Technologien, die eine Art
Hybrid-Speicher bereitstellen.
Traditionelle Festplatten (HDDs) werden
dabei mit SSDs kombiniert und vereinen
die Vorteile beider Welten. Die SSD fungiert als Cache fr die Festplatten und
beschleunigt mit ihrer greren Performance Lese- und Schreibzugriffe. Dieser Geschwindigkeitsvorteil kommt vor
allem dann zum Vorschein, wenn die
typischerweise genutzten Datenmengen
die Gre des Arbeitsspeichers (RAM)
berschreiten, die Gre der SSD jedoch
nicht. Im Regelfall wird ungenutzter Arbeitsspeicher als Page Cache fr die Bufferung von Dateien verwendet. Das Linux
Kommando free m zeigt in der Spalte
cached, wie viele MByte gerade als
20
A D M I N -SS D -S p ec ia l
Facebook-erprobt
Flashcache bietet eine einfache softwarebasierende Lsung fr die Verwendung
eines SSD-Caches. Es wird aktuell von
Facebook entwickelt und aktiv in deren
Serverumgebungen eingesetzt [1]. Bevor
jedoch SSD-Caching fr den eigenen Ge-
w w w. admin - maga z in . d e
Flashcache
Caching-Modi
In Bezug auf die Cache-Art untersttzt
Flashcache drei Varianten: Write-Back,
Write-Through
und
Write-Around
Caching (Abbildung 1) [3]. Der WriteBack-Modus bietet als einziger Modus
die Mglichkeit zur Beschleunigung von
Schreibzugriffen (Writes). Diese Writes
schreibt das Modul im ersten Schritt auf
die SSD und synchronisiert sie spter im
Hintergrund mit der HDD dieser Vorgang wird auch als Lazy Dirty Cleaning
bezeichnet. Diese Dirty Pages sind jene
Blcke, die sich im Cache auf der SSD
befinden, aber noch nicht auf die HDD
geschrieben wurden.
In diesem Zusammenhang zeigt sich die
Wichtigkeit eines redundanten Caches
bei der Verwendung von Write-Back.
Fllt eine SSD aufgrund eines HardwareFehlers aus, gehen die Dirty Pages unwiederbringlich verloren und knnen im
schlimmsten Fall ein ganzes Dateisystem
lahmlegen. Eine redundante Auslegung
der Caching-SSDs, zum Beispiel durch
einen RAID1-Verbund, kann dieses Desaster verhindern. Vorsicht: Wenn eine
SSD des RAID-Verbunds ausfllt, luft
der Write-Back-Modus weiter, einen
automatisierten Wechsel in den WriteThrough-Modus gibt es bislang noch
nicht. Im Fehlerfall ist daher aus Grnden
der Datensicherheit ein rascher Tausch
der defekten SSD ntig.
Wird ein Cache im Write-Through-Modus eingesetzt, schreibt das Modul synchron auf die SSD und die HDD. Der
Geschwindigkeits-Vorteil der SSD kommt
in diesem Fall also beim Schreiben nicht
zur Geltung, da die Zugriffe erst dann
w w w. admin - maga z in . d e
Cache-Persistenz
Zurzeit bleibt nur beim Write-Back-Modus der Cache-Inhalt ber einen Reboot
hinweg erhalten (persistenter Cache).
Dies resultiert daraus, dass Flashcache
nur fr Write-Back Cache-Metadaten auf
der SSD verwaltet. Fr die anderen beiden Modi betreibt es diesen Aufwand zur
Zeit noch nicht. Dieses Fehlen der Metadaten hat nicht nur Nachteile: Fr Dirty
Pages mssen bei einem Write und Clean
immer auch die Metadaten geschrieben
werden. Um nicht jedes Mal fr jeden
Block die Metadaten aktualisieren zu
mssen, gibt es ein Batching fr mehrere
verschiedene Metadaten-Blcke und fr
sequenzielle Updates desselben Blocks.
Bei einem Reboot oder Shutdown des
Hosts werden im Falle von Write-Back
alle Dirty Pages von der SSD auf die HDD
synchronisiert das lsst sich manuell
auch ber dmsetup remove erreichen
(siehe unten). Dagegen entfernt sysctl
(fast_remove) den Cache ohne Synchronisation. Diese Option birgt immer ein
gewisses Risiko, da sich Daten im Cache
befinden, die noch nicht auf der Festplatte gelandet sind.
S S D -s p e i c h e r
Volume-Verwaltung
Flashcache bringt drei KommandozeilenWerkzeuge fr die Administration von
Cache-Volumes mit: flashcache_create,
flashcache_load und flashcache_
destroy. Die Zugehrigkeit zum Device
Mapper (DM) ist der Grund dafr, dass
Cache-Volumes auch via dmsetup verwaltet werden knnten. Die FlashcacheTools erleichtern aber wesentlich den
Umgang, und nur selten wird der Weg
direkt ber den DM ntig sein.
Beim Anlegen eines Caching Volumes mit
flashcache_create sind vor allem der
Caching-Modus (p), die Cache-Gre,
die Block-Gre, ein Volume-Name sowie
die Pfade zur SSD und HDD wichtig.
Wird die Cache-Size (s) nicht angegeben, verwendet Flashcache die gesamte
SSD als Cache-Device fr das Volume.
Ohne Angabe einer Block-Gre (b)
kommt die Standardgre von 4 KByte
zum Einsatz. Listing 1 erstellt ein WriteBack-Cache namens fcroot mit /dev/
sdd als SSD und /dev/sdc als HDD .
Nach dem Aufruf von flashcache_create
erscheint das Volume unter dem Pfad /
dev/mapper/fcroot. Daraufhin kann
man ein Ext4-Filesystem anlegen und das
Volume eingehngen.
Wer sich wundert, warum der Cache
nach dem Mount bereits gecachte Blcke
A D M I N -SS D -S p ec ia l
21
S S D -s p e i c h e r
Flashcache
Zerstrung
Das Kommando flashcache_destroy
zerstrt einen Cache samt all seinen Daten. Ein Entfernen eines Cache-Volumes
erfolgt direkt ber den DM-Befehl dmsetup remove. Der Remove-Aufruf kehrt
fr ein Write-Back-Volume erst dann zurck, wenn alle Dirty Pages auf die HDD
geschrieben sind. Dieses Blockieren garantiert ein sauberes Aushngen des Volumes, das via Load-Befehl spter wieder
geladen werden kann (Abbildung 2).
Fr die berwachung der Cache-Funktion stellt Flashcache mehrere Statistiken
bereit, die sich mit dmsetup status und
dmsetup table anzeigen lassen. Der
Status-Befehl zeigt vor allem die Leseund Schreibstatistiken. Wichtig hierbei
sind zum Beispiel die Angaben zu den
Treffern im Cache (read hit und write
hit percent) oder Lese- und Schreiboperationen auf SSD und HDD (disk/ssd
reads und writes).
dmsetup table beinhaltet dazu noch
einige Konfigurations-Informationen des
Volumes (Listing 2). Von Interesse ist
Tuning
Ein Flashcache-Volume bietet zahlreiche Konfigurationsmglichkeiten ber
sysctl an. Diese Kontroll-Optionen eignen sich nicht nur zum Anpassen eines
Flashcache-Volumes an die eigenen Bedrfnisse, sondern geben auch ntzliche
Informationen ber die interne Funktionsweise. Der folgende Abschnitt zeigt
einige Reprsentanten der Optionen:
Der Sysctl cache_all erlaubt es, das
Caching ein- und auszuschalten. Auf
Black- und Whitelisting von Prozess-IDs
hat diese Option groen Einfluss (siehe
unten). Auch wenn kurzzeitig Test- oder
temporre Daten nicht im Cache landen
drfen, ist es sinnvoll, den Cache zu deaktivieren, um die SSD nicht mit nicht
bentigten Daten zu fllen.
Basierend auf der Storage-Architektur
hinter der SSD, gibt es Szenarien, bei
denen sich ein SSD-Cache negativ auf
die Performance auswirkt. Wird die SSD
als Cache fr ein RAID-Array genutzt,
dessen Durchsatz fr sequenzielle Zugriffe grer ist als jener der SSD, macht
sich der Cache negativ bemerkbar. Das
betrifft Schreib- und Leseoperationen
gleichermaen. Beim Schreiben ist der
Strategien
Die beiden Tuning-Parameter fallow_delay und dirty_thresh_pct sind nur fr
den Write-Back-Modus von Bedeutung.
Wie bereits erwhnt, werden Dirty Pages
im Hintergrund von der SSD auf die HDD
synchronisiert. Die Auswahl der Blcke
erfolgt entweder aufgrund eines Timeouts
(fallow_delay) oder beim berschreiten
eines Schwellwerts (dirty_thresh_pct).
Das Timeout kommt dann zum Zug,
wenn ein Dirty Block im Cache fr lngere Zeit weder gelesen noch geschrieben
wurde. Nach berschreitung dieser Zeit
im Idle-Zustand werden die Block-Daten
auf die HDD geschrieben, und der Block
verliert somit seinen Dirty-Zustand (Idle
Cleaning).
Der zweite Parameter bestimmt den
Prozentanteil an Dirty-Blcken eines
mode(WRITE_BACK)
04
06
08
nr_queued(0)
09
Size Hist: 1024:1 4096:9765813
22
A D M I N -SS D -S p ec ia l
w w w. admin - maga z in . d e
Flashcache
MAGAZIN
Performance
Performance-Messungen mit CachingTechnologien sind schwierig durchzufhren. Vor allem der Weg zu einem
definierten Ausgangszustand ist holprig.
Die erste Hrde stellt sich bereits bei der
Auswahl eines geeigneten BenchmarkWerkzeugs. Der flexible I/O-Tester Fio
meistert sie glnzend, er wurde bereits
im ADMIN 05/2011 vorgestellt [6].
Die Fio-Testdateien auszuwhlen, gestaltet sich ebenfalls als schwierig: Im
Echtbetrieb wird es selten der Fall sein,
dass Daten, die gerade geschrieben worden sind, sofort wieder gelesen werden.
Genau dieses Verhalten simulieren aber
die meisten Performance-Tests. Im Falle
ONLINE
Linux-Magazin newsLetter
informativ
Newsletter
S S D -s p e i c h e r
kompakt
tagesaktuell
w w w. admin - maga z in . d e
www.linux-magazin.de/newsletter
23
A D M I N -SS D -S p ec ia l
S S D -s p e i c h e r
Flashcache
Testsetup
Das Testsetup setzt sich aus folgenden Komponenten zusammen:
nIntel(R) Xeon(R) CPU E5502 @ 1.87GHz
sowie 12 GByte RAM
nIntel Series 320 160 GByte, via Hostprotected-Area (HPA), reduziert auf 32
GByte. Die Reduzierung wurde vor allem
fr die Verkrzung der Performance-Tests
vorgenommen. Normalerweise erfolgt die
Limitierung mittels HPA nur auf 70 bis 80
Prozent [7]
n2 TByte Western Digital WD2002FYPS
Festplatte
nFlashcache Git Commit:
1.0-148-g332fe0fc55ca
n Fio in der Version 2.0.7
nUbuntu 12.04 mit den neuesten Updates
24
A D M I N -SS D -S p ec ia l
Infos
[1] Flashcache:
[https://github.com/facebook/flashcache]
[2] Diagramm des Linux I/O Stack:
[http://www.thomaskrenn.com/en/oss/
linuxiostackdiagram.html]
[3] Flashcache Administrator Guide: [https://
github.com/facebook/flashcache/blob/
master/doc/flashcachesaguide.txt]
[4] Kernel Newbies ber Linux 2.6.37: [http://
kernelnewbies.org/Linux_2_6_37#head5b9d
7940fa4e8294ceaac86a74beb021b2fce3e3]
[5] Flashcache Google Group: [https://
groups.google.com/forum/#!topic/
flashcachedev/I0su4NKPQo]
[6] Martin Steigerwald, I/O-Benchmarks mit
Fio, ADMIN 05/2011:
[http://www.adminmagazin.de/DasHeft/
2011/05/IOBenchmarksmitFio]
[7] SSD Over-Provisioning mit hdparm:
[http://www.thomaskrenn.com/de/wiki/
SSD_OverProvisioning_mit_hdparm]
Der Autor
Georg Schnberger arbeitet als Technology Specialist bei der Thomas-Krenn.AG und ist Autor beim
Thomas-Krenn-Wiki. Seine Arbeitsschwerpunkte
reichen von Informationssicherheit ber Monitoring-Plugins bis hin zu Performance-Tests.
w w w. admin - maga z in . d e
SSD-Nachfolger
S S D -s p e i c h e r
ktsdesign, 123RF
w w w. admin - maga z in . d e
gen, wodurch die Zelle ihren Speicherzustand halten kann. Erst eine relative
hohe negative Steuerspannung leert das
Gate wieder und versetzt die Zelle in den
entgegengesetzten Zustand.
Inhrente Probleme
Mit dieser Funktionsweise verbinden sich
aber auch eine Reihe von Problemen. Damit der Speicherzustand lange gehalten
werden kann, bedarf es einer starken Isolation und um die wiederum beim Schreiben zu berwinden einer hohen Spannung. Eine hohe Spannung aufzubauen
kostet aber Zeit. Deshalb sind Flash-Speicher in der Klasse der Halbleiterspeicher
trotz allem eher lahme Gesellen, um Grenordnungen langsamer als RAM oder
CPU. Auerdem geht bei jedem Schreibvorgang ein winziger Bruchteil der Isolation verloren, sodass sich das Element
A D M I N -SS D -S p ec ia l
25
S S D -s p e i c h e r
SSD-Nachfolger
Polaritt schaltbar
SONOS
Aus diesem Grund hat man
sich schon lange nach alternativen, nicht-flchtigen Speichertechnologien umgesehen.
Die nchstliegende Lsung
orientiert sich sehr stark an
der Flash-Speichertechnik,
verwendet aber Siliziumnitrid statt Silizium fr das Gate.
Seine Molekularstruktur hlt
die Elektronen besser fest,
dadurch kann die Isolierung
dnner ausfallen, man braucht
geringere Spannungen (halb
26
A D M I N -SS D -S p ec ia l
w w w. admin - maga z in . d e
SSD-Nachfolger
S S D -s p e i c h e r
Nanorhrchen
Elektrode
Abbildung 3: Eine Spannung verbiegt die Nanorhre und erhht ihren StromAbbildung 2: Je nachdem, ob die benachbarten Magnete gleich oder entgegenge-
automaten sichern MRAMs den Spielstand gegen Stromausfall. Die Entwicklung wird von groen Konzernen wie
Toshiba, IBM oder NEC vorangetrieben.
MRAMs sind schnell (theoretisch bis zu
1000mal schneller als Flash), preisgnstig
und leistungsarm, erreichen momentan
aber noch nicht die eigentlich mgliche
Packungsdichte und Performance. Ein
Problem bereitet vor allem die gegenseitige Beeinflussung der Magnetpartikel
beim Schreiben, das so genannte magnetische Klingeln. Eine Entwicklung der
Physikalisch-Technischen Bundesanstalt
in Braunschweig hat erst krzlich ein
Gegenmittel vorgestellt.
Einige MRAM-Hersteller prophezeien
einen baldigen Durchbruch im Massenmarkt. So hat Everspin Inc. nach eigenen
Angaben 2011 bereits 3 Millionen MRAMs
ausgeliefert und will es in diesem Jahr auf
5 Millionen bringen und damit DRAMs
Konkurrenz machen.
w w w. admin - maga z in . d e
Widerstandsgedchtnis
Unter dem Namen ReRAM (Resistance
Random Access Memory) oder Memristor
ist eine weitere Speichertechnik schon
weit gediehen. Ihr Funktionsprinzip besteht darin, dass ein Dielektrikum zwischen zwei Elektroden durch Anlegen
einer Spannung so beeinflusst werden
kann, dass es seine Leitfhigkeit ndert.
Durch die Isolierschicht bilden sich leitfhige Kanle, die danach auch ohne Spannung erhalten bleiben. Der Memristor
merkt sich auf diese Weise quasi den
Widerstandswert. Eine umgekehrte Spannung zerstrt die Kanle wieder.
Fazit
Zwar gibt es heute noch keine Technik,
die mit derselben Verbreitung wie Flash
und zu niedrigen Kosten auf dem Massenmarkt verfgbar wre, aber es ist
klar, dass heutige SSDs ihrem Karriereende nhern. Deshalb wird aller Orten
an Alternativen geforscht. Mehrere viel
versprechende Entwicklungen sind schon
weit gediehen. Man darf gespannt sein,
welche Technologie sich zuerst durchsetzt.
n
A D M I N -SS D -S p ec ia l
27