Benutzer-Werkzeuge

Webseiten-Werkzeuge


projekte:docker:keepalived:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
projekte:docker:keepalived:start [2022/11/06 13:01]
tuxoid
projekte:docker:keepalived:start [2022/11/14 18:16] (aktuell)
admin
Zeile 1: Zeile 1:
 ====== Installation keepalived ====== ====== Installation keepalived ======
  
-keepalived sorgt fuer ein Failover einer virtuellen IP-Adresse so das dies als Grundlage einer +keepalived sorgt fuer ein Failover einer virtuellen IP-Adresse so das dies als Grundlage einer Erreichbarkeit einiger Container unter nur einer IP-Adresse dienen kann. Dazu habe ich Keeepalived auf den beiden ersten Manager Knoten (dockerman01 und dockerman02) installiert.
  
 Die Installation ist reaktiv einfach da man keepalived in den Standard-Repositories findet: Die Installation ist reaktiv einfach da man keepalived in den Standard-Repositories findet:
  
   apt install keepalived   apt install keepalived
 +
 +Dann muss noch die keepalived Konfigurationsdatei gepflegt werden. Die wichtigen Stellen sind hierbei
 +
 +  * state (MASTER oder BACKUP, je nachdem wer der "Chef" der Server sein soll)
 +  * interface (Da muss das Netzwerkinterface eingetragen werden welches die IP-Adresse bekommen soll, normalerweise "eth0" oder so was)
 +  * virtual_router_id (Eine Nummerierung bzw. Name des keepalived Verbundes, muss gleich sein auf alles keeplived Servern)
 +  * priority (Definiert wer prioritätsmässig normalerweise die IP-Adresse bekommt)
 +  * auth_pass (Authrentifizierung für andere keepalived Instanzen, dieses Passwort muss auch auf allen gleich sein)
 +  * virtual_ip_address (Die IP-Adresse(n) die aktiviert werden soll und über die nachher zugegriffen werden soll, darf es natürlich nicht vorher geben)
 +  * OPTIONAL: notifiy (Hier kann man ein Skript angeben welches bei einem Neustart, Fehler, Schwenk etc der IP-Adresse aufgerufen wird.
 +
 +Zu keepalived und den anderen Optionen findet man [[https://keepalived.readthedocs.io/en/latest/index.html|hier]]eine erschöpfende Dokumentation.
 +
 +Zur Zeit läuft bei mir diese Konfiguration (Mindestens auth_pass und interface anpassen!!!):
 +
 +Konfiguration auf dockerman01 (/etc/keealived/keepalived.conf)
 +<code>
 +global_defs {
 +    script_user root
 +    enable_script_security
 +}
 +vrrp_instance VI_1 {
 +    state MASTER
 +    interface eth0
 +    virtual_router_id 61
 +    priority 100
 +    advert_int 1
 +    authentication {
 +        auth_type PASS
 +        auth_pass MEINPASSWORT
 +    }
 +    virtual_ipaddress {
 +        172.17.200.24/23
 +        172.17.200.25/23
 +    }
 +#    notify /root/cluster.sh
 +}
 +</code>
 +
 +Konfiguration auf dockerman02 (/etc/keealived/keepalived.conf)
 +<code>
 +global_defs {
 +    script_user root
 +    enable_script_security
 +}
 +vrrp_instance VI_1 {
 +    state BACKUP
 +    interface eth0
 +    virtual_router_id 61
 +    priority 90
 +    advert_int 1
 +    authentication {
 +        auth_type PASS
 +        auth_pass AUCHMEINPASSWORT
 +    }
 +    virtual_ipaddress {
 +        172.17.200.24/23
 +        172.17.200.25/23
 +    }
 +#    notify /root/cluster.sh
 +}
 +</code>
 +
 +Danach noch den Start bei Systemstart einrichten (Auf beiden PIs):
 +
 +  systemctl enable keepalived
 +  systemctl start keepalived
 +
 +Jetzt sollte man auf dem MASTER die IP-Adresse sehen können:
 +<code>
 +  ip addr
 +  
 +2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
 +    link/ether dc:a6:32:51:3f:e0 brd ff:ff:ff:ff:ff:ff
 +    inet 172.17.200.77/23 brd 172.17.201.255 scope global dynamic noprefixroute eth0
 +       valid_lft 862186sec preferred_lft 754186sec
 +    inet 172.17.200.24/23 scope global secondary eth0
 +       valid_lft forever preferred_lft forever
 +    inet 172.17.200.25/23 scope global secondary eth0
 +       valid_lft forever preferred_lft forever
 +</code>
 +
 +Testen kann man jetzt noch das die auch auf dem zweiuten PI übernommen wird indem man Nummer 1 abschaltet oder neu startet. Wenn man neu startet muss man allerdings schnell sein sonst wandert die IP wieder zurück auf den ersten PI da dieser die höhere Priorität hat.
  
projekte/docker/keepalived/start.1667736092.txt.gz · Zuletzt geändert: 2022/11/06 13:01 von tuxoid