Heimserver, Virtualisierung verschiedener Guests; XEN vs. VirtualBox

pbtraveller

Well-Known Member
Hi,

will mir zu Hause meinen neuen Server aufbauen. Dieser soll Folgendes können:

a) als NAS hauptsächlich für Backups der Mac-Clients dienen
b) mittels eines Linux (virtualisiert) und openexchange oder einer ähnlichen Anwendung Adressen und Kalender zwischen Clients (Macs, Linux) iPhones und BlackBerries syncen,
c) ein Linux/BSD für Asterisk betreiben
c) weitere dezidierte virtuelle Maschinen für andere Anwendungen (mal sehen was mir noch so einfällt) dienen.

Ich würde gerne als Betriebssystem hauptsächlich FreeBSD nehmen. Komme zwar eigentlich aus der Linux-Welt (Gentoo und Ubuntu), finde FreeBSD aber inzwischen besser.

Habe mir zwei Alternativen überlegt:

1. XEN mit Linux DomO und weiteren DomU (FreeBSD als NAS; Linux mit OpenExchangeg) etc. oder

2. FreeBSD mit ZFS und darauf VirtualBox mit Linux und OpenExchangeg etc.

Lösung 1 scheint mir für den Serverbetrieb besser geeignet, allerdings hätte ich dabei nach meiner Einschätzung nicht die Möglichkeit, die ganzen Platten mittels ZFS zu betreiben. Außerdem weiß ich nicht, wie schnell FreeBSD unter XEN als NAS laufen würde. XEN scheint aber stabil zu sein und der Ersatz eines abgerauchten virtualisierten Servers von einem Backup dürfte sehr schnell gehen.

Lösung 2 scheint mir geeignet zu sein, da ich als Host FreeBSD hätte und ZFS verwenden könnte. VirtualBox ist außerdem sehr einfach zu bedienen.

Da das NAS natürlich nicht aus dem WAN erreichbar sein soll, ist ein "Abschotten" der einzelnen Guest bzw. die Begrenzung des Zugriffs von einem Guest auf den anderen bzw. dem Guest auf den Host etc. besonders wichtig!

Was würdet Ihr mir empfehlen und warum?

PS. Die Kiste, die ich verwenden werde, ist ein einfacher HP ProLiant N36L MicroServer. Ziemlich langsam, aber es ist ja nur ein homeserver und es werden nicht besonders viele Clients darauf zugreifen.


Vielen Dank für Eure Ideen!

Gruß

pbtraveller
 
Wie wäre es mit FreeBSD, ZFS und Jails? Mit ezjail ist die Installation in wenigen Minuten erledigt (und halbwegs verstanden).
 
Das würde aber doch voraussetzen, dass ich bspw. OpenExchange in der Jail unter FreeBSD laufen lasse (sofern das geht), anstatt eine fertig gebackene klickie buntie Linux-OpenExchange Distribution in einer virtuelle Maschine drauf zu packen.... Bin mir nicht ganz sicher, ob das mit OpenExchange so easy wird...
 
Entweder die Option 2 oder Crests Vorschlag. Der hätte allgemein den Vorteil, dass er von allen Optionen mit großem Abstand am wenigsten CPU-Power und vor allem RAM benötigt.

FreeBSD/Xen wird langsam und es wird mit Version 8.2 einen großen Sprung nach vorn machen, aber als optimal würde es ich nicht bezeichnen. Oder anders gesagt, man sollte ein wenig Erfahrung mit dem System haben und das nötige Fingerspitzengefühl besitzen. Wirklich "gut" wird Xen wohl erst mit 9.0 später in diesem oder früh im nächsten Jahr werden, also in nicht sehr naher Zukunft.

Virtualbox hingegen läuft sehr stabil und zuverlässig, allerdings sollte die Host-CPU Hardwarevirtualisierung unterstützen. Der Athlon II deines Server tut es. Wie gut das lafen wird, hängt vor allem davon ab, wie viel Arbeitsspeicher du hast... Eine RAM-Sau wie ZFS und dann noch VBox würde ich unter 6 Gigabyte für recht kritisch halten.
 
Ich möchte noch eine Option ins Spiel bringen:
Keine Virtualisierung.
Ich halte das für den Anwendungszweck für übertrieben und mit unnötigem Verwaltungsaufwand verbunden
 
Wenn ich das so höre, ist wahrscheinlich ein Kombination aus
a) jails und für Asterisk und co. und
b) Virtualbox für OpenExchage etc. (soweit ich hier nichts Besseres finde oder OX unter FreeBSD zum laufen bringe)
die beste Variante.

pbtraveller
 
Also ich nutze zwecks Virtualisierung auf meinen Servern Proxmox, das ist eine auf Debian/KVM basierende Distribution, die auf Virtualisierung zugeschnitten ist. Darauf laufen auch ein paar FreeBSD VMs. Der einzige Nachteil ist, dass es keine Paravirtualisierten Treiber für das FreeBSD gibt, aber unter normalen Workloads macht sich das nicht großartig bemerkbar. Dank KSM und Balooning ist auch der Speicherverbrauch recht überschaubar, was imo der Wesentliche Vorteil von KVM gegenüber Xen ist. So brauche ich auf meienm heimischen Server seit der Migration von Xen zu KVM von meinen 8GB Ram bei ~10VMs ca. 2GB Ram weniger bzw. habe 2GB Ram mehr, die ich für VMs allozieren kann, je nach Sichtweise.
 
Könntest du mal kurz zusammenfassen, wie du mit dem N36L zufrieden bist? Hast schonmal den Stromverbrauch gemessen?
Hab mit dem Ding auch längere Zeit recht intensiv geliebäugelt.

Übrigens: VMWare ESXi sollte da auch drauf laufen. link
 
Was wollt Ihr denn bezüglich des N36L wissen? Ich habe noch nicht den tatsächlichen Strombedarf gemessen, kann also nicht sagen, was er tatsächlich braucht. Er ist leider etwas lauter als ich mir das vorgestellt hätte. Wie immer könnte die Kiste auch etwas schneller sein....
Für mich soll er ja nicht wirklich viel tun. Ist bisher nur ein besseres NAS, da ich noch nicht dazu gekommen bin, asterisk und meinen CardDAV- und CalDAV-server aufzusetzen.

speaking of CardDAV- und CalDAV-server: gibt es einen, den ich unter freeBSD direkt aus den ports bauen kann (oder gar als pkg installieren kann) oder kann mir von Euch einer einen empfehlen? Zimbra scheint ja etwas komplizierter unter freeBSD.

Gruß

pbtraveller
 
Ist er für die Küche einer Nerd-WG geeignet d.h. kann man sich im selben Raum unterhalten? Strombedarf Idle und Platten + CPU jeweils wäre spannend, aber ich kann zu gut verstehen, wenn du das gar nicht genau wissen willst. Kannst du zur Subjektiven geschwindigkeit was sagen? Ich habe leider festgestellt das FreeBSD Kerneltreiber für VIA Padlock keine AES-XTS unterstützung hat d.h. ich müsste entweder nen AES-NI fähigen Intel kaufen (deutlich zu teuer) oder mit Softwar Crypto für GELI leben.

Um CalDAV mache ich einen weiten Bogen, seit ich mal gezwungen war nen Blick in die CalDAV und WebDAV RFCs zu werfen *schauder*.
 
Ich möchte noch eine Option ins Spiel bringen:
Keine Virtualisierung.
Ich halte das für den Anwendungszweck für übertrieben und mit unnötigem Verwaltungsaufwand verbunden


sehe ich genauso ... weniger ist mehr gerade was debugging betrifft.

und wenn man immer schon brav packe aus den ports installiert
ist das updaten vom basis os und den packeten auch kein thema.


hinzukommt das jede art von virtualisierung immer arbeitsspeicher kostet.

holger
 
Die meisten Heimserver haben genug RAM und geschickt eingesetztes Nullfs mit Jails sollte den RAM Overhead vernachlässigbar gering halten.
 
Hi,

ich würde auf ne Virtualisierung da völlig verzichten, des is absolut overkill und bringt Dir nur zusätzlich bärig viel Arbeit. Denk mal in Ruhe darübär noch nach ob das ned ohne auch gut geht.

Beste Grüße,
Bummibär
 
Die meisten Heimserver haben genug RAM und geschickt eingesetztes Nullfs mit Jails sollte den RAM Overhead vernachlässigbar gering halten.


nichts destso trotz ist es ein hoeherer aufwand .

os pflege , confiuration bug fixing , security.


virtualisierung != sicherheit .


holger
 
Auf die schnelle hab nichts gefunden ob netbsd drauf läuft , wenn ja und ist amd64 oder i386 kannst xen nehmen von netbsd und dann beliebige xen domU starten.


Liebe Grüße


Menuhin
 
Hallo pbtraveller,

also ich kann mich nur Crest anschließen.
Ich habe als Heimserver einen 32 Bit Rechner (AMD), der nicht nur als ezjail-Host für 4 Jails (Audio-Streaming/File-Server, Mailserver, DB-Server und Entwicklungs-Webserver) dient, sondern der Host übernimmt auch die Aufgaben von DHCP (dnsmasq) und als Internet-Router mit pppoE und pf-Firewall die Verbindung zum Internet.

Die Kiste hat ein FreeBSD 8.2 mit 3GB Arbeitsspeicher, einer System-Platte und einem GEOM-Platten Mirror, auf dem die Jails liegen. Die Jails brauchen kaum Arbeitsspeicher und Festplattenspeicher ist auch ausreichend.

Die Jails haben mir bei Neu-Installationen schon mehrmals die Arbeit erleichtert, weil die Jails nur noch eingebunden wurden und dann liefen wieder alle Jails und deren Server (Gott sei gedankt, dass man von den entsprechenden Dateien ein Backup hat).

Als Home-Server mit den entsprechenden Aufgaben ist diese Kiste nicht(!) ausgelastet und für meine Verhältnisse vollkommen ausreichend. Ich finde, bei FreeBSD kommt es nur darauf an, wie man die Performance richtig verteilt.

Ob nun Virtualisierung im Heim-Bereich sinnvoll ist oder nicht, steht auf einem ganz anderen Blatt.
Die Frage kann man auch so stellen. Muss ich einen M$ Server für zu Hause(!) verwenden? Mit GUI, die Resourcen frisst? Mit M$-Exchange?
Warum nicht einmal andere Rangehensweise ausprobieren? Erfahrungen mit anderen Technologien oder Serverkonstrukten sammeln. Ich finde dies ist ganz wichtig.
Und wenn mal etwas nicht klappen sollte, dann kann man hier im Forum um Rat fragen, oder?

So habe ich, durch den Aufbau und die Konfiguration, sehr viel über Virtualisierung mit FreeBSD gelernt, was ich in der Arbeit wieder verwenden konnte. Hier laufen auch schon ein paar Server mit Jails über ezjail.

Mit der Konfiguration kann ich zu Hause meine 8 Clients, die unterschiedliche Anforderungen an den Heimserver stellen ( Internet, e-Mail, Audio-Streaming, DNS, Firewall, Samba etc.), bedienen.

In vielleicht 1-2 Jahren werde ich hier eine 64-Bit Kiste hinstellen und dann auf ZFS umstellen, weil ich schon gemerkt habe, dass Jails, mit ezjail konfiguriert, auf ZFS sehr schnell laufen (Video-Konvertierung etc.).

Mein Rat ist: Machen!

Grüße

r_friemer
 
Zuletzt bearbeitet:
Ob nun Virtualisierung im Heim-Bereich sinnvoll ist oder nicht, steht auf einem ganz anderen Blatt.

Für den versierten Bastler, der auch mal über den Tellerrand schauen und etwas ausprobieren will, gibt es doch nichts Besseres.

System kaputtkonfiguriert? Per Knopfdruck den letzten Snapshot wiederherstellen und 10 Sekunden später läuft es wieder.
Ein neues OS ausprobieren? Schnell eine neue VM erstellen und los geht's.

Der zusätzliche Administrationsaufwand für das Host-OS amortisiert sich durch die gewonnene Flexibilität sehr schnell.

Die Frage kann man auch so stellen. Muss ich einen M$ Server für zu Hause(!) verwenden?
Windows Server ist in vielen Fällen Overkill, aber man muss die fortgeschrittenen Features ja nicht nutzen.

Mit GUI, die Resourcen frisst? Mit M$-Exchange?
Die Resourcen sind das geringste Problem, Hardware ist inzwischen spottbillig. Mainboard, Quadcore und 8 GB RAM für unter 200 Euro - was will man mehr?
Die Lizenzkosten sind der größere Posten, selbst mit Microsofts günstigstem Action Pack übersteigen die Lizenz- schnell die Hardwarekosten.

Mein Rat ist: Machen!

Der beste Rat überhaupt, egal für welche Lösung man sich entscheidet. :)
 
Vielen Dank Euch allen erst einmal für Eure Tips und sorry, für die späte Antwort. Bin beruflich leider sehr eingebunden, so dass ich selten zum Basteln komme. Das ist auch der Grund, warum ich eher an eine Virtualisierung gedacht hab. So kann ich ggf. einfach irgendwelche für den Einsatzzweck vorbereiteten Linux-Distros oder ähnliches (bspw. für Zimbra) auf meinen Server spielen, ohne viel basteln zu müssen. Fürs Basteln habe ich gerade leider kaum Zeit auch wenn es natürlich viel Spaß macht.

Ansonsten bin ich zwischenzeitlich ein großer FreeBSD-Fan geworden. Scheint mir in vielen Fällen einfach stabiler zu laufen als Linux. Leider finde ich nach wie vor kein vernünftigen, einfach zu konfigurierenden CardDAV und CalDAV Server (zum Abgleichen der Kalender und Adressbücher zwischen iPhones und Laptops). Das ist nämlich das, was ich gerade am dringendsten bräuchte.

Was meinen HP-Server angeht. Ich habe endlich mal den Stromverbrauch gemessen. Das Gerät (Baumarkt) gibt an, dass der Server 38-40 Watt verbraucht (8 GB Ram 2 Festplatten WD Caviar Green 5400).

@Crest: Die Kiste kann man sicher in einer Nerd-WG in der Küche laufen lassen. Bei mir steht sie im Flur in einem Hängeschrank, zieht jetzt aber um in die besser belüftete und größere Garderobe.

Bevor ich das nächste mal bastele hätte ich noch eine Frage an Euch bzgl. snapshots und ZFS.

Mein Server bootet von einem ZFS-Volume. Ich habe es nach dieser Anleitung angelegt: https://www.dan.me.uk/blog/2010/02/08/booting-from-zfs-raid0156-in-freebsd/

Ich würde gerne einen snapshot von dem ganzen ZFS-Volumen machen. Ich gehe davon aus, dass ich diesen auf einem externen Volumen speichern muss, d.h. per cd in ein (irgendwo gemauntetes) Verzeichnis gehen und dann per

zfs snapshot zroot@name

den snapshot erstellen muss. Ich kann ja schlecht einen snapshot auf einem Volumen anlegen, von dem ich den snapshot erstelle, oder.

Oder wäre alternativ ein snapshot nach dem Motto

zfs snaphot /@name

möglich?

Danke für Eure Hilfe

Gruß

pbtraveller
 
Ich habe mit der Weile auch einen HP N36L als NAS und WG Router. Es läuft bis auf das NFSv3 sec=krb5:krb5i:krb5p als Client zickt und nur DES verwendet dafür NFSv4 unbrauchbar langsam ist mit und ohne Crypto. Leider sind die ganzen FUSE FTPS und HTTPS, WebDAV/HTTPS Implementierung nur Spielzeug und können entweder nur readonly Zugreifen oder Transportieren Dateien am Stück. Beides ist keine Lösung.

Per HTTP und FTP sind im LAN 45 bis 50MiB/s von 4 GELI verschlüsselten Platten mit ZFS RAID-Z1 drüber möglich. Die CPU limitiert hier den Durchsatz. Aus dem Cache (8GiB RAM) wird das 1Gb/s Ethernet saturiert ohne nennenswerte CPU Belastung. Jeweils mit ca. 10GiB Dateien sequentiell und 1-2 Usern gemessen. Ohne Crypto sollte die CPU also locker ausreichen.
 
Snapshots legst du im selben Pool an. Was du suchst ist zfs snapshot -r zroot@name. Wenn du nun diesen Snapshot irgendwo hin sichern willst musst du ihn mit zfs send -R zroot@name versenden.
 
Hallo, brauche leider noch mal Eure Hilfe.
Habe es irgendwie geschafft, mein Root-Passwort zu vergessen. Kann zwar eigentlich nicht sein, aber jedenfalls nimmt meine Maschine das Passwort nicht mehr, das ich im Gedächtnis hatte. Ich habe also versucht, das Passwort zurück zu setzten. Dazu habe ich die Maschine im single-modus gestartet, dann folgende commands eingegeben, um / im read-write modus neu zu mounten.

# mount -u /
# mount -a

Dannach habe ich dann "passwd" eingegeben, um dass Passwort zurückzusetzen. Erhalte aber die Fehlermeldung passwd: not found

Wie gesagt / liegt auf zroot.

Hat jemand ne Idee, wie ich das root-Passwort wieder zurücksetzen kann?

Danke und Gruß

pbtraveller
 
Sorry, verstehe ich nicht.
in /bin liegt passwd nicht. Wenn ich die Maschine normal hochfahre, kann ich auf passwd (unter einem anderen Nutzer zugreifen) passwd scheint unter /usr/bin zu liegen. Hierauf habe ich aber ja im Single-Modus kein Zugriff. Verstehe das alles nicht so ganz. Habe die gleiche Methode mal auf meinem Laptop angewandt, der nicht zfs verwendet hat und dort ging es.

Bin für jede Hilfe dankbar. Komme gerade einfach nicht weiter.

Danke und Gruß

pbtraveller
 
Ach übrigens, ein zpool status gibt mir die Rückmeldung:

status: the pool is formatted using an older on-disk format. The pool can still be used, but some features are unavailable.

action: Upgrade the pool using 'zpool upgrade'. Once this is done, the pool will no longer be accesible on older software versions.

Was heißt denn hier "software versions", ich meine von was? OS? Kann ich denn pool im single-modus gefahrlos upgraden?

Danke und Gruß

pbtraveller
 
Zurück
Oben