HA Setup: Keepalived/VRRP, VIPs und Split-Brain Prevention

Ein Hochverfügbarkeits-Setup (HA) ist essenziell, um den kontinuierlichen Betrieb kritischer Dienste zu gewährleisten. Durch den Einsatz von Keepalived und VRRP (Virtual Router Redundancy Protocol) lassen sich virtuelle IP-Adressen (VIPs) flexibel zwischen mehreren Servern verschieben, wodurch Ausfallzeiten minimiert werden. Gleichzeitig müssen Strategien zur Split-Brain-Prävention implementiert werden, um Dateninkonsistenzen und unerwartetes Verhalten im Cluster zu vermeiden.

Grundlagen von Keepalived und VRRP

Keepalived ist ein Open-Source-Dienst, der VRRP implementiert und Failover-Mechanismen zwischen mehreren Hosts ermöglicht. VRRP stellt sicher, dass eine virtuelle IP-Adresse immer einem aktiven Master-Server zugewiesen ist. Fällt dieser aus, übernimmt ein Backup-Server die IP-Adresse, sodass Clients weiterhin ohne Unterbrechung erreichbar sind.

VRRP Konzept

  • Master: Der Server, der die VIP aktiv hält und Anfragen bedient.
  • Backup: Ein oder mehrere Server, die den Master überwachen und im Ausfallfall die VIP übernehmen.
  • Priority: Bestimmt, welcher Server Master wird. Höhere Priorität gewinnt im Failover.
  • Advertisement Interval: Häufigkeit, mit der der Master seine Präsenz meldet.

VIP-Konfiguration

Die virtuelle IP-Adresse ist der zentrale Punkt der HA-Konfiguration. Clients greifen auf diese IP zu, unabhängig davon, welcher physische Server gerade aktiv ist.

Beispiel-Konfiguration Keepalived

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 100
    advert_int 2
    authentication {
        auth_type PASS
        auth_pass 1234
    }
    virtual_ipaddress {
        192.168.1.100
    }
}

Backup-Server Konfiguration

vrrp_instance VI_1 {
    state BACKUP
    interface eth0
    virtual_router_id 51
    priority 90
    advert_int 2
    authentication {
        auth_type PASS
        auth_pass 1234
    }
    virtual_ipaddress {
        192.168.1.100
    }
}

Failover und Split-Brain-Prävention

Ein kritisches Risiko in HA-Setups ist der Split-Brain-Zustand, bei dem zwei Server gleichzeitig als Master agieren. Dies kann zu Inkonsistenzen und Datenverlust führen. Maßnahmen zur Prävention sind daher essenziell.

Mechanismen zur Split-Brain-Prävention

  • Unicast VRRP: Kommunikation direkt zwischen den HA-Knoten, um Master/Backup-Status zu überprüfen.
  • Track-Script: Prüft kritische Dienste und setzt die Priorität herunter, wenn diese ausfallen.
  • Quorum-Mechanismus: Zusätzlicher Entscheidungsmechanismus, falls Netzpartitionen auftreten.
  • Garantie für eindeutige VIP-Zuweisung: Nur ein Server hält die VIP aktiv.

Keepalived Health Checks

Keepalived bietet die Möglichkeit, den Zustand von Diensten zu überwachen und die VIP-Zuweisung entsprechend zu steuern. So kann ein Master-Knoten seine VIP automatisch freigeben, wenn z.B. die Datenbank nicht erreichbar ist.

Beispiel Track Script

vrrp_script chk_http {
    script "/usr/local/bin/check_http.sh"
    interval 2
    weight -20
}

vrrp_instance VI_1 {
...
track_script {
chk_http
}
}

Check Script Beispiel

#!/bin/bash
curl -sSf http://localhost:8080/health || exit 1

Monitoring und Logging

Für den produktiven Betrieb ist es wichtig, Failover und HA-Zustände zu überwachen. Keepalived unterstützt umfangreiches Logging.

Best Practices

  • Syslog Integration für zentrale Auswertung
  • Alerting bei Master-Wechsel
  • Regelmäßige Tests der Failover-Szenarien
  • Versionierung der Konfiguration und Backup der Keepalived-Files

Tipps für produktiven Einsatz

  • Immer gleiche VRID auf allen Nodes verwenden, keine Duplikate im Netzwerk
  • Redundante Netzwerkpfade einplanen, um Single Points of Failure zu vermeiden
  • Track-Skripte an kritische Dienste koppeln
  • Prioritäten so festlegen, dass der bevorzugte Master immer die höchste Priorität hat
  • Dokumentation der HA-Konfiguration für Audits und Troubleshooting

Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3

Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.

Meine Leistungen umfassen:

  • Professionelle Konfiguration von Routern und Switches

  • Einrichtung von VLANs, Trunks, Routing, DHCP, NAT, ACLs und weiteren Netzwerkfunktionen

  • Erstellung von Topologien und Simulationen in Cisco Packet Tracer

  • Aufbau, Analyse und Fehlerbehebung von Netzwerk-Labs in GNS3 und EVE-NG

  • Automatisierung von Netzwerkkonfigurationen mit Python, Netmiko, Paramiko, NAPALM und Ansible

  • Erstellung von Skripten für wiederkehrende Netzwerkaufgaben

  • Dokumentation der Konfigurationen und Bereitstellung nachvollziehbarer Lösungswege

  • Konfigurations-Backups, Optimierung bestehender Setups und technisches Troubleshooting

Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.

Related Articles