Ziel dieses Vorhabens war die Realisierung eines Backup Servers mit sehr geringem Energieverbrauch bei gleichzeitiger Datenredundanz durch gespiegelte Festplatten. Dieser Server sollte vollständig in ein Active Directory integriert sein und als Backup Ziel für TimeMachine Backups (Apple Clients) und Windows Backups (Windows Server) fungieren. Folgende Anforderungen lagen hierbei zugrunde:

  • Geringer Energieverbrauch
  • Stromversorgung über PoE
  • Datenredundanz (RAID1)
  • Active Directory Integration
  • Betriebssystem Linux
  • Backupziel für TimeMachine
  • Backupziel für Windows
  • Kleine Bauform

Die Hardware

Nach etwas Recherche zum Stromverbrauch der einzelnen Komponenten sowie der Berechnung der gesamten Leistungsaufnahme sollte dieses Vorhaben bei Verwendung folgender Komponenten gut darstellbar sein:

  • 1 x Raspberry Pi 4 Model B 8 GB
  • 1 x Raspberry Pi PoE+ Hat
  • 2 x M.2 SSD (WD Red SA500, 2 TB)
  • 2 x M.2 SSD Expansion Board (Geekworm X862, M.2 NGFF SATA SSD)
  • 2 x Mini USB3 Kabel (Aliexpress)
  • 3 x Acryl Layer Gehäuse

Die Software

Da eine Hardware basierte Lösung zur Datenredundanz bzw. Spiegelung der Festplatten mangels verfügbarer Produkte (mir ist kein Hardware RAID Controller für den Raspberry bekannt) nicht in Frage kam, wurde diese Anforderung durch den Einsatz des ZFS Dateisystems (OpenZFS) realisiert (siehe Anleitung). Softwareseitig wurden hierbei in Summe also folgende Komponenten gewählt:

  • Betriebssstem Ubuntu Server 22.04 LTS
  • Dateisystem ZFS (RAID1)
  • Samba (Freigaben und Active Directory)
  • Winbind (Active Directory User Mapping)
  • Realm (Active Directory Integration)

Das Ergebnis

Das fertige Produkt sieht schickt aus und verbraucht so wenig Energie, dass eine Stromversorgung über PoE problemlos möglich ist. Geräuschentwicklung gibt es sogut wie keine (die einzige bewegliche Komponente ist der Lüfter des PoE+ Hat (dessen Sensivität ist anpassbar). Hinsichtlich Datenredundanz und Datensicherheit sind die Features des Dateisystems ZFS wirklich beachtlich. Die Integration in ein Active Directory ist mit der aktuellen Version von Samba äußerst einfach umsetzbar. Sowohl die Zugriffsbeschränkungen der Samba Freigaben als auch Anmeldungen auf der Konsole (lokal oder remote) sind hierbei mit den Benutzerkonten des Active Directory möglich.

Hinsichtlich der Datenredundanz ist noch anzumerken, dass die Bootpartition (/boot/firmware) leider nicht über ZFS abgebildet und darüber gespiegelt werden kann. Der Chip des Raspberry erwartet immer eine FAT32 Partition für den Bootvorgang, das lässt sich leider nicht ändern. Durch ein entsprechendes Skript (/etc/kernel/postinst.d/) lässt sich diese Partition jedoch automatisch nach jedem Kernelupdate zwischen den beiden Festplatten synchron halten.

In Bildern
In Bildern