VPS Anbieter Unterschiede und Werbeversprechen – Contabo, Strato, Ionos, Netcup [Kommentar]

Mein letzter VPS Serververgleich liegt schon ein paar Jahre zurück. 2020 hatte ich Strato und Contabo im getestet. In den letzten Wochen habe ich wieder einen Vergleich zwischen verschiedenen Anbietern (Strato, Contabo, Ionos und Netcup) durchgeführt und wie auch schon 2020 gibt es recht viele Unterschiede zwischen den Anbietern, die man bei oberflächlicher Betrachtung der Rahmendaten (Virtuelle CPU Kerne, RAM, Speicherplatz) nicht vermutet.

Nachdem ich beim letzten Vergleich schon meine Erfahrungen mit Virtuozzo Virtualisierung gemacht hatte, habe ich dieses mal vorher geprüft, ob die Anbieter KVM nutzen.

Unterschiede in Kurzform:

Strato (VC1-1)Netcup VPS 200 G10Contabo VPS-XS, VPS-S, VPS-L (sowohl AMD als auch Intel und SSD und NVMe)Ionos VPS XS
generische AnbieterdomainNeinJaJaNein
RettungssystemJa, Gparted 1.4.0 (sehr gut)Ja, aber quasi unbrauchbar, da vollkommen veraltet, GPARTED 0.25Ja, mehrere Qualität ok, aber verbesserungsfähigNein
IPV6nur eine AdresseJa, beliebig vieleJa, beliebig vieleNein
Beliebige ImagesNeinJaNeinNein
SnapshotsNeinJa, Online mit Warnungen und Offline, es wird Serverspeicherplatz genutzt, das wird aber vom gehosteten Linux nicht erkannt (gefährlich), man kann zwischen Snapshots vor und zurück wechseln, mit verschlüsselten Laufwerken kann man die Platznutzung durch Snapshots nicht erkennenJa, ohne Nutzung des Serverspeicherplatzes, Rollback löscht folgende SnapshotsNein
Performanz 1 Kern Sysbench (Limit 10000)2863701Intel 683 / AMD 15823170
Multicore pro Kern Sysbench (Limit 50000)336115Intel 135 / AMD 198352
IO Random Read / Write – Read AnteilAnfangs, 150. dann 502939125, vermutlich analoger Abfall wie bei Strato
IO Random Read / Write – Write AnteilAnfangs 90 dann 30192683 vermutlich analoger Abfall wie bei Strato
VirtualisierungKVMKVMKVMKVM
Voller Root ZugriffNur theoretisch, Linux verhält sich atypisch (die boot Partition lässt sich nicht ändern, Cloud Init und Zusatzskripte, bei Installation von Anwendungen)JaJaJa
KonsolenzugriffBrowserSeparates browserbasiertes Fenster (deutlich besser als bei Strato und Ionos)Beliebige VNC Software, deaktivierbarBrowser
Zusätzliche Firewall vor ServerJaJaNeinJa
Identische PlattformConfig Files mit Namen Ionos, Performanz ist identischSiehe Strato
Plesk enthaltenJaNeinNeinJa
Reverse DNSNur IPV4!, somit heutzutage unbrauchbar. Mit nerviger A Record Prüfung, wenn man mehrere Server IP Adressen für eine Domain nutzt, ist es Glückssache, ob es funktioniertnicht getestetIPV4, IPV6 freie Einträgenicht getestet
EinrichtungsprozessRecht flottrelativ flott aber nur mit vorherigem Anruf, vorher erfolgt keine Einrichtung, somit ist die Einrichtung immer ein manueller Prozess (zumindest beim ersten Server)Recht flott, so lange man keine Sonderwünsche hat, die manuelle Bearbeitung kann Tage dauernRecht flott

Performanz:

V Kerne

Was man an obigen Beispielen sieht, ist dass man den Vergleich der CPU Kerne nur innerhalb eines Anbieters nutzen kann. Contabo bietet zwei Plattformen (AMD und Intel). Die Intel Plattform beruht auf einer älteren Generation von Servern. Das heißt die alte Generation von Intel Prozessoren bietet gerade mal ein viertel der Leistung der Plattform die Ionos / Strato für die Virtualisierung nutzt.

Das bedeutet bei der alten Generation von Contabo ergibt sich ein Verhältnis von Faktor 4 zu der aktuellen Generation der CPUs von Strato / Ionos. 4 Kerne auf der Intel Architektur bei Contabo entsprechen einem Kern bei Strato / Ionos. Das gleiche gilt für Netcup, die offenbar auch eine recht alte Architektur nutzen. Bei der AMD Architektur von Contabo ist es noch Faktor 2, der Contabo von Ionos und Strato trennt. Als Kunde von Contabo zahlt man für beide Architekturen das gleiche, bekommt mit AMD aber die doppelte Leistung.

Kern Überbuchung

Wie auch schon beim letzten Test sind V-Kerne keine physischen Kerne, sondern nur Hyperthreading Kerne. Der Kunde bekommt somit die Leistung eines halben CPU Kerns.

Generell gilt, dass die VPS Überbucht sind. Das heißt der Anbieter verkauft mehr Kerne als die Prozessoren haben. Wenn alle Kunden somit gleichzeitig die Leistung abrufen, wird man weniger bekommen als einem rechnerisch zusteht. Wie stark die Anbieter überbuchen weiß man als Kunde nicht.

Faktisch kann es also passieren, dass man deutlich weniger Leistung erhält als gedacht. Die Anbieter versuchen im Marketing den Eindruck zu erwecken, dass es nicht so ist aber wenn man zwischen den Zeilen liest, erkennt man schnell die Unterschiede. Einige Anbieter bieten auch Virtuelle Server, bei denen einem Leistung dediziert zusteht. Das ist bei VPS V-Kernen nicht der Fall.

SSD vs. NVMe

Wie man an obigen Beispielen sieht kann man den Unterschied getrost als Marketing abtun. Ich habe bei Contabo einen VPS mit NVMe Speicher gebucht, der langsamer war als die SSD Server bei Random Read und bei Ionos / Strato hatte ich auch NVMe Speicher, die nicht viel schneller waren als die von den SSD Servern. So gesehen ist das Marketing der Anbieter recht dreist, wenn beim Kunden (fast) nichts von der vermeintlichen Mehrleistung ankommt.

Generell ist das was die Anbieter als SSD Leistung anbieten viel langsamer als alles was man zu Hause im eigenen Rechner nutzt. Selbst eine per USB3.0 angebundene SATA SSD ist locker doppelt so schnell als die Anbindung in allen VPS Servern, die ich getestet habe. Dabei ist es egal, ob es sich um NVMe oder SSD Server handelt.

Bei neuen VPS befindet man sich oft als erster Kunde auf der Hardware und somit hat man die volle Leistung für sich alleine. Das pendelt sich aber recht schnell ein und dann sinkt die Performanz in der Regel erheblich.

Performanzfazit

Faktisch muss einem klar sein, dass die Performanz von VPS Servern deutlich schwanken kann, dafür sind sie auch etwas günstiger als dedizierte Hardware oder dedizierte virtuelle Server. Bei Contabo habe ich mit diversen VPS getestet, insofern kann man schon grobe vergleiche ziehen. 20% sind aber durchaus eine mögliche Schwankungsbreite bei der Geschwindigkeit.

Support / Hilfe:

Ionos und Strato haben bei meinem Test recht schnell reagiert, wenn auch mit eher durchwasener Qualität. Bei Ionos hat man vermeintlich einen persönlichen Ansprechpartner, geantwortet haben aber immer andere Personen. Der persönliche Ansprechpartner ist primär Marketing.

Bei Contabo hat durch die massive Expansion der Support stark gelitten. Aktuell ist es eine Glücksfrage, ob man qualifizierten Support bekommt.

Bei Netcup hatte ich abseits der Einrichtung keinen Kontakt zum Support.

Die Hilfeseiten / Dokumentationen sind bei allen Anbietern durchwachsen. Bei Strato, Ionos war die Hilfe teilweise vollkommen veraltet, nicht passend zum Produkt oder es gab verschiedene Einträge, bei denen die Produktzuordnung vollkommen unklar war.

Verfügbarkeit:

Bei Contabo weiß ich durch mehrere Server und da ich seit einigen Jahren Kunde bin, dass Downtimes extrem selten sind. Unangekündigte Downtimes hatte ich noch nie. Bei Strato bin ich nun auch Kunde und werde die Situation länger beobachten, bisher ist mein Minijumphost aber stabil.

Eigener Server zu Hause:

Eine weitere Möglichkeit ist der Betrieb eines Server zu hause am eigenen Anschluss. In der Regel erlaubt euch das euer Festnetzvertrag nicht. Das vorweg, so lange ihr aber keine sehr hohen Datenraten habt, wird das ggf. nicht auffallen, wenn ihr an einen Webserver am Privatanschluss betreibt und keine sehr hohen Besucherzahlen habt.

Diese Variante würde ich aber nur empfehlen, wenn ihr einen recht schnellen Internetanschluss am besten Glasfaser mit hohen Uploadraten habt. Ansonsten fühlt sich eure Webseite sehr langsam an.

Die Komplexität ist bei dieser Variante aber höher, da ihr keine feste IP Adresse habt und moderne Anschlüsse teilweise nur noch IPV6 Adressen bieten, müsst ihr mehr Aufwand betreiben (Stichwort Jumphost mit VPS mit fester IPV4 / IPV6).

Günstiger ist die Variante bei den Stromkosten ggf. auch nicht immer, dafür könnt ihr frei die Hardware zusammenstellen. Ein Odroid H3 oder ein Raspberry Pi 5 können mit den VPS recht gut mithalten und bewegen sich bei den Stromkosten in einem überschaubaren Rahmen. Zuletzt hatte ich das mit einem Odroid H2+ oder dem Raspberry Pi 4 getestet, aktuell nutze ich einen Odroid H3 für diese Variante aber nur zum Testen und als Privatserver. Der Blog befindet sich nach wie vor auf einem VPS.

Ein weiterer Vorteil ist, dass ihr die Hardware nicht mit anderen Teilt. Aus Sicherheitsaspekten ist die Variante aber gefährlicher, weil Angreifer ggf. auch in euer Heimnetz kommen, wenn  sie den Server kapern können (das kann man auch absichern mit doppelten Firewalls bzw. getrennten Netzzonen, treibt die Komplexität aber weiter nach oben).

Fazit:

Die Anbieter unterscheiden sich erheblich, obwohl die oberflächlichen Werbeversprechen sich stark gleichen.

Strato ist mit dem Wechsel von Virtuozzo nach KVM deutlich interessanter geworden, allerdings sind Themen wie kein “Reverse für IPV6” oder “nur eine IPV6” für mich nach wie vor Showstopper. Für Anfänger sind Themen wie Plesk als Administrationspanel ggf. auch ein Thema, da das den Einstieg in die Linux Welt erheblich vereinfachen kann.

Ich nutze mittlerweile Webmin oder direkte Linux Befehle aber das ist etwas in das man sich ohne Linux Kenntnisse erst einarbeiten muss und optisch ist Plesk schicker, wenn man auch eingeschränkter ist. Die Angebote für 1-2€ pro Monat sind bei Strato sehr gut, für einen WordPress Blog oder einen Webserver reicht der 2€ Server in der Regel locker aus und ist auch recht performant. Das man keine Snapshots hat, ist das für Anfänger aber eher problematisch. Strato hat aber aktuell mit Abstand die Performanzkrone (Ionos auch, aber da passt leider vieles andere nicht).

Ionos fand ich in diesem Vergleich enttäuschend. Dafür, dass sich der Anbieter als Partner für Unternehmen positioniert, ist das Angebot extrem schlecht. Es gibt kein Bootrettungsmedium, keine IPV6 Adressen und zusätzlich noch deutlich weniger Ressourcen zum gleichen Preis.

Für mich ist in Summe nach wie vor Contabo das beste Gesamtpaket, wenn man keine ganz kleinen Server will .

Wenn es mehr IP Adressen sein sollen (IPV6, Reverse Einträge und Snapshots, die gerade für Anfänger hilfreich sind), dann kommen Contabo oder Netcup in Betracht. Die Umsetzung von Snapshots bei Netcup finde ich aber seltsam bis gefährlich. Dafür sind bei besteht bei Netcup aber die Möglichkeit z.B. von ISO Images zu installieren. Das ist bei Contabo so nicht möglich und man muss mit Workarounds arbeiten, sofern man nicht die vorgegeben Images nutzen möchte (die sollten aber im Regelfall reichen).

Da zumindest bei meinem Testserver von Netcup die Preise höher und die Leistung schlechter war, ist das aber für mich aktuell keine Alternative. Darüber war ich überrascht, da die Kundenmeinungen über Netcap im Schnitt recht gut sind, basierend auf Performanz ist die Bewertung aber offenbar nicht erfolgt.

Samba Performanz [Kommentar]

Wie ich vor einer Weile festgestellt habe, ist Samba bei Übertragungen von einzelnen Dateien eben auch auf einen Prozessorkern beschränkt. Gerade bei NAS Geräten, die in der Regel nur wenig Prozessorpower pro Kern haben ist das eher problematisch. Bei meinem Odroid H2+ heißt das im Klartext, dass nur 600 bis 1000 MBit/s (darunter befindet sich ein btrfs Dateisystem mit Komprimierung, die Geschwindigkeit steigert sich aber nicht, wenn ich das Dateisystem ohne Komprimierung einhänge, die Daten die übertragen werden sind aber bereits komprimiert, insofern sollte die Btrfs komprimierung sich auch von selbst deaktivieren) genutzt werden können, wenn keine parallelen Übertragungen stattfinden, sondern nur eine Datei geschrieben wird.

FTP als Alternative?

Als Alternative habe ich somit FTP getestet und komme auf 1,8 GBit/s. Da FTP bei einem NAS aber nicht so wirklich praktisch / komfortabel ist und an vielen stellen auch nicht unterstützt wird (z.B. Multimediageräte wie SAT Receiver), wäre es natürlich schöner, wenn man SMB beschleunigen könnte.

Somit bin ich auf diesen Artikel bei heise gestoßen. Dummerweise hatte ich auf meinem Ubuntu 20.04 noch eine Version kleiner als 4.12 installiert (Randnotz, der heise Artikel geht vor anderthalb Jahren noch von einer “schnellen” Verbreitung aus). Somit blieben zwei Möglichkeiten. Variante 1 ist selbst Samba zu kompilieren (dafür muss man eine Menge Pakete installieren – in meinem Fall rund 140 Pakete) oder eben eine aktuellere Ubuntu Version ohne long term support.

Mein erster Versuch war also der make from scratch Ansatz.

Seltsame Fehler

Das hat zwar funktioniert aber nachher hat der samba Service den Status:

sys_path_to_bdev() failed for path [.]

ausgegeben. Das kam mir seltsam vor. Somit bin ich zu einem vorherigen Stand zurückgekehrt und habe mich entschlossen auf eine neuere Ubuntu Version zu wechseln. Die Kurzform ist: Der Fehler besteht in allen neueren Samba Versionen (möglicherweise nur, wenn man btrfs als Dateisystem nutzt). Es gibt zwar Ansätze das zu beheben (zusätzliche Mountpunkte in der fstab datei) aber auf solche Bastelansätze nur für Samba kann ich auch verzichten.

Performanz Tuning

Also habe ich beschlossen den Fehler zu ignorieren. Wenn er quasi jeden Nutzer betrifft, dann besteht ja die Hoffnung, dass sich irgendwann mal jemand darum kümmert. Wobei die Chancen wohl nicht so riesig sind, wenn der Fehler in Samba schon lange vorhanden ist.

Somit habe ich Neugierig einen neuen Performanztest gemacht und dabei festgestellt, dass ich nichts von den ach so tollen Geschwindigkeitssteigerungen (verringerter Overhead durch Kernel Support via io_uring und Nutzung der schnelleren Verschlüsselung durch Gnutls) lt. Heise Bericht merke.

Wenn man sich den Heise Bericht genauer durchliest, hat man aber auch eher den Eindruck, als wenn eine Pressemitteilung abgeschrieben wurde. Es wird zwar io_uring erwähnt aber nicht, dass das z.B. extra konfiguriert werden muss oder wie.

In meinem Fall mit btrfs und io_uring z.B. so:

[backup]
writeable = yes
path = /data/backup
vfs objects = btrfs, io_uring
btrfs: manipulate snapshots = no
valid users = xyz
writeable = yes
write list = xyz,@xyz
# smb encrypt = required
smb encrypt = desired
force user = xyz

Spezielle Netzwerkkarten für Multikernnutzung oder direkten Speicherzugriff

Eine Alternative zu obigem Ansatz, der bei mir leider nichts gebracht hat, ist die Nutzung von speziellen Netzwerkkarten, die RSS oder RDMA nutzen (die meisten Adapter können das nicht bzw. die Intel Chips wie der 225V können es wohl aber es wird bewusst nicht unterstützt). Somit bleiben z.B. die AQtion Chips übrig, die aber kaum verbaut werden. RSS funktioniert auch nur, wenn sich die entsprechenden Chips beidseitig genutzt werden. Dabei wird die Kommunikation aufgeteilt und somit die Last auf mehrere Prozessorkerne verteilt. Allerdings auch für das Speichermedium. Gerade bei Festplatten hat das also auch Nachteile wegen den dadurch entstehenden verteilten Zugriffen und Kopfbewegungen.

Weitere Informationen siehe auch hier. Bei stärkerer Verbreitung (Linux Kernel 5.15) ggf. auch KSMBD. Der Ansatz hört sich vielversprechend an. Dabei zieht SMB in den Kernel um und soll dadurch schneller werden.

Fazit:

Wer denkt, dass heute Mehrkernnutzung eigentlich selbstverständlich ist, wird bei SMB mal wieder eines besseren belehrt. Es kommt in dem Fall auf einen Kern an. Erstaunlich finde ich, dass man im Netz so wenig Infos dafür findet. Jeder mit einem NAS > 1 GBit sollte damit Probleme haben, wenn SMB genutzt wird und gerade im Windows Kontext gibt es dazu keine echten Alternativen, die auf breiter Basis von vielen Geräten unterstützt werden. Bei Backupsoftware wird teilweise nicht mal FTP unterstützt, geschweige denn NFS oder andere Ansätze.

Erstaunlich finde ich bei solchen Themen immer, dass die kaum jemandem auffallen. Das ging mir damals bei Intel Prozessoren auch schon mal so (5930K und Single Core Last). Gefühlt kauft jeder die dickste Kiste aber ob es dann nachher auch Leistung bringt, prüft scheinbar fast keiner. 😉

Odroid H2+ Performance [Kommentar]

Nachdem ich schon einen Beitrag zum Thema Raspberry Pi (ARM) vs. VPS Server gepostet hatte, habe ich nun auch noch den Odroid H2+ gekauft. Somit bieten sich ein paar ergänzende Benchmarks an.

Um das Ergebnis vorweg zu nehmen der Odroid H2+ ist rund doppelt so schnell.

Die Benchmarks:

Odroid H2+ Geekbench 5

Sysbench CPU Odroid H2+

Sysbench CPU

Sysbench Memory Odroid H2+

Sysbench Memory

Sysbench IO Sequential write (BTRFS mit Kompression, Luks Verschlüsselung, NVMe) Odroid H2+

Sysbench IO Sequential write (BTRFS mit Kompression, Luks Verschlüsselung, NVMe)

SQL / PHP Performance Odroid H2+

SQL / PHP Performance

Backup mit Komprimierung mit einer konventionellen Festplatte als Ziel Odroid H2+

Backup mit Komprimierung mit einer konventionellen Festplatte als Ziel

Sysbench IO lineares lesen mit Luks Verschlüsselung und BTRFS Komprimierung Odroid H2+

Sysbench lineares lesen

Sysbench IO Random Read / Write Luks BTRFS Komprimierung Odroid H2+

Sysbench Random Read / Write mit Luks verschlüsselung und BTRFS Komprimierung

Cryptbench Odroid H2+

Cryptbench

Fazit:

Durch die x86 Kompatibilität lässt sich problemlos jede Software im Linux Bereich nutzen und sogar Windows 10 läuft problemlos. Der Speicher kann nach eigenen Wünschen angepasst werden (bis 32GB) und somit können sogar virtuelle Maschinen genutzt werden.

2 SATA Festplatten können direkt verwendet werden und mit 2×2,5 Gbit Netzwerk ist die Grundlage für ein NAS vorhanden.

Die CPU bietet im Gegensatz zum PI Hardwarebeschleunigte Verschlüsselung.

Es gibt ein UEFI BIOS und somit kann auch Linux oder andere Betriebssysteme ohne Spezualbootloader installiert werden.

Für mich ist der Odroid H2+ der bessere Raspberry Pi. Der Odroid H2+ ist zwar deutlich Teurer aber eben auch deutlich flexibler. Der Idle Verbrauch ist aber nicht deutlich höher.

Das hängt aber wirklich vom Anwendungsfall ab. Der Pi leistet für seinen Preis durchaus erstaunliches.

Wenn ihr mit dem Raspberry Pi oder einem VPS vergleichen wollt, könnt ihr das hier machen. Der VPS ist etwas flotter aber viel ist es nicht.

 

DIY NAS ein Network attached Storage im Eigenbau [Kommentar]

Vorüberlegungen

Dieses Jahr wird wohl als das DIY Jahr in die Geschichte eingehen. So viel Zeit für Projekte (@Corona) hatte ich noch nie.

Bisher habe mich immer von der NAS Thematik abgesehen. Das hatte verschiedene Gründe. Bei mir ist der primäre Einsatzzweck das Backup mehrerer Rechner.

Festplatten sind heute oft deutlich schneller als 1 Gbit Netze (das theoretische Maximum liegt bei einem Gbit Netz bei 125 MB/s, praktisch sind es oft eher 90 MB/s, eine Moderne Festplatte schafft heute ca. 250 MB/s). Somit war die per USB 3.0 angebundene Festplatte immer die deutlich flottere Alternative und zudem deutlich günstiger als ein NAS.

Weiterhin benötigt ein NAS ständig Strom, erzeugt Wärme und Geräusche. Festplatten können einen gerade im Wohnbereich auf Dauer nerven, wenn sie mit kleinen Lüftern kombiniert werden und rund um die Uhr laufen. Beides ist in NAS oft der Fall.

Seit längerer Zeit stehen bereits 10 Gbit Netze zur Verfügung aber die Kosten sind immens, wenn man mehrere Rechner vernetzen will. Ein Switch kostet je nach Portanzahl gerne mal mehrere hundert Euro und braucht aktive Belüftung und oft 30 oder 40 Watt Strom. Zusätzlich erzeugen diese Switches Lärm. Diese Variante war für mich absolut unattraktiv.

Es gibt zwar auch optische Switches (SFP+) für 10 Gbit im Bereich von 120€ aber dafür sind mir keine USB Adapter als Gegenstück bekannt. Somit braucht man zusätzliche Transceiver z.B. für Odroid H2+ und z.B. ein evtl. vorhandenes Notebook und somit treibt man den Preis schnell wieder deutlich in die Höhe.

Update 04.10.2021 Mittlerweile bekommt man 5 Port RJ45 10GBit Switches für 275€ mit bis zu 10 Jahren Garantie und ohne Lüfter.

Update Ende

Update 30.09.2022 Mittlerweile gibt es einen SFP+ Thunderbolt Adapter von QNAP, der als Gegenstück für eine 10 GBit Netzwerkkarte mit SFP+ Anschluss dienen kann. Auch Switches mit 4x SFP+ und diversen 1GBit Ports oder auch andere Konstellationen sind im bezahlbaren Rahmen von unter <275€ und mit passiver Kühlung verfügbar.

Update Ende

Seit einer Weile stehen nun 2,5 Gbit Netze bzw. Geräte für 2,5 Gbit zu günstigeren Preisen zur Verfügung. Je Rechner kann man für einen USB Adapter ca. 40€ veranschlagen. Seit wenigen Tagen steht auch der erste bezahlbare Switch für ca. 115€ zur Verfügung (QNAP QSW-1105-5T 5 Port).

Da ich mit dem Raspberry Pi bereits experimentiert hatte und bereits feststand, dass ich einen Minirechner für Linux, Spielereien und Backup nutzen möchte, war der Schritt zum Eigenbau-NAS ziemlich klein.

Warum ein NAS?

Ein NAS hat den Vorteil, dass man von x Stellen darauf zugreifen kann. Statt lokal USB Platten anzustöpseln (für den Hauptrechner, für den Zweitrechner, für das Notebook, für den SAT Receiver, usw.) hat man nur noch eine zentrale Datensammlung die im gesamten Heimnetz verfügbar ist.

Theoretisch benötigt man somit weniger Festplatten und lokale Datensilos. Dazu kommt, dass man mit dem Dateisystem freie Hand hat. Während man bei Windows auf NTFS beschränkt ist und beim SAT Receiver ggf. auf Spezialformate (siehe Technisat), hat man in der Linux Welt die freie Auswahl und kann moderne Systeme mit Copy on Write und Komprimierung nutzen.

Weiterhin braucht man nicht überlegen wo die Daten liegen, wenn man ein zentrales NAS für die Ablage nutzt (Festplatte A, Festplatte B oder doch irgendwo anders?). Heute ist es in der Regel so, dass die meisten Geräte eh per LAN verkabelt sind, somit ist der Schritt die Datenablage auch per Netzwerk anzubinden konsequent.

Was kostet ein DIY NAS?

Die Hardware:

  • Odroid H2+ (ca. 140€ – nicht mehr erhältlich / Odroid H3 ca. 205€)
  • RAM 32GB Ripjaws 2400 (ca. 100€, 8-16GB reichen auch, wenn  man nicht virtualisieren will und ZFS als Dateisystem ausschließt)
  • NVMe SSD WD SN550 (70€ 0,5TB bis 120€ 1TB) – Update 31.12.2021 mittlerweile ersetzt durch SATA SSD 2TB (ca. 180€)
  • Festplatten je nach Bedarf (in meinem Fall alte WD 4TB und neue Seagate Exos X14 mit 12TB für ca 300€) – Update 31.12.2021 mittlerweile wurden die beiden vorgenannten Festplatten ersetzt durch 2x 18TB Segate Exos (aktuell ca. 600€ für die beiden HDDs)
  • Gehäuse Kolink Satellite (ca. 40€)
  • Netzteil, Kabel, Schalter (40€)
  • 3D Druck Boardhalter und Mini-ITX-Blende (ca. 25€)
  • Noctua Lüfter 120mm 5V – NF-F12 5V (20€) – Update 31.12.2021 Nach Update mit 2 modernen Festplatten habe ich zusätzlich vorne einen zweiten Lüfter verbaut. Die Lüfter laufen beide mit Minimaldrehzahl von 300 RPM und nur, wenn die Festplatten aktiv sind, oder der Odroid H2+ / H3 eine gewisse Mindesttemperatur überschreitet (somit 40€)
  • Sharkoon HDD Vibe Fixer (15€)
  • Bereits vorhanden (zwei weitere Rahmen wie Sharkoon, Metallbleche, Schrauben und Befestigungsmaterial)

Abzüglich der Festplatte rund 500€

Dafür bekommt ihr:

  • Ein Dateisystem eurer Wahl btrfs / ZFS / ext4
  • 32GB für virtuelle Maschinen oder viel Platz für Zwischenpuffern von Daten (der Odroid ist für Textverarbeitung, Tabellenkalkulation, im Internet surfen, Mails als vollwertiger Desktop Ersatz nutzbar). Selbst Windows 10 lässt sich problemlos installieren (das habe ich selbst bisher nicht gemacht aber Videos dazu gesehen).
  • 2×2,5 Gbit Schnittstellen (einschließlich Link Aggregation was einem aber mangels passenden Switches eher wenig nützt)
  • Maximale Flexibilität (beliebige Software, 10 Gbit Erweiterung über NVMe Karte oder über NVMe Karte 6 SATA Anschlüsse)
  • Die NVMe SSD könnt ihr auch gegen eine Karte tauschen, mit der weitere SATA Festplatten angesteuert werden können. Dann ist eher der direkte Vergleich mit einem fertig NAS gegeben oder ihr könnt alternativ Port Multiplier nutzen, um aus den 2 SATA Anschlüssen z.B. 4 zu machen.

Und ein NAS von der Stange?

Am ehesten vergleichbar ist aktuell der QNAP TS-453D-4G. Der bietet 4 Bays (also doppelt so viel wie der Odroid H2+ Anschlüsse hat, 2×2,5 Gbit, 4GB Ram statt 32GB, keine 1TB SSD für das Betriebssystem) ein vorgegebenes Betriebssystem und ausschließlich ext4 als Dateisystem.

Die Kosten liegen bei rund 600€. Wenn man die SSD und den RAM in dem Beispiel oben raus rechnet (das entspricht dann dem QNAP), gut 300€ mehr als der Selbstbau aber dafür mit Anschlussmöglichkeiten für zwei weitere Laufwerke.

Der Adapter für 4 weitere Laufwerke über den NVMe Anschluss kostet rund 40€ und dann braucht man für das Betriebssystem ggf. einen 64GB eMMC Baustein statt der NVMe SSD oder man nutzt eine SATA SSD. D.h. für 75 – 100€ (on Top auf die 300) hat man quasi die gleiche Ausstattung wie der QNAP, liegt also 200€ günstiger mit deutlich mehr Flexibilität.

Wie sieht das DIY NAS aus?

Odroid H2+ von unten

Mein erster 3D Druck Auftrag (ich habe mich für die günstigste Variante entschieden, wie man an der Druckqualität erkennt). Das Material ist aber hinreichend stabil, wenn auch kein optisches Highlight. Odroid H2+ von unten mit Boardhalter und WD SN550 1TB NVMe SSD für das Betriebssystem und zwei mal 16GB RAM

Odroid H2+ von oben

Odroid H2+ von oben mit Powertaster und Board als 3D Druck

Odroid H2+ im Gehäuse verbaut

Odroid H2+ in eingebautem Zustand im Mini-ITX Gehäuse. Sagen wir es sieht semiprofessionell aus. Das Loch für den Schalter nach dem 3D Druck einzubringen war keine gute Idee, dafür ist das Material nicht stabil genug gewesen, da der 3D Druck nicht massiv war (das hängt vom Material ab und wie hoch die Füllung ist). Somit ist etwas ausgebrochen aber mit Etwas Ponal lies sich das beheben. 🙂

Seitenansicht Gehäuse Kühlung, Odroid H2+ Festplattenbefestigung

Seitenansicht. Links Odroid H2+ auf 3D Druck Halter befestigt an den Mini-ITX Befestigungsbohrungen. Rechts Sharkoon Vibe Fixer, auf dem ich mit den Blechen noch zwei weitere HDD Halter befestige. Die starren Füße am Vibe Fixer habe ich später noch durch Gummipuffer getauscht. Am Lüfter befindet sich ein Blech um einen Teil der Luft auf den Odroid H2+ zu lenken. Der Hauptteil der bewegten Luft geht Richtung HDDs.

Gehäuse von oben ohne Festplatte

Gehäuse von oben ohne Festplatte

Von oben - die oberste Festplatte von dem potenziellen 3er Stapel

Von oben – die oberste Festplatte von dem potenziellen 3er Stapel

Gehäuse von seitlich oben mit Odroid H2+ und Festplattenhalterung

Fast finaler Ansatz des Aufbaus: Geändert habe ich die Befestigungsrahmen der Festplatten. Oben nutze ich noch zwei Rahmen ohne die Gummiringe als Befestigung. Die Platten sind unten mit Gummischeiben unter den Festplatten verschraubt. Das hat zu viele Vibrationen erzeugt. Somit habe ich die Rahmen durch andere mit Gummiringen zur Aufhängung der Festplatten ersetzt.

Finaler Aufbau mit beiden Festplatten frei hängend und Gummipuffern unten drunter.

Finaler Aufbau mit beiden Festplatten frei hängend und Gummipuffern unten drunter.

Geschlossenes Koling Satellite Gehäuse von oben

Geschlossenes Gehäuse von oben

Geschlossenes Koling Satellite Gehäuse von vorne

Geschlossenes Gehäuse von vorne

Die Temperaturen:

Die Seagate ist heliumgefüllt und somit effizienter als die alte Western Digital Festplatte. Die Seagate bewegt sich beim Temperaturbereich zwischen 35 – 40°C je nach Last. Die WD bei ca. 5°C mehr (Zimmertemperatur ca. 25°C und 800 RPM Lüfterdrehzahl).

Der Odroid H2+ liegt bei ca. 30°C an den drei Boardsensoren im Leerlauf. Die CPU Sensoren bei 45°. Der Lüfter ist dabei angenehm leise. Bei Datenübertragung gehen die Kerne auf 65°C hoch und sind somit noch weit vom kritischen Bereich von 95°C entfernt.

Das kann man von den Festplatten in Kombination mit dem Gehäuse leider nicht sagen. Obwohl die Platten maximal entkoppelt sind, ist das Blech so dünn, dass es durch das Geräusch der Festplatten angeregt wird und dieses eher verstärkt. Das kann einem bei geringer Entfernung gerade bei der alten WD auf den Senkel gehen.

Da ich die Festplatten aber nach 10 Minuten in den Standby schicke ist es nicht so dramatisch.

Update 30.09.2020: Ich habe später das komplette Gehäuse noch mit selbstklebenden Bitumenmatten ausgekleidet, die Schwingungen minimieren.

Der Stromverbrauch:

Im Idle mit Samba, Apache, Nginx, Mysql, Firewall, DHCP, Bind, Webmin, Webadm, Slapd, Openotp, Elasticsearch, Memcached, PHP, Redis, Proftp, TS3 Server, Opendkim, Postfix, Dovecot, Openvpn, SSH-Server.

    • WD, Seagate, Odroid H2+, Ubuntu 20.04, USB Stick, MicroSD Card Reader, 1Gbit USB Netzwerkadapter, NVMe SSD, 4 Port USB 3.0 Hub, Lüfter – 21 Watt
    • WD, Odroid H2+, Ubuntu 20.04, USB Stick, MicroSD Card Reader, 1Gbit USB Netzwerkadapter, NVMe SSD, 4 Port USB 3.0 Hub, Lüfter – 18 Watt
    • Seagate, Odroid H2+, Ubuntu 20.04, USB Stick, MicroSD Card Reader, 1Gbit USB Netzwerkadapter, NVMe SSD, 4 Port USB 3.0 Hub, Lüfter – 12 Watt
    • Odroid H2+, Ubuntu 20.04, USB Stick, SD Card Reader, 1Gbit USB Netzwerkadapter, NVMe SSD, 4 Port USB 3.0 Hub, Lüfter – 9 Watt
    • Odroid H2+, Lüfter, NVMe SSD, Ubuntu 20.04 ca. 6-7 Watt
    • 4 Port USB 3.0 Hub, USB Stick, MicroSD Card Reader ca. 1 Watt
    • 1 GBit USB Adapter ca. 1 Watt
    • WD ca. 9 Watt (Idle) – lt. Datenblatt 8,1 Watt
    • Seagate ca. 3 Watt (Idle) – lt. Datenblatt 5 Watt (nach 2 Minuten ca. 3 Watt mit Idle_B, das habe ich gemessen)

An dem Beispiel sieht man wie viel Strom alte Festplatten benötigen. Die Seagate hat interne Sparmechanismen, die gegriffen haben und ohne externe Tools bereits den Stromverbrauch senken.

Die Performanz:

  • Lokale SSD in Windows PC über Netzwerk auf NVMe SSD mit Windows Explorer (Luks, Btrfs, ZSD1 Komprimierung) in der Spitze ca. 220MB/s, Einbrüche auf 70 MB/s, im Durchschnitt ca 175 MB/s (das Limit ist in dem Fall dank schlechter Parallelisierung der Btrfs Komprimierung der Prozessor des Odroid, die Verschlüsselung sollte dank Hardwareunterstützung keine Rolle für die Performanz spielen)
  • NVMe SSD (Luks, Btrfs, ZSD1 Komprimierung) auf lokale SSD auf dem Windows PC mit dem Windows Explorer in der Spitze bis 290 MB/s, im Schnitt ca. 200 MB/s (wo das Limit in dem Fall liegt ist mir nicht klar, der Odroid Prozessor ist nicht ausgelastet mit der Dekomprimierung, in der Vergangenheit habe ich aber bereits beobachtet, dass der Windows Explorer limitiert)
  • Die iperf3 Messungen waren für mich überhaupt nicht nachvollziehbar. Der i225V schafft in Senderichtung zum Odroid ca. 2,4 Gbit, die Realtek Chips kämpfen mit bescheidenen Treibern. Je nach Version (habe ich 2,15 Gbit) geschafft und das waren nicht die aktuellen Treiber von Realtek, sondern die automatisch von Windows installierten Treiber. In der Gegenrichtung Odroid nach PC liegt das von mir erreichte Maximum bei ca. 1,5 Gbit (unabhängig davon ob Realtek oder Intel auf dem PC die Gegenstelle gebildet haben). Sehr dubios. Update 18.08.2021 – Nun sind die Treiber für die Realtek Chips im Ubuntu Kernel enthalten, bei einer aktuellen Messung Realtek zu Realtek komme ich in beide Richtungen in etwa auf 2,25 Gbit gemessen mit iperf – also nicht die 3er Version und default Einstellungen – bei iperf3 ergibt sich noch immer das ungleiche Bild, dass ich oben beschrieben habe) Update Ende

Anmerkung: Ich rate davon ab über den QNAP QSW-1105-5T 5 Port sowohl Internet als auch den NAS Verkehr laufen zu lassen. Wenn man die Leitung zum NAS auslastet sind die Latenzen enorm. Stattdessen sollte man dafür einen separaten Adapter nutzen (1 Gbit per USB reicht vollkommen). Einige PCs bieten heute auch schon zwei Netzwerkschnittstellen an, dann ist kein Zusatzadapter erforderlich.

Ich habe übrigens auch BTRFS ohne Komprimierung getestet. NTFS war extrem lahm (liegt vermutlich am Linux Treiber), FAT32 und ext4 waren bei den Tests auch nicht schneller als BTRFS mit Komprimierung.

Der praktische Nutzen:

Der Nutzen muss sich final noch erweisen. Unter Linux ist er definitiv gegeben weil man dort immer ohne Probleme auf das NAS zugreifen kann. Bei True Image wird das NAS nicht automatisch gefunden. Bevor man im Notfall lange rumbastelt und das irgendwie Treiber integriert, nimmt man schnell mal wieder die USB Platte und schwups schon war das NAS für die Katz.

Dazu kommt, dass die Qualität bei Acronis True Image leider von Version zu Version und von Upgrade zu Upgrade sehr stark schwankend ist. Für Rescuemedien müssen Treiber für die jeweiligen Netzwerkchips hinzufügt werden. Selbst die 2020er Version findet weder den Intel 225V (2,5 Gbit), noch den 219V (1 Gbit), noch den Realtek 8156 (2,5 Gbit). Selbst wenn die Netzwerkchips per Treiber gefunden sind, muss man manuelle Schritte durchführen, damit das NAS erkannt wird. Die Performanz ist bei den Rescuemedien generell schlecht und reizt nicht mal ein Gbit LAN aus, was die Performanzgewinne partiell wieder aushebelt.

Update 04.10.2021: Die Performanz ist wohl nicht alleine ein Problem von True Image (auch aber eben nicht nur). Der Odroid hat pro Kern eine überschaubare Rechenleistung. Samba nutzt in der Regel (Ausnahme: Stichwort RSS fähige Netzwerkadapter) nur einen Kern (Details siehe hier). Die Samba Versionen kleiner 4.12 sind zudem noch langsamer als die aktuelleren Versionen (Wechsel der Verschlüsselungstechnik). True Image läuft per FTP Anbindung an den Odroid deutlich schneller. Dann allerdings nur FTP (non secure), also nur für das interne Netz geeignet. Diesbezüglich ist Acronis ziemlich vorsintflutlich unterwegs. Mit FTP bekomme ich ca. 1,8 GBit hin mit den 2,5 Gbit Adaptern und meiner Festplatte. Mit einem 2,5 GBit Adapter und Samba 4.13 gehen mit Glück etwas mehr als ein GBit mit True Image. Mit einem 10GBit Netz erreiche ich rund 2,5 Gbit netto. Sehr seltsam das Ganze. Acronis ist daran aber offenbar auch nicht unschuldig, denn mit einem Filetransfer über den Windows Explorer auch mit Samba erreicht man locker die Maximalgeschwindigkeit einer Sata SSD. eigentlich sollte man meinen das Acronis identische Werte erreicht.

Ich habe mittlerweile auch eine große Blu Ray / UHD Sammlung auf das NAS überspielt. Das NAS hält somit über 300 Filme und gut 700 Serienfolgen vorrätig.

Update Ende

Zusammenfassung:

Abseits von einer manuellen Ubuntu Installation mit allen Einzelkomponenten kann man für den NAS Einsatzzweck auch Fertiglösungen wie z.B. Freenas nutzen, verliert damit aber wieder einen Teil der Flexibilität.

Der Odroid H2+ ist über den NVMe Slot recht flexibel. Es lässt sich auch 5Gbit (USB) oder 10Gbit (NVMe) Ethernet nachrüsten. In letzterem Fall allerdings nur mit 2 SATA HDDs oder mit Port Multipliern (wobei Port Multiplier nur für 2 HDD pro Port Sinn machen, wenn parallele Zugriffe erfolgen – ansonsten verliert man zu viel Performanz – d.h. mit Port Multipliern kommt man auf insgesamt 4 HDDs). Das sollte für die meisten Setups ausreichend sein.

Für mich ist der Odroid H2+ aktuell das beste NAS, sofern man maximal 2-4 HDDs dauerhaft betreiben möchte. Darüber hinaus ist ein professionelles NAS je nach Anwendungsfall ggf. besser geeignet.

Update 04.10.2021: Ich habe mittlerweile einen SATA Port Replikator im Odroid H2+ getestet. Bis 4 Laufwerke sollte es bei Festplatten keinen Performanzverlust geben (also 2 an jedem Port). Allerdings wird das von der Stromversorgung wohl ziemlich grenzwertig sein je nach HDDs und Anlaufstrom der Festplatten. Man kann zwar ein etwas größeres Netzteil nutzen (bis ca. 80 – 100 Watt) aber es gibt es Limits für den Odroid H2+ bei der Stromversorgung pro Port und somit auch insgesamt. Ich habe neben den beiden HDDs eine SSD angeschlossen (2xHDD an einem Port mit Port Multiplier, SSD an dem anderen – das läuft problemlos). Die M2 SSD ist nun rausgeflogen und dafür ist eine 10GBit Netzwerkkarte rein gekommen, die über einen M2 > PCIe 4x Adapter mit Kabel von ADT-Link angeschlossen ist. Die Wärmeentwicklung bei den Karten von Asus / TP-Link mit dem AQC 107 ist zwar nicht gering aber passiv kühlbar und der Odroid H2+ kann die Karte locker versorgen.

10GBit Karte mit AQC107 von Asus am Odroid (der Stromadapter wird benötigt, fehlt aber im Foto noch)

10GBit Karte mit AQC107 von Asus am Odroid (der Stromadapter wird benötigt, fehlt aber im Foto noch)

Auf dem Kopf, das NAS ist umgedreht, die SSD befindet sich an einem regulären 2,5" Einbauplatz des Gehäuses

Auf dem Kopf, das NAS ist umgedreht, die SSD befindet sich an einem regulären 2,5″ Einbauplatz des Gehäuses

Und noch mal auf dem Kopf, der Port Multiplier befindet sich oberhalb der zwei Festplatten

Und noch mal auf dem Kopf, der Port Multiplier befindet sich oberhalb der zwei Festplatten

Port Multiplier von oben, rechts daneben die SSD

Port Multiplier von oben links, rechts daneben die 2TB SSD

Update Ende

Update 30.09.2022: Ich bin mittlerweile auf SFP+ Netzwerkkarten mit dem AQC100S umgestiegen, weil dieser deutlich weniger Strom verbraucht. Die oben gezeigte Asus Karte benötigt ca. 6-7 Watt und wird verhältnismäßig warm. Der AQC100S benötigt weniger als ein Watt. D.h. selbst mit DAC Kupfer oder AOC Lichtleiterkabel kann man pro Port grob 1 Watt rechnen. Dementsprechend bleibt auch der Kühler viel kälter, obwohl er viel kleiner ist.

Nach meinen Tests funktionieren folgende PCIe Karten mit dem Odroid H2+:

  • Zyxel XGN100F / Trendnet TEG-10GECSFP (Version v2.0R) – beide SFP+ und mit dem AQC100S (Stromverbrauch ca. 1 Watt)
  • Asus XG-C100C – RJ45 (Stromverbrauch ca. 6 Watt)

Nicht funktioniert hat bei mir die Delock 89100, obwohl sie auch auf dem AQC100S basiert.

Update Ende

Als einzigen Fehler beim Kauf meiner Komponenten würde ich ggf. das Gehäuse einstufen. Allerdings stellt sich die Frage, ob man dann nicht in ganz anderen Preisregionen landet, wenn man ein Gehäuse mit dickerem Blech oder gar Dämmung möchte. Ich habe zumindest nichts besseres entdeckt was kompakt und günstig ist. Bessere Gehäuse kosten dann eher das doppelte (z.B. Fractal Design Node 304 – und die Standardkabel für den Odroid könnten dann zu den Festplatten bereits etwas kurz sein) und sind auch größer. Wer allerdings auf meine Bastelei zur Festplattenbefestigung von oben verzichten möchte, kann die Festplatten in dem genannten Gehäuse direkt befestigen.

Um das Gehäuse wirklich beurteilen zu können, muss man das aber in der Realität begutachten und nicht nur anhand von Fotos im Netz.

Ich habe im Nachgang noch etwas Dämmmaterial in mein Gehäuse eingebracht und die klappernden Staubfilter entfernt, die eh so große Löcher hatten, dass sie quasi wirkungslos sind.

Fazit:

Ob man ein NAS “braucht” ist individuell sehr unterschiedlich. Das selbstbau NAS ist deutlich flexibler als die Lösung von der Stange aber eben auch um einiges aufwendiger.

Ich finde den Odroid H2+ absolut klasse, aber nicht unbedingt primär als NAS. Sehr viel mehr als Minicomputer für Windows, Linux oder als Server, wofür die meisten NAS nur sehr bedingt geeignet sind. Der NAS Part ist für mich eher ein mitgenommenes Abfallprodukt, dass ich gerne dazu nehme.

Update: Im Nachgang zum Test sind auch einige kleine Barebones / NICs z.B. mit Tigerlake CPUs erschienen, die ggf. deutlich mehr Rechenpower liefern und auch 2,5 GBit Adapter zur Verfügung stellen. Preislich dürfte man in vergleichbaren Regionen landen. Die Kühlung bei derartigen Geräten ist aber oft sehr laut, da sehr kleine Lüfter verwendet werden. Zusätzlich benötigt man dann noch ein externes Gehäuse z.B. mit USB 3.0 Anbindung für die Festplatten.

Raspberry Pi 4b als Webserver für einen WordPress Blog [Kommentar]

Nachdem ich bei ersten Performancetests festgestellt habe, dass sich der Pi im Vergleich zu einem VPServer recht gut schlägt. Bzgl. der Einrichtung mit dem btrfs Dateisystem in einem verschlüsselten Luks Device habe ich auch einen Beitrag geschrieben aber wie sieht es mit den praktischen Nutzungsmöglichkeiten aus?

Der erste Ansatz war einen vorhanden VPServer vollständig zu kopieren. Das funktioniert aber aufgrund der unterschiedlichen Architektur (Arm / x86) nicht. Da ich auf dem VPServer Ubuntu 20.04 LTS nutze und das auch auf dem Pi verfügbar ist, lag eine Neuinstallation mit Ubuntu 20.04 nahe.

Ich will in dem Artikel nicht auf den Installationsprozess eingehen. Ubuntu installiert sich mit dem bereitgestellten Image quasi von allein und danach verhält sich das Pi Ubuntu weitgehend wie ein normales Ubuntu.

Ein Unterschied ist das Cloudinit, was die IP Adresse zum Beispiel per DHCP bezieht und wo abweichend vom Ubuntu Standard (netplan) die IP vergeben wird und auch geregelt wird, dass zum Beispiel der Root Zugriff per SSH nicht erlaubt ist. Wer an den Ubuntu Standardstellen danach sucht wird nicht fündig.

Abseits davon funktioniert aber fast alles was ich benutze und das ist einiges. Es gibt einzelne Binaries oder Pakete, die nicht für die Arm Architektur vorliegen.

Was geht?

Ich habe im folgenden Text zwei Screenshots der Diensteüberwachung in Webmin eingefügt. Eine Variante ist der VPS und die andere der Pi. Wie ihr erkennt fehlen zwei Prozesse. Webadm und Teamspeak. Es geht also eine ganze Menge. Fail2Ban funktioniert auch, der ist nur gerade deaktiviert.

Neben den aufgeführten Prozessen / Programmen ist z.B. Nextcloud (private Cloud), WordPress (Blog), Roundcube (Webmail), PHP Admin (grafische Datenbankadministration) auf dem Server. Bei WordPress funktioniert nach bisherigen Tests alles. Ich konnte bisher keine Probleme finden.

Raspberry Pi 4 Dienste:

VPS x86 Dienste:

Was geht nicht?

Folgende Anwendungen habe ich für Arm nicht gefunden:

  • Webadm / Rcdevs – Open Otp 2-Factor Authentification – kann man ersetzen durch das Google Gegenstück. Webadm ist vielfältiger und bietet deutlich mehr Optionen, dafür ist das Google Gegenstück viel schneller eingerichtet und reicht in der Regel aus. Mittlerweile habe ich mit dem Google Authentificator sogar XRDP zum Laufen bekommen (dort hat man nur ein Feld für beide Faktoren – somit muss die Software damit umgehen können, dass man beides PW und Token in ein Feld eingibt).
  • Teamspeak
  • Google Pagespeed Plugin
  • Collabora Office (eine von zwei Varianten der Online Bearbeitung ermöglicht). Only Office (das ist einfacher in Nextcloud zu integrieren) ist aber verfügbar
  • Geekbench
  • Elasticsearch (das ist für die Suche in Nextcloud erforderlich) lässt sich nicht automatisch installieren. Es gibt aber Guides mit denen es funktioniert.

Abseits von Teamspeak (wenn man einen entsprechenden Server betreiben will) ist das alles verschmerzbar bzw. keine große Einschränkung. O.g. Anwendungen lassen sich zwar ggf. über Virtualisierung verwenden aber da der Pi limitierte Ressourcen hat, macht das aus meiner Sicht wenig Sinn.

Update 03.07.2020:

Eine Alternative zum Raspberry Pi ist der Odroid H2(+). Der beruht auf x86 Architektur und somit muss man nichts neu installiert werden, wenn man schon einen entsprechenden Server hat.

Der Odroid hat mehr als doppelt so viel Rechenpower als der Pi 4b und der Preisunterschied hält sich je nach Setup in grenzen. Beispielsweise kann man direkt eine M2 NVMe SSD nutzen und kann somit das externe USB Gehäuse einsparen. Mittlerweile würde ich also zum Odorid greifen statt zum Pi.

Weiterhin laufen alle Programme uneingeschränkt.

Empfehlungen:

Für einen kleinen Webserver braucht man nicht viel Geld ausgeben. Der Pi liegt bei 60€ in der 4GB Variante. Die sollte es für den Zweck schon sein.

Eine microSD liegt je nach Größe im Bereich von 10 bis 25€ je (32GB z.B. 10€ und 128GB z.B. 25€). Man sollte darauf achten, dass die Schreibrate so hoch liegt, dass sie den Pi nicht ausbremst. Ich verwende zum Beispiel die Sandisk Pro Extreme. Die spezifische Marke ist egal.

Man sollte aber trotzdem auf ein Markenprodukt achten, da die microSD nicht für dauerhaftes Schreiben (Logging) ausgelegt sind, dass aber bei Linux fast immer irgendwo passiert, besonders wenn man viele Anwendungen nutzt. Somit bleibt die Hoffnung, dass die Markenprodukte länger halten. Beim Dauerbetrieb muss man lt. einem Benutzerbericht ca. nach zwei Jahren mit dem Ableben rechnen. Dann ist es gut, wenn man dann eine (halbwegs aktuelle) Kopie hat.

Aus dem Grund schadet auch nicht einen USB microSD Kartenleser zu kaufen (ca. 10€ – der aktuell verfügbare Mobile Mate wird unter Ubuntu erkannt) und eine zweite Karte als Backup. Das Backup kann man automatisieren (zum Beispiel tägliche Kopie auf die zweite SD mit Rsync bei der nur Änderungen synchronisiert werden – wenn man die microSD klont (Befehl dd) muss man aber vorsichtig sein, weil direkt danach die UUIDs identisch sind. Das kann zu unerwünschtem Chaos führen). Wenn man wiederum die UUID ändert, kann es sein, dass man auch eine neue initramfs erstellen muss.

Somit gibt es zwei Varianten unter Linux:

  • Klonen der microSD (nach dem klonen und vor dem nächsten Reboot entfernen und dann in gewissen
  • Rsync, davor kann initial geklont werden (dd), danach die UUID / PARUID anpassen und die initramfs aktualisieren. Anschießend täglich oder wöchentlich per rsync aktualisieren (nur das Delta).

Im besten Fall tauscht man dann beim Ableben einfach die microSD Karte und schon geht es weiter.

Wenn man nicht gerade Nextcloud mit vielen Daten auf den Pi verfrachten möchte kommt man mit der 32GB Karte aus.

Zusätzlich ist ein Netzteil (ca. 10€) und ein HDMI (<10€) Kabel fällig.

Ergo ist man bei:

1×60 + 2*10 (2 SD Karten) + 10 (Netzteil) + 10 (HDMI Strippe) = 100€

Die benötigte Software ist frei zugänglich.

Bei einem Dauerbetrieb als Webserver wäre eine SSD als externer Datenträger optimal. Mit Adapter ist man dann aber schnell bei 75€ oder mehr zusätzlich und die Einrichtung ist nicht ganz so einfach wie das simple Installieren des Images. Wirklich kompliziert ist die Variante aber auch nicht.

Beim Betrieb @Home ist in der Regel ein NAT Router mit optionaler Portfreigabe im Einsatz (z.B. Fritzbox). Wichtig ist, dass man die Ports nur auf den Pi leitet. Noch besser ist eine DMZ Zone (ich habe aktuell zwei Router – Speedport Hybrid und Fritzbox, somit hat man dazwischen automatisch eine DMZ), wenn beide im NAT Modus laufen.

Update 03.07.2020

Wenn man den Odorid als Vergleich nimmt, sind die Anschaffungskosten mit etwas über 100€ deutlich höher. Dafür entfallen die 60€ für das externe NVMe Gehäuse.

Fazit:

Aus meiner Sicht eignet sich der Pi 4 als vollwertiger Webserver. Wenn man sich auf die benötigten Dienste reduziert lässt sich die Performanz weiter optimieren (elasticsearch ist zum Beispiel ziemlich ressourcenhungrig und eine MySQL Datenbank ist auch nicht ohne).

Mit einem ausreichend schnellen Internetanschluss (besonders im Upload) ist es möglich einen Webserver mit minimalen Kosten zu Hause zu betreiben. Im Gegensatz zu “echten” Servern macht der Pi keinen Krach und heizt wenig. Etwas Linux Vorerfahrung schadet aber nicht, um halbwegs flott zu Erfolgen zu kommen. Andersrum ist der Pi eine super Experimentierbasis um sich in das Thema einzuarbeiten.

Update 03.07.2020

Nachtrag: Im Praxisbetrieb mit einer recht großen WordPress Seite und vielen Plugins ist der Pi, trotz der recht guten Daten gerade beim initialen Seitenaufbau (also dem Abarbeiten des PHP Codes) ziemlich langsam. Für einen WordPress Server würde ich also mehr Rechenpower empfehlen, wenn man nicht gerade ohne Plugins arbeitet.

Eine 50GB Nextcloud Installation läuft aber gut (einschließlich Indexierung und Suche). Man muss also den jeweiligen Anwendungsfall anschauen.

Für mich ist das so aber vollkommen ok, weil ich damit keinen VPS ersetzen wollte, sondern nur die Funktionalität des VPS weitgehend auf dem Pi haben wollte zwecks Tests und Backup.

1 2 3 4