GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie ich mit dem Budget ein Homelab gebaut habe

In meinem vorherigen Artikel habe ich besprochen, was ein Homelab ist und warum Sie eines für sich selbst haben sollten (oder nicht).

Kann nun jeder, der will oder braucht, ein Homelab haben? Es hängt von mehreren Dingen ab, aber Geld oder Ressourcen können umgangen werden. In diesem Artikel werde ich erklären, wie ich es geschafft habe, mein eigenes Homelab zu haben, ohne ein Vermögen darin zu investieren. Tatsächlich hat es mich weniger als 1.000 US-Dollar gekostet und es funktioniert gut genug, um die Infrastrukturanforderungen meines Hauses zu erfüllen.

Abgesehen davon ist es wichtig, als Haftungsausschluss zu erwähnen:Dieser Artikel beschreibt nicht die beste Vorgehensweise. Es beschreibt nur, wie ich es schaffe, dass es funktioniert, obwohl ich weiß, dass es einige Probleme und Risiken gibt, aber im Moment kann ich damit gut leben.

Zuallererst:die Hardware

Das Einrichten eines Homelabs erfordert einen Computer, den Sie im Grunde nur zum Dauerbetrieb verwenden können. Ein alter (aber moderat leistungsfähiger) Laptop kann die Arbeit erledigen, oder wenn Sie etwas Geld haben, das Sie verwenden können, können Sie die Teile kaufen und Ihren eigenen Computer bauen.

Wenn Sie etwas mehr Geld haben, können Sie wahrscheinlich sogar einen umfunktionierten kleinen Server kaufen, den jedes IT-Unternehmen aufgrund seines Alters abgeschafft hat. Diese Server können immer noch einen guten Zweck für ein Projekt wie dieses erfüllen, obwohl es möglicherweise vom Konzept „mit kleinem Budget“ abweicht.

Sie können auch Raspberry Pi-ähnliche Geräte verwenden.

Der wichtigste Teil des Hauptservers ist:Versuchen Sie, ein Motherboard und eine CPU zu bekommen, die mit Virtualisierung umgehen können, insbesondere mit IO-Passthrough-Kapazität. Stellen Sie bei Intel sicher, dass der Prozessor über VT-x-Kapazität verfügt, bei AMD sollte er über AMD-v-Kapazität verfügen. Ohne dies werden Sie nicht in der Lage sein, viel zu tun.

Wenn Sie nicht vorhaben, in eine separate GPU wie eine NVIDIA- oder AMD-Grafikkarte zu investieren, versuchen Sie, eine CPU zu erwerben, die zumindest über eine integrierte GPU verfügt.

Dann benötigen Sie dafür etwas Speicherplatz. Die Größe der Festplatte hängt davon ab, wofür Sie sie verwenden möchten. In meinem Fall wollte ich einen Mediaplayer, einen Gaming-PC, einen Firewall/DNS-Server und wahrscheinlich eine sehr kleine DVR-Konsole haben, also kaufte ich eine 2-TB-Festplatte. Dies ist der Teil, in dem Sie Budgetprobleme haben können. Wenn Geld keine Rolle spielt, möchten Sie so viel Speicherplatz haben, wie Sie möchten, und ihn verdoppeln, damit Sie mit RAID arbeiten können. Auch hier muss ich mich in meinem Fall mit einer einzigen 2 TB (nicht einmal SSD) Festplatte begnügen, Punkt.

Ich hatte dort ein paar 1 TB USB-Festplatten liegen, sie waren mehr als 10 Jahre alt, aber mit sehr geringer Nutzung (nach der Cloud vermeide ich es ehrlich gesagt, zu viele Dinge lokal zu speichern). Diese wären sehr langsam, um für die Verarbeitung oder VMs verwendet zu werden, aber für Backup-Zwecke würden sie ausreichen.

Dann möchten Sie sich auf RAM konzentrieren. Je mehr desto besser. In meinem Fall konnte ich mir nur 8 GB leisten.

Angenommen, Sie möchten dies in Ihr eigenes Zuhause integrieren und mit dem Rest des Netzwerks und den Geräten interagieren, benötigen Sie wahrscheinlich mindestens einen kleinen Router oder Netzwerk-Switch. Wenn Sie einen kleinen Router oder einen kleinen DNS-Server in Ihrem Haus einrichten möchten, benötigen Sie mindestens eine zweite NIC-Karte. Ich hatte eine USB-NIC-Karte, die ich als sekundäre Karte benutzte, um eine virtualisierte Firewall/Routing-Lösung ausführen zu können.

Die Software:Hypervisor

Sie brauchen Virtualisierung und dafür brauchen Sie einen Hypervisor. Hypervisor wird in Typ 1 und Typ 2 kategorisiert. Lesen Sie unseren Artikel, um mehr darüber zu erfahren.

Zusammenfassend:Wenn Sie sich für einen Typ-1-Hypervisor entscheiden, müssen Sie technischer sein, aber Sie haben mehr Kontrolle und können daher GPU und einige andere Ressourcen auf Ihren virtuellen Maschinen verwenden.

Mit einem Typ-2-Hypervisor wird es einfacher zu handhaben, da Sie weniger Kontrolle über die Dinge haben, aber Sie können einige Dinge nicht ausführen, wie z. B. die Weitergabe von GPU-Leistung an Ihre VMs. Wenn Sie eine VM haben möchten, um zu arbeiten und Videos zu bearbeiten oder Spiele zu spielen, können Sie dies mit Typ 2 nicht tun. Wenn dies nicht der Zweck ist, reicht wahrscheinlich ein Typ-2 aus.

Früher hatte ich Virtualbox und verwendete den Haupthostcomputer als meinen eigenen Medienserver. Das hat gut funktioniert. Die Hauptmaschine war in der Lage, Videos zu transkodieren. Als ich jedoch verschiedene Medienserver ausprobieren wollte, um zu experimentieren, fing ich an zu kämpfen, weil ich meinen Hauptserver für ein Experiment beeinträchtigen musste, das schief gehen könnte.

Dies veranlasste mich, zu einem Typ-1-Hypervisor zu migrieren und neu anzufangen. Ich bin als Hypervisor zu Proxmox gewechselt, da ich Open Source liebe. Ich fand VMWare ESXI zu schwer zu implementieren, da ich nicht einmal einen Windows-Rechner zu Hause habe, also konnte ich nicht einmal die ISO-Images überarbeiten, damit ich die richtigen Hardwaretreiber einfügen konnte, um es überhaupt zu installieren.

Homelab ist online, was nun?

Ich habe es eingerichtet und angefangen, die ersten Dinge zu erstellen, basierend auf dem, was ich verwenden wollte. Ich wollte einen Medienserver, aber meine Leistung ist begrenzt (Intel i5 mit interner GPU) und ich möchte mehrere Dinge hosten. Also musste ich entscheiden (und recherchieren), wie es für mich funktioniert.

Wenn ich eine VM haben wollte, die meinen Plex- oder Jellyfin-Server hostet und transkodieren kann, musste ich die GPU an diesen Medienserver weitergeben. Das würde mich dazu bringen, es nicht für einen Gaming-PC zu verwenden, zumindest nicht gleichzeitig. Sie können die GPU jeweils nur an eine einzelne VM übergeben.

Das war ein Problem, weil ich vielleicht gleichzeitig spielen möchte, während mein Kind oder meine Frau einen Film oder eine Fernsehsendung ansehen möchte. Also habe ich darum herumgearbeitet.

Ich habe einen einfachen NFS-Server mit Debian (wegen seiner Leichtigkeit) eingerichtet, auf dem ich meine Dateien hosten würde. Ich würde einfach alle Videodateien, die ich besitze, in einem universellen Format verarbeiten, aus dem die meisten Geräte nicht transkodieren müssten:MP4.

Dazu müsste ich die Dateien im Griff haben und sicherstellen, dass ich sie immer konvertiere, bevor ich sie auf meinem Medienserver indiziere. Sie können mit Cron und Handbrake-Cli einfach automatisieren. Ich musste nicht einmal das Cron-Skript schreiben, ich suchte nach einem der vielen verfügbaren auf GitHub.

Da meine Dateien auf einem NFS-Server zentralisiert waren, brauchte ich keine VM mehr. Ich habe nur einen Container verwendet, um meinen Medienserver zu betreiben, und die Menge der verwendeten Ressourcen war so gering wie möglich. Ich habe gerade den NFS-Server als Ordner in meinem Container abgebildet!

Dann habe ich für die Firewall wieder pFSense eingerichtet, um möglichst viele Ressourcen optimal gemeinsam zu nutzen, habe ich dafür einen Container verwendet.

Als Nächstes richte ich für den Spielautomaten einfach eine Windows-VM ein. Der Grund ist, dass ich Steam einrichten und auch Spiele von GOG.com spielen wollte, beide haben viel mehr Unterstützung für Windows als jedes andere System. Daher habe ich dafür eine VM eingerichtet und mit GPU-Passthrough eingerichtet, damit die virtuelle Maschine die GPU-Leistung erhält, über die mein Intel i5 verfügt.

Bekannte Probleme und eingegangene Risiken

Wie ich am Anfang dieses Artikels erwähnt habe, habe ich die Dinge nicht unbedingt optimal oder am besten gemacht. Ich habe mich einfach an mein Budget angepasst und Probleme und Probleme von dort aus umgangen.

Eine einzige Festplatte zu haben bringt mich in Gefahr, wenn etwas mit der Festplatte passiert (und Festplatten sind wie Menschen:Sie werden geboren und beginnen ab diesem bestimmten Moment zu sterben). Ich würde eine Menge Dinge verlieren, wenn ich kein Backup mache. Ich sichere nicht alle VMs, da ich nicht genug Speicherplatz habe, um alles zu speichern.

Wenn Sie nur eine Festplatte haben, ist die Lesegeschwindigkeit auch nicht so hoch. Die Verwendung einer RAID-Konfiguration würde das Lesen der Festplatte optimal und daher schneller machen. Außerdem habe ich an manchen Stellen eine große IO-Verzögerung. Dies liegt daran, dass mehrere VMs und Container auf denselben NFS-Server zugreifen. Wenn ich nicht darauf achte, automatisierte Tasks oder Crons zu unterschiedlichen Zeiten einzurichten, um Überschneidungen zu vermeiden, könnte ich mit Datenbeschädigung enden.

Meine GPU ist nur die integrierte von Intel, sie ist für sehr einfache Dinge einfach anständig, daher wäre es ideal, eine echte GPU zu haben, sogar eine alte NVIDIA. Allerdings ist nicht nur das Geld ein Problem, ich verwende ein kleines Mini-ITX-Gehäuse, also müsste ich nach einem kleinen Modell suchen, das passt.

Schließlich reduziert die Verwendung meiner Hardware unter diesen Bedingungen, insbesondere der Festplatte, ihre Lebenserwartung, aber da ich nicht vorhabe, sie viel zu nutzen, sondern nur mäßig zu Hause zu nutzen, denke ich, dass es sich vorerst lohnt, diese Architektur beizubehalten.


Linux
  1. Wie installiere ich R 3.3.1 im eigenen Verzeichnis?

  2. Wie teilt man das Terminal in mehr als eine „Ansicht“ auf?

  3. Wie ändere ich den Hostnamen?

  4. Wie rufe ich das Hud auf?

  5. So drehen Sie den Bildschirm auf einem Raspberry Pi 3

So richten Sie den Pretty Hostnamen ein

Wie bekomme ich die Uhr dazu, das Datum anzuzeigen?

So ändern Sie den Hostnamen unter Ubuntu

Wie überprüfe ich HZ im Terminal?

Wie entpacke ich den Inhalt einer RPM?

Wie emuliert man den Raspberry Pi 2 auf QEMU?