Startseite Privatkunden Home Lab Deep Dive: Das Setup eines Softwareentwicklers

Home Lab Deep Dive: Das Setup eines Softwareentwicklers

by Gastautor

Ich bin Softwareentwickler und interessiere mich für Computernetzwerke und -sicherheit. Ziel des Homelabs ist das Selbstlernen von Computernetzwerken sowie die Fähigkeit, eine Softwareentwicklungsumgebung und Infrastruktur einzurichten, die für arbeitsbezogene Prototypen erforderlich ist. Ich möchte auch eine Isolierung zwischen Arbeit, Unterhaltung, Versorgungsunternehmen (Netzwerkdrucker, NAS) und dem Netzwerk der IoT-Geräte, daher waren VLANs meine Antwort und daher habe ich mir einen Edgerouter X der Einstiegsklasse besorgt.


Ich bin Softwareentwickler und interessiere mich für Computernetzwerke und -sicherheit. Ziel des Homelabs ist das Selbstlernen von Computernetzwerken sowie die Fähigkeit, eine Softwareentwicklungsumgebung und Infrastruktur einzurichten, die für arbeitsbezogene Prototypen erforderlich ist. Ich möchte auch eine Isolierung zwischen Arbeit, Unterhaltung, Versorgungsunternehmen (Netzwerkdrucker, NAS) und dem Netzwerk der IoT-Geräte, daher waren VLANs meine Antwort und daher habe ich mir einen Edgerouter X der Einstiegsklasse besorgt.

Also ein bisschen mehr Hintergrundinformationen zu meiner Person. Ich bin ein Softwareentwickler, der etwa 95 % der Zeit von zu Hause aus arbeitet. Das Unternehmen stellt im Unternehmensnetzwerk gehostete Entwicklungs-VMs bereit, auf die nur über VPN zugegriffen werden kann. Diese waren einfach zu langsam und deshalb beginne ich damit, zu Hause Entwicklungs-VMs zu erstellen, um Arbeiten und Prototypen zu erstellen. Das war die ursprüngliche Absicht meines Homelabs. Es ist hauptsächlich für die Arbeit gedacht, damit ich effizienter arbeiten kann, ohne mir Gedanken über die langsame Verbindung zu vom Unternehmen bereitgestellten Entwicklungs-VMs machen zu müssen.

Ursprünglich habe ich alle meine VMs von meinem Windows-Desktop aus mit Virtual Box gehostet, aber der Arbeitsspeicher wurde zu einem Problem, als ich anfing, weitere VMs hinzuzufügen, und da begann ich darüber nachzudenken, mir einen dedizierten Bare-Metal-Hypervisor zuzulegen. Das Unternehmen, für das ich arbeite, ist eher ein Softwarelösungsunternehmen als ein Softwareproduktunternehmen. Wir entwerfen und implementieren Lösungen basierend auf den Anforderungen unserer Kunden. Bei einem meiner Projekte müssen wir bei der Implementierung einer kontinuierlichen Integrationsumgebung für seine Software helfen, und ich habe erfahren, dass der Kunde VMware vSphere als VM-Infrastruktur verwendet. Aus diesem Grund habe ich mich entschieden, VMware ESXI als Hypervisor in meinem Homelab zu verwenden, damit ich zwei Fliegen mit einer Klappe schlagen kann, d. h. während ich lerne, mein Homelab einzurichten, erhalte ich auch eine Schulung, um mich mit der VM vertraut zu machen Infrastruktur, die mein Kunde nutzt.

Auf meinem ESXI laufen etwa 5-6 Windows-VMs, die mit Jenkins im Master/Slaves-Modus laufen. Eine gute Sache an Windows ist, dass Sie so viele Windows-Betriebssysteme installieren können, wie Sie möchten, es aber nicht aktivieren, aber dennoch weitgehend funktionsfähig sind. Allerdings können Sie keine Personalisierungseinstellungen wie das Hintergrundbild anpassen und werden ständig daran erinnert, Ihre Windows auf dem Desktop zu aktivieren.

Außerdem habe ich weitere 5-6 Linux-VMs, die ich für die Entwicklung verwende. Meine Gewohnheit besteht darin, eine Basis-Linux-VM mit dem geringsten Minimum zu erstellen, und für jedes Projekt erstelle ich einfach eine neue VM, indem ich von der Basis-Linux-VM klone. Manche Leute verwenden gerne eine einzige Entwicklungs-VM für alle Projekte, aber ich möchte eine Entwicklungs-VM pro Projekt haben, einfach weil es einfacher ist, Software- und Bibliotheksabhängigkeiten zu verfolgen, wenn man mit einer Basis-VM mit dem absoluten Minimum beginnt. Das ist das Schöne an der Virtualisierung: Sie können VMs klonen, neue VMs erstellen und wenn Sie sie nicht benötigen, können Sie sie herunterfahren oder einfach löschen. Wenn wir nur auf die späten 90er zurückblicken, gab es Virtualisierung noch nicht einmal. Die Technologie schreitet so schnell voran und der neueste Trend ist die Containerisierung. Virtualisierung plus Containerisierung machen die Sache noch einfacher.

Mein bevorzugtes Linux-Betriebssystem ist CentOS/Red Hat Linux Enterprise. Auch hier habe ich mich dafür entschieden, weil die meisten meiner Kunden RHEL verwenden, also habe ich mich für CentOS entschieden. Ich verwende derzeit hauptsächlich RHEL, da das RHEL-Abonnement für Entwickler kostenlos ist.

Da ist auch mein Unraid-Server. Ich besaß ursprünglich ein Thecus N4100EVO NAS, das ich mit RAID5 unter Verwendung von 4x3 TB Seagate ST3000DM001 konfiguriert habe. Innerhalb der ersten zwei Jahre sind bei mir 2 der 4 Seagate-Festplatten gleichzeitig ausgefallen. Glücklicherweise konnte ich es dank des technischen Supports von Thecus und Clonezilla wiederherstellen, indem ich mein defektes Laufwerk auf ein neues Laufwerk klonte. Ich war dumm genug, eine andere Seagate ST3000DM001 als Ersatz zu kaufen, weil ich der Meinung war, dass es für RAID sehr wichtig ist, das gleiche Laufwerk und Modell beizubehalten. Ich glaube, es sind zwei Jahre vergangen, ein weiteres Seagate-Laufwerk ist bei mir ausgefallen und ich habe es schließlich durch ein Seagate Ironwolf mit 2 TB ersetzt. Und schnell vorwärts: Kürzlich haben viele Rezensionen und Angebote bestätigt, dass die Best Buy WD Easystore 3 TB und 8 TB tatsächlich WD Red-Laufwerke enthalten, also habe ich mir ein 10 TB und 10x 2 TB WD Easystore von BestBuy besorgt, sie ausgepackt und die internen Laufwerke mitgenommen Benutze es, um meinen Unraid-Server zu bauen. Nachdem diese drei ersten Laufwerke installiert wurden, verschiebe ich alle Daten vom NAS auf den Unraid-Server und verschiebe am Ende alle vier Festplatten vom ursprünglichen NAS und füge sie dem Array-Pool in Unraid hinzu. Der Unraid-Server dient zum Speichern von Bildern, Filmen und Liedern. Ich verwende es auch, um einige alte Software, Treiber und Windows/Linux-Distributionen zu speichern, die online schwer zu finden sind.

Nein, für mich ist Edge Router Ich habe mein Netzwerk in 4 VLANs aufgeteilt.

  • VLAN 10 ist hauptsächlich für alle Versorgungsdienste wie Drucker, NAS und Netzwerkmonitor vorgesehen.
  • VLAN 20 ist mein Arbeitsnetzwerk. Es ist das Netzwerk, in dem sich die meisten meiner Entwicklungs-VMs befinden.
  • VLAN 30 ist mein Unterhaltungsnetzwerk; Hier sind meine Spielekonsolen, Smartphones, Fernseher und IoT-Geräte angeschlossen.
  • VLAN 99 ist mein Gastnetzwerk.

Die WLAN-Bereitstellung erfolgt über Unifi AP AC Lite, da dieser mehrere VLANs unterstützen kann.

Derzeit sind 3 Smart Switches mit dem Edge Router X verbunden. Dies sind:

  • Netgear GS108Ev3 (8 Ports) befindet sich im Keller, in dem sich mein Büro befindet
  • Netgear GS108T (8 Ports) befindet sich im Keller, wo sich mein Büro befindet
  • Cisco SLM2008 (8 Ports) befindet sich in meinem Wohnzimmer im 1. Stock, wo sich alle meine Unterhaltungsgeräte befinden

Zu meinen Servern gehören

  • Ein maßgeschneiderter Ryzen 1700x mit 32 GB RAM als ESXI-Server
  • Dell PowerEdge R420 Dual Xeon E5-2440 mit 96 GB RAM als ESXI-Server und Hosting des vSphere-Servers als VM.
  • Ein speziell angefertigter Intel i7 2600K mit 32 GB RAM als Unraid-Server

Bei den auf dem ESXI-Server gehosteten VMs handelt es sich größtenteils um meine Entwicklungs-VMs außer dem vSphere-Server, dem Zabbix-Server (Netzwerküberwachung) und einer VM zum Hosten allgemeiner Dienste über Docker (Pi-Hole, Yum-Repo-Server, Forward-Web-Proxy, Unifi-Controller). .

Kürzlich habe ich einen TP-Link TL-SG1016DE 16-Port-Switch gekauft, von dem ich vorhabe, einen der 8-Port-Switches aus dem Verkehr zu ziehen. Die Absicht besteht darin, zu versuchen, eine statische Aggregation auf den ESXI- und Unraid-Servern einzurichten. Mein Homelab wird weiter wachsen und sich weiterentwickeln. Ich hoffe, dass das Teilen meiner Geschichte anderen in der Community auf ihrer eigenen Reise helfen wird.

– David C.

Dieser Beitrag ist Teil einer fortlaufenden Reihe von von Benutzern eingereichten Inhalten, die sich mit dem Spaß und den Herausforderungen beim Bau, der Wartung und manchmal beim Wiederaufbau eines Heimlabors befassen. Diese Serie entsteht in Zusammenarbeit mit unseren Freunden bei /r/homelab. Wenn Sie daran interessiert sind, Ihr Setup zu teilen, senden Sie bitte eine E-Mail an [E-Mail geschützt]