von Josef Doods

hw-p5

In diesem Beitrag zeigen wir Ihnen, wie einfach es ist, eine eigene Archiware P5 Appliance zu bauen. Dazu verwenden wir einen HP ProLiant MicroServer und FreeNAS als Open Source-Betriebssystem. FreeNAS basiert auf FreeBSD und ist ein freies Betriebssystem für Network Attached Storage. Das Einsatzgebiet ist natürlich nicht auf P5 begrenzt. Insbesondere als File-, Print- und Medienserver erfreut sich FreeNAS großer Beliebtheit.  
Das Hauptkriterium bei der Auswahl des Hardware-Herstellers für das Projekt „P5 Appliance“ ist für uns die weltweite Verfügbarkeit der Hardware. Unser Ziel ist es, eine P5 Appliance zu konfigurieren, die überall genauso nachgebaut werden kann. Nachfolgend die Anforderungen an die Hardware im Einzelnen:
  • weltweite Verfügbarkeit und Service
  • niedrige Geräusch- und Wärmeemission und damit büro-tauglich
  • unkomplizierter Aufbau sowie einfacher Einbau/Tausch der Festplatten
  • minimal ein PCI Slot zum Anschluss eines Bandlaufwerkes
Die Wahl fällt auf den HP MicroServer G8, das Einstiegsmodell der ProLiant-Serie von HP. Er erfüllt all unsere Anforderungen und das bei einem sehr guten Preis-Leistungsverhältnis. Die vorhandenen 4 Festplatteneinschübe werden wir mit 4 x 4TB-Festplatten bestücken. Für insgesamt nur ca. 900 Euro bekommt man 10TB RAID-Speicherplatz mit einer sehr ordentlichen Serverleistung. Die niedrigen Kosten sind ein erfreulicher Seiteneffekt der Verwendung von Standardkomponenten. Positiv ist zudem, dass der attraktive Preis nicht zu Lasten des verwendeten Materials oder des internen Aufbaus des Gerätes geht.
Als Betriebssystem für die P5 Appliance haben wir FreeNAS gewählt. FreeNAS ist eine für den Fileserver-Betrieb optimiertes FreeBSD-Derivat. Die Entscheidung für FreeNAS hat folgende Gründe:
  • Es ist in ein freies Open Source-Betriebssystem, das auch kommerziell genutzt wird.
  • FreeNAS lässt sich sehr einfach installieren.
  • Die Konfiguration erfolgt im Browser.
  • ZFS als Snapshot-fähiges Dateisystem, inklusive Kompression und Deduplizierung
Selbstverständlich liegt unser Fokus darauf, eine optimale Plattform für unsere Archiware P5-Produkte zu präsentieren, aber das Einsatzgebiet ist nicht darauf beschränkt.
Beginnen wir mit der Liste der Komponenten für das NAS-System.
  • Hardware:
    • HP ProLiant MicroServer G8 PC-Server System (724145-425)
    • CPU: Intel Celeron G1610T, 2x 2.30GHz, RAM: 4GB
    • Kingston KVR16E11/8 Arbeitsspeicher 8GB (1600MHz, 240-polig, CL11) DDR3-RAM
    • 4 x 4TB Western Digital WD40EFRX-68W Festplatten, NAS zertifiziert
    • ein zuverlässiger USB Stick (z.B. SanDisk Cruzer Fit 16GB)
    • Optional, zum Anschluss einen Bandlaufwerks: HP H222 Host Bus Adapter (650926-B21)
  • Software:
    • FreeNAS 64Bit – http://www.freenas.org/download-freenas-release.html
    • Archiware P5 –  https://www.archiware.com/download

hw-parts

Zusammenbau der Komponenten

  • Einbau der Festplatten: Der HP MicroServer hat 4 Festplatteneinschübe, von dem einer bereits mit einer 1TB-Platte ab Werk bestückt ist. Diese 1TB-Platte ist für unser Projekt zu klein. Wir bestücken alle 4 Einschübe mit den neu erworbenen 4TB Western Digital-Festplatten.
  • Installation der Hauptspeichererweiterung: Dazu öffnen wir die Abdeckung des Gehäuses durch Lösen der an der Rückseite befindlichen blauen Schrauben. Der Gehäusedeckel lässt sich danach nach oben abziehen. Der Steckplatz für das 8GB-Speichermodul befindet sich auf der rechten Seite.
hw-speicher
  • Optional ein SAS Host Bus-Adapter zum Anschluss eines Bandlaufwerkes: Der PCIe-Steckplatz für den SAS-Adapter befindet sich auf der linken Seite. Vor dem Einbau muss die Blindblende entfernt werden.

Installation von FreeNAS

Wie empfohlen, installieren wir das Betriebssystem auf einem USB-Stick und nicht auf einer der internen Festplatten. Damit trennen wir das Betriebssystem von den Nutzerdaten. Die 4 Festplatten können so zu einem ZFS-Pool zusammengefasst werden. Zusätzlich vereinfacht es die Installation und spätere Upgrades. Es kommt ein qualitativ hochwertiger USB-Stick mit einer Mindestkapazität von 16GB zum Einsatz.

Schritt 1: Download FreeNAS

Der kostenfreie Download von FreeNAS steht im offiziellen Downloadbereich der freenas.org bereit. Nach erfolgtem Download wird die ISO-Datei auf eine CD gebrannt.

Schritt 2: Brennen der CD (Mac OS X)

Wir verwenden das Mac OS X-Festplatten-Dienstprogramm, um die ISO-Datei auf eine CD zu brennen. Dazu wird das Festplattendienstprogramm gestartet und die Schaltfläche “Brennen” in der Symbolleiste ausgewählt. Im nachfolgenden Dialog wird die heruntergeladene ISO-Datei ausgewählt und der Brennvorgang gestartet.

Schritt 3: Die Bootreihenfolge überprüfen

Damit nach der Installation auch vom USB-Stick gestartet wird, muss im BIOS die Bootreihenfolge überprüft werden. Mit der Funktionstaste F9 gelangt man am Ende der Hardware-Diagnose ins BIOS-Setup-Menü. In der Standardeinstellung wird zuerst von der CD und danach vom USB-Stick gestartet.

Schritt 4: Installation von FreeNAS

Obwohl die spätere Konfiguration von FreeNAS bequem per Web-Oberfläche erfolgt, ist die Installation zunächst direkt am Server durchzuführen. Alternativ könnten wir auch die HP iLO Management-Schnittstelle nutzen und die Installation per Browser über das Netzwerk vornehmen. Uns erscheint der direkte Weg am Computer jedoch einfacher, da das iLO Management sehr Windows-lastig ist.
Wir starten die Installation, indem wir von der erstellten CD booten.
  • Der Installations-Wizard hilft uns bei der Grundeinstellung von FreeNAS. Wir bestätigen mit “OK”.
  • Wir wählen den USB-Stick zur Installation und bestätigen mit “OK”.
  • Der Wizard warnt davor, dass alle Daten auf der gewählten Partition gelöscht werden. Wir bestätigen mit “Yes”.
  • Als Letztes geben wir das Kennwort für den Administrator “root” ein und bestätigen.
  • Bevor wir nun zum ersten Mal das NAS starten können, muss noch die CD aus dem Laufwerk entfernt werden.
install-5

Schritt 5: FreeNAS-Netzwerkeinstellung

Nach erfolgreicher Installation von FreeNAS wird das System erstmals gestartet.
  • Während des ersten Boot-Vorganges werden Diffie Hellmann-Werte berechnet. Diese werden unter anderem für die Kryptographie-Funktionen von VPNs benötigt. Das Berechnen kann sehr lange dauern! Unsere Erfahrungswerte liegen hier zwischen einigen Sekunden bis zu 10 Minuten.
  • Nach dem Bootvorgang wird das Konfigurationsmenü der FreeNAS-Installation angezeigt. Damit ist für uns die Grundkonfiguration bereits abgeschlossen. Wir belassen es bei der von DHCP ermittelten Netzwerkeinstellung und geben die ausgegebene URL http://192.168.234.173 in den Browser ein.

Schritt 6: Vorbereitung von FreeNAS zur Installation von P5

Die gesamte Konfiguration von FreeNAS findet nun im WebGUI statt. Von dort werden wir nun folgende Einstellungen vornehmen:
  • Ändern der Sprach- und Ländereinstellungen
  • Konfigurieren des SMTP-Mailservers
  • Anlegen eines Benutzerkontos
  • Einrichten der Festplatten
  • Anlegen des P5-Home-Verzeichnisses
  • Aktivieren des SSH-Zugangs

Die erste Anmeldung am WebGUI

Am Ende der Netzwerkeinstellung (vgl. Schritt 5) wurde die URL für das WebGUI ausgegeben. Diese URL geben wir in die Adressleiste des Browsers ein.
  • Zuerst müssen wir das Super-User-Kennwort von “root” eingeben und bestätigen.
  • Danach fordert uns der Initial-Wizard zur Erstkonfiguration auf. Wir verlassen den Assistenten, um die notwendigen Konfigurationsschritte verständlicher beschreiben zu können.
  • Nach der Anmeldung an das WebGUI bringt FreeNAS einige Informationen zum System. Die Oberfläche teilt sich in drei Regionen auf: eine obere und eine linke Navigationsleiste sowie der rechte Hauptframe, in dem alle Konfigurationselemente angezeigt werden. Es ist nicht offensichtlich erkennbar, warum es zum Navigieren in der Konfiguration eine obere und eine linke Navigationsleiste geben muss, zudem sind beide Varianten nicht wirklich benutzerfreundlich konzipiert. Wir wählen die Top-Navigationsleiste, da sie nach unserer Einschätzung etwas klarer strukturiert ist. Vielleicht bietet die linke Navigationsleiste dem Power-Anwender später mehr Möglichkeiten.
  • Wir beginnen die Konfiguration mit den Sprach- und Ländereinstellungen. Die entsprechenden Parameter befinden sich in den Einstellungen unter [System][General]. Wir ändern nur die Zeitzone auf Europa/Berlin und belassen die GUI-Sprache auf Englisch.
  • Damit wir Protokolle und Meldungen, die vom NAS als E-Mail verschickt werden, auf unser E-Mail-Konto erhalten, muss der SMTP-Mailserver entsprechend eingestellt werden. Zu beachten ist der Hinweis, dass die E-Mail-Adresse vom root-Benutzer auf die gewünschte Zieladresse angepasst werden muss. Anmerkung: Erst nach Eingabe der E-Mail-Adresse, im darauf folgenden Schritt, kann die SMTP-Einstellung mit der “Send Test Mail”-Funktion getestet werden.
  • Anpassen der E-Mail-Adresse vom root-Benutzer:
  • Als nächster Schritt folgt das Anlegen eines Benutzerkontos. Dafür wechseln wir in den Einstellungsbereich [Account][Users] und klicken auf die Schaltfläche [Add User].
  • Und nun zur Kernaufgabe eines NAS Systems – die Speicherverwaltung: Das Einrichten und Administrieren der Festplatten ist eine der zentralen Aufgaben bei der Konfiguration von FreeNAS. Als Dateisystem wird ZFS verwendet. ZFS ist aber weit mehr als “nur” ein Dateisystem. Ein paar Hintergrundinformationen:
    Fast alle Dateisysteme werden in Partitionen von Festplatten angelegt. Ein zusätzlicher Volume-Manager bietet die Möglichkeit, mehrere Festplatten zusammenzufassen, die aber wiederum in Partitionen für Dateisysteme resultieren. Allerdings sind diese Partitionen sehr statisch und unflexibel, wenn es darum geht, die Größe anzupassen.
    Um die Nachteile der physischen Partitionen zu umgehen, bietet ZFS ein eigenes Speichermanagement. Ein zentrales Element ist dabei der ZFS Storage-Pool. Er fasst im einfachsten Sinne mehrere Speicherbereiche zu einem Speicherpool zusammen. Dieser Speicherpool wird dann allen Dateisystemen zur Verfügung gestellt, ohne diese größentechnisch einzuschränken. Natürlich gibt es Quotas für die Organisation der Verteilung, aber prinzipiell teilen sich alle Dateisysteme den freien Speicherplatz. Eine weitere Besonderheit von ZFS ist das integrierte Soft-RAID. Der Speicherpool bildet sogenannte Redundanz-Gruppen, die jeweils aus mehreren physischen Datenträgern bestehen können. ZFS stellt unterschiedliche RAID-Level zur Auswahl:

    • RAID-0 (Striping) – Daten werden auf mehreren Festplatten verteilt. Vorsicht, es bietet keine Datensicherheit.
    • RAID-1 (Spiegelung) – Zwei (oder mehr) Festplatten bilden eine gespiegelte Redundanz-Gruppe.
    • RAID-Z – Vergleichbar mit RAID-5, verteilt es eine Paritätsinformation über alle Festplatten, so dass eine Platte ausfallen könnte. Dieser RAID-Level wird sehr oft verwendet, da er ein ausgewogenes Verhältnis zwischen Kosten, Kapazität, Geschwindigkeit und Sicherheit bietet.
    • RAID-Z2 – Vergleichbar mit RAID-6, verteilt es die Paritätsinformation doppelt über alle Festplatten, so dass zwei Platten ausfallen könnten.
    • Zusätzlich bietet ZFS die Möglichkeit, verschiedene RAID-Level miteinander zu kombinieren, mit dem Ergebnis die Datensicherheit bzw. die Performance zu steigern. Auch können Spare-Platten einem RAID hinzugefügt werden, die beim Ausfall einer Platte sofort als Ersatz eingebunden werden.
  • Wir binden unsere 4 x 4TB-Festplatten zu einem RAID-Z-Pool. Das bietet für unsere Belange ausreichend Sicherheit und eine gute Performance. Falls eine Platte ausfällt, informiert FreeNAS uns per E-Mail, und wir werden umgehend die defekte Platte austauschen (soweit der gute Vorsatz).
    Zuerst überprüfen wir, ob alle 4 Festplatten auch wirklich von der Hardware und von FreeNAS erkannt werden. Dazu wechseln wir in den Einstellungsbereich [Storage] und klicken auf die Schaltfläche [View Disks].
  • Nachdem alle Festplatten ordnungsgemäß von FreeNAS erkannt werden, erzeugen wir einen RAID-Z-Speicherpool. In dem Einstellungsbereich [Storage] klicken wir diesmal auf die Schaltfläche [Volume Manager].
    Wir geben unserem ersten Speicherpool den Namen “awpool”. Um die maximale Anzahl der verfügbaren Festplatten diesem Pool zuzuweisen, wird der Schieberegler ganz nach rechts gezogen, bis alle vier Platten selektiert sind. Als RAID-Level wählen wir RAIDZ und klicken dann auf die Schaltfläche [Add Volume].
  • Der Volume-Manager erzeugt einen RAID-Z-Pool und legt sofort ein erstes Dataset (Dateisystem) an. Unter FreeNAS wird es unter “/mnt/awpool” eingehängt. Dieses erste Dataset entspricht auch dem Toplevel-Verzeichnis des Pools, in das alle weiteren Datasets (Dateisysteme) erzeugt und eingehängt werden. Bevor wir ein weiteres Dataset anlegen, schalten wir noch die Kompression vom “awpool” aus, da es für unseren Einsatzzweck besser ist, die Kompression im Bedarfsfall für ein einzelnes Dataset wieder einzuschalten.
    Als Nächstes ist ein Home-Verzeichnis für Archiware P5 zu erzeugen. Dazu selektieren wir das Dataset “awpool” und klicken auf die Schaltfläche [Create Dataset] unten in der Symbolleiste.
  • Als Dataset-Namen geben wir “aw” ein. Noch ein wichtiger Hinweis: Auch bei diesem Dataset wird die Kompression ausgeschaltet, da sich diese negativ auf die Indexierung auswirken würde.
    Abschließend klicken wir auf die Schaltfläche [Add Dataset]. Der Vorgang erzeugt ein Dataset unter “/mnt/awpool/aw”. In diesem Verzeichnis werden wir, wie im nächsten Abschnitt beschrieben, P5 installieren.
  • Der letzte Schritt in unserer Basiskonfiguration ist die Aktivierung von SSH, das wir zur Installation von P5 benötigen.
    Dazu wechseln wir in den Einstellungsbereich [Services] und starten [SSH], indem wir am Ein-/Ausschalter auf [On] klicken. Dann muss noch der SSH-Login für den root-Benutzer erlaubt werden, was durch Klicken auf das [Werkzeug]-Symbol rechts neben dem Ein-/Ausschalt-Symbol erfolgt.

Schritt 7: Die Installation von P5

Nach Abschluss der im vorherigen Absatz beschriebenen Basiskonfiguration, können wir nun Archiware P5 installieren. Unser Plan ist, diese P5 Appliance für das Backup einiger Arbeitsplätze mit Backup2Go zu nutzen. Auf dem angeschlossenen LTO6-Bandlaufwerk sollen außerdem Daten von einem Mac Pro-Server gesichert werden.
Für den Zugriff per SSH auf den NAS-Server benötigen wir einen entsprechenden SSH-Client. Unter Windows könnte man z.B. das Programm PuTTY verwenden, das man aber extra installieren muss. Bei Mac OS X ist es einfacher, da das Terminal-Programm bereits vorhanden ist.
In der nun anschließenden Terminal-Sitzung vollziehen wir die folgenden Schritte:
  • Anmeldung als Administrator “root” per SSH an das FreeNAS
  • Kontrolle, ob das P5 Home-Verzeichnis angelegt worden ist
  • P5 herunterladen und installieren
  • die erste P5-Browser-Session
  • Zunächst melden wir uns als Administrator “root” per SSH an das FreeNAS an.
$ ssh -l root 192.168.234.173
  • Beim Verbindungsaufbau zum SSH-Server wird der SSH-Fingerabdruck verglichen. Bei der ersten Anmeldung müssen wir diese Verbindung mit “yes” bestätigen.
The authenticity of host '192.168.234.173 (192.168.234.173)' can't be established.
RSA key fingerprint is fc:08:bd:ef:23:ca:2f:00:38:b9:7f:cd:52:86:7b:4c.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.234.173' (RSA) to the list of known hosts.
root@192.168.234.173's password: *********
FreeBSD 9.3-RELEASE-p13 (FREENAS.amd64) #0 r281084+3df1120: Thu Jun  4 01:00:51 PDT 2015

	FreeNAS (c) 2009-2015, The FreeNAS Development Team
	All rights reserved.
	FreeNAS is released under the modified BSD license.

	For more information, documentation, help or support, go here:
 	http://freenas.org
Welcome to FreeNAS
  • Nach erfolgreicher Anmeldung überprüfen wir, ob alle Dateisysteme (Datasets) wie erwartet eingehängt sind.
# df -k
  • Für die P5-Installation sollte es ein Dataset “/mnt/awpool/aw” geben. Es sind natürlich weitere Dateisysteme vorhanden, die aber für unser Projekt unwichtig sind.
Filesystem             1024-blocks   Used       Avail Capacity  Mounted on
freenas-boot/ROOT/default 30210449 520682    29689766     2%    /
devfs                            1      1           0   100%    /dev
tmpfs                        32768   5396       27372    16%    /etc
tmpfs                         4096      8        4088     0%    /mnt
tmpfs                      4130116  36304     4093812     1%    /var
freenas-boot/grub         29696714   6948    29689766     0%    /boot/grub
awpool                 10958491296    139 10958491157     0%    /mnt/awpool
awpool/aw              10958491296    139 10958491157     0%    /mnt/awpool/aw
  • Nach dem Wechsel in das Installationsverzeichnis starten wir den Download von P5 aus dem Internet.
# cd /mnt/awpool/aw
# wget http://awdist.archiware.com/awpst521.tgz
  • Das Programm “wget” zeigt den Fortschritt des Downloads an.
--2015-08-10 14:23:29--  http://awdist.archiware.com/awpst521.tgz
Connecting to awdist.archiware.com (awdist.archiware.com)|54.240.166.29|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 142101618 (136M) [application/x-gzip]
Saving to: 'awpst521.tgz'
          100%[==========================================>] 135.52M   594KB/s   in 4m 7s  

2015-08-10 14:27:37 (561 KB/s) - 'awpst521.tgz' saved [142101618/142101618]
  • Nach Beendigung des Downloads wird das Archiv mittels tar entpackt. Mit dem “ls” lassen wir uns den Inhalt anzeigen.
# tar xzf awpst521.tgz
#
# ls
./              README*         lib/            restart-server*
../             awpst521.tgz    license.txt*    servers/
.preinstall*    binaries/       log/            start-server*
.prestart*      etc/            modules/        stop-server*
ChangeLog*      install.sh*     ping-server*    uninstall.sh*
  • Als letzten Schritt der P5-Installation rufen wir nun das “./install.sh” Skript auf.
# ./install.sh

        ArchiWare PresStore Installation Menu
        -------------------------------------

         1)      Install or configure the application server

        99)      Quit

Your choice: 1

Please enter free TCP port for the 'lexxsrv' server.
Note that you must enter a free and valid TCP port.
We will not check wether the port is ok to use or not. 

TCP port for the 'lexxsrv' server [8000]: 

Arranging for server to start/stop at power cycle
Added /etc/rc.d/lexx
Added lexx_enable="YES" to /etc/rc.conf

Use: "/mnt/awpool/aw/start-server" to start the software
Use: "/mnt/awpool/aw/stop-server" to stop the software


        ArchiWare PresStore Installation Menu
        -------------------------------------

         1)      Install or configure the application server

        99)      Quit

Your choice: 99
  • Nun können wir P5 manuell starten und den automatischen Start/Stop in das FreeNAS eintragen. Die entsprechenden Aufrufe dafür stehen in den Zeilen 22 bzw. 23 der vorherigen Shell-Ausgabe. Da wir nach der Installation uns noch im aw-home-Verzeichnis befinden, starten wir P5 mit dem Aufruf “./start-server”.
# ./start-server
  • Beim erfolgreichen Start von P5 wird auch die URL ausgegeben, über die der Applikations-Server jetzt erreichbar ist. Wie bei unserer Installation kann es möglich sein, dass P5 beim Starten keine primäre Netzwerkschnittstelle findet und sich wie üblich auf allen vorhandenen Schnittstellen registriert. Für eine erste P5-Session geben wir im Browser die gleiche Adresse wie beim Konfigurieren des FreeNAS GUI plus der für P5 typischen Portnummer 8000 ein: http://192.168.234.173:8000/login
 
Starting PresStore application servers, be patient...
  lexxsrv pid: 39027 (version "5.2.1" running)
  lexxsrv url: http://127.0.0.1:8000/login (use web-browser to connect)
Started 1 from 1 application servers.

  • Die erste P5-Browser-Session:
gui-14-p5login
  • Abschließend ist nun nur noch dafür zu sorgen, dass P5 automatisch beim Booten von FreeNAS gestartet und, sobald das System ausgeschaltet wird, gestoppt wird. Dazu wechseln wir in den Einstellungsbereich [Tasks][Init/Shutdown Scripts] und klicken dort auf die Schaltfläche [Add Init/Shutdown Script].
  • Der Eintrag zum Stoppen von P5 beim Ausschalten:

Fazit

Unsere Archiware P5-Appliance ist ein wirkliches Multi-Talent. Sie ist für alle P5-Produkte sofort einsetzbar. Damit aber nicht genug: Auch als Fileserver auf Basis von FreeNAS ist die Appliance vielen “handelsüblichen” NAS-Systemen deutlich überlegen. Mit ZFS steht nicht nur ein attraktives Dateisystem zur Verfügung, sondern darüber hinaus ein leistungsstarkes Speichermanagement sowie ein in ZFS integriertes Soft-RAID.
Wir freuen uns, wenn wir mit diesem Blog Ihr Interesse geweckt haben, eine eigene P5 Appliance zu bauen.

Build Your Own Archiware P5 Appliance – German
Tagged on:             
en_US