Skip to content

Unix & Linux

Beastie und Penguin. Ein Weblog für FreeBSD und Linux.

Menu
  • Impressum
  • Meine 5 Unix-Regeln für das Leben!
Menu

Server-Projekt: Aufbau und Konfiguration

Posted on 28. May 201628. September 2016 by Robert Friemer

Endlich sind alle Teile für meinen Server gekommen und ich freue mich anfangen zu können.

Das wirklich spannende ist, dass ich nicht einfach die Platten aus den alten Server nehmen und in den neuen Server schieben kann, den zfs-Pool importiere und alles ist gut. Nein, leider nicht. Also war mein Vorgehen folgendes:

  1.  Sicherung anlegen
  2. Server aufbauen
  3. Platten integrieren
  4. System installieren und konfigurieren
  5. Backup zurück spielen

So die Theorie!

In der Praxis hatte ich folgendes vor. Die beide HDDs sollten wieder als Mirror konfiguriert und als Daten-Pool dienen. Beiden beiden baugleichen SSDs hatte ich etwas anderes vor. Im alten Server gab es eine SSD für das Betriebssystem und eine SSD diente als L2ARC. Da ich aber nie so hohe Last hatte, dass sich dieser L2ARC bemerkbar machte, habe ich ein anderes Setup ausgearbeitet.

  • eine sd-Karte mit 16GB Kapazität ist für das OS gedacht (der HP hat einen Slot dafür onboard)
  • die beiden HDDs sollen als Mirror die Daten speichern
  • die beiden SSDs werden als Mirror-Verbund dazu dienen meine jails zu speichern (somit erwarte ich schneller jails und somit schneller Performance für Web-, File- und Datenbank-Server

Alle Platten werden über den AHCI-Controller direkt angesprochen, so habe ich eine sehr schnelle Verbindung. Von CD gebootet wollte ich die Installation starten, aber mein Bauchgefühl hatte noch ein Problem. Die SD-Karte passte irgend wie nicht in das Konzept. So habe ich mit im Endeffekt für einen USB-Stick mit 16GB entschieden, der auch direkt auf das Main-Board des Server gesteckt wird. Durch die USB2 Verbindung sollte es für das Booten reichen.

Warum ich so ein Layout gewählt habe, lässt sich mit der Flexibilität erklären. Ich kann jeden der beiden Mirrors in Kapazität erweitern. Kein SATA-Port wird für das OS verbraucht. Manche Leute schließen eine SSD an den 5.Port für eine OS Platte an. Auch das kann ich mit diesem Setup bessern machen in Zukunft. Falls ich einmal mehr HDD-Platz brauche, dann könnte ich die Bays, in denen im Moment noch die SSDs sind mit baugleichen HDDs bestücken und den Platten Mirror auf ein 10-Raid vergrößern (Raid 10 hat die beste Performance) und den 5. SATA Port mit einer SSDs verbinden und die Jails von dort laufen lassen. Da ich jeden Tag eine Sicherung der Jails mache sollte bei einem Ausfall nicht viel verloren gehen. Sol wären alle SATA-Ports optimal ausgenutzt und zukunftssicher!

Die Installation von FreeBSD ging, wie gewohnt einfach und ich war sehr erstaunt, dass alle Devices erkannt wurden. Wie ich aber nach der Installation die Maschine neu startete, kam es zu Kernel-Panic! WAS!!!! Ich konnte es kaum glauben, was ich da las! FreeBSD konnte den ZFS-System-Pool nicht finden. Ich versucht auch eine Installation mit UFS, aber gleiches Ergebnis. Die Nacht wurde immer länger und ich immer verzweifelter! War des doch ein Fehlkauf? Sollte ich die alte Hardware wieder nehmen?

Im Internet wurde ich aber nach kurzen suchen fündig. HP hat mit 3TB Platten und ZFS ein Problem, dass der Kernel sich ausgerechnet mit 3TB Platten in Panik läuft. Ein findiger Typ hat einen neuen zfsloader geschrieben. wenn man den aktuellen mit diesem austauscht, dann sollte das System booten.

Ich hatte nix zu verlieren und tauschte die Datei im /boot Verzeichnis aus, und siehe da, das System startete durch! Nun konnte ich alles andere einrichten. Die zpools wurden angelegt und die Backups nach und nach eingespielt.

Bei der Einrichtung der Jails bemerkte ich beim ersten starten der Jails, dass es eine gute Entscheidung war, diese auf die SSDs zu spielen. Die Jails starten nun wesentlich schneller und die Datenbank zugriffen habe sich merklich gesteigert.

Da in dem HP-Server Gen8 zwei Netzwerk-Karten verbaut sind, dachte ich mir, es wäre doch prima beide Interfaces zu nutzen. Ich habe mit überlegt mich mit dem lagg-Interface auseinander zu setzen.
Dieses Interface bietet die Möglichkeit mehrere Netzwerk-Karten im Failover- oder anderen Setups zu verbinden. Bei einem Klein-Server finde ich es sehr schade, wenn eine Netzwerk-Komponente brach liegt und darauf wartet einen Failover zu bedienen. Das ist nicht effizient. Ich habe die beiden Interface so zusammen gefasst, dass diese eine Lastverteilung machen. so kann ich den Durchsatz verbessern.

Dieser Typ ist in der man-Pages des lagg-Interfaces so beschrieben:

…

loadbalance: Balances outgoing traffic across the active ports based on
hashed protocol header information and accepts incoming
traffic from any active port. This is a static setup and

does not negotiate aggregation with the peer or exchange

frames to monitor the link. The hash includes the Ethernet

source and destination address, and, if available, the VLAN

tag, and the IP source and destination address.

…

Die Einrichtung findet in der rc.conf-Datei statt und sieht folgendermaßen aus:

…

ifconfig_bge0=”up”
ifconfig_bge1=”up”
cloned_interfaces=”lagg0″
ifconfig_lagg0=”laggproto loadbalance laggport bge0 laggport bge1″

ipv4_addrs_lagg0=”192.168.1.254/24 192.168.1.10-16/32″

…

Ja, man kann an dieses Interface auch mehrere IP-Adressen für Jails binden.

Nun läuft das System endlich zu meiner Zufriedenheit. Den zfsloader habe ich in einem Patch Verzeichnis gesichert, damit ich falls ein Update diese überschreibt und nix mehr geht, kann ich diese wieder herstellen.

Jetzt geht es daran das System einzufahren! Ich freue mich schon auf die Ergebnisse.

Mehr kommt im nächsten Eintrag!

Gruß

Robert

Robert Friemer

Ich arbeite seit Windows for Workgroups 3.11, mit Linux seit Version 2.0 und mit FreeBSD seit Version 3.8. In der IT habe ich schon so einige Irrungen und Wirrungen kommen und gehen gesehen. Und ist seit einigen Jahren arbeite ich (fast) Windows-los. Der kleine Daemon ist für mich mittlerweile ein treuer und zuverlässiger Begleiter in der IT geworden.

More Posts - Website

Kategorien

  • Allgemein (20)
  • Anwendungen (15)
  • Befehle (23)
  • bhyve (7)
  • Firewall (10)
    • Ports (7)
  • FreeBSD (35)
  • Jails (3)
  • Linux (4)
  • Plasma (2)
  • Projekte (6)
  • Python (1)
  • Shell (15)
  • Sicherheit (10)
  • Web (8)
  • Windows (8)

Archiv

  • January 2025 (1)
  • December 2024 (4)
  • November 2024 (1)
  • October 2024 (3)
  • September 2024 (1)
  • May 2024 (1)
  • April 2024 (1)
  • March 2024 (2)
  • January 2023 (1)
  • May 2022 (1)
  • April 2022 (1)
  • March 2022 (2)
  • May 2021 (2)
  • November 2020 (1)
  • October 2020 (1)
  • July 2020 (1)
  • June 2020 (5)
  • April 2020 (1)
  • December 2018 (1)
  • September 2018 (1)
  • November 2017 (1)
  • August 2017 (1)
  • June 2017 (1)
  • December 2016 (1)
  • May 2016 (3)
  • March 2016 (1)
  • February 2016 (1)
  • January 2016 (1)
  • December 2015 (1)
  • October 2015 (2)
  • September 2015 (1)
  • June 2015 (3)
  • May 2015 (2)

Suche

Robert Friemer

Tags

.pkgsave 22 25 53 80 110 123 143 443 465 576 993 995 1194 Falsches Keyboard-Layout Fehler Firewall FreeBSD FreeBSD 10 FreeBSD Backup grundsätzliche Ports keine Eingabe Keyboard Layout Login Mail NTP openVPN Plasma Plasma5 Port Ports Secure Shell Sicherheit SSH System wieder herstellen Tastatur Tastatur kaputt TCP UDP Unsichere Router USB-Audio Webserver absichern Webserver Sicherheit Zeit-Server
©2025 Unix & Linux | Built using WordPress and Responsive Blogily theme by Superb