[Eisfair] Benutzer migrieren

Thomas Quast eisfair at oritopha.de
Do Okt 12 20:26:00 CEST 2023


Hallo Juergen,

Am 11.10.23 um 10:02 schrieb Jürgen Pfautsch :

> Moin.
> Ich habe einen Backup-Server zum eis laufen, auf den die Dateien
> (fileserver) per rsync gesichert werden.
> Mein Ziel ist es, den Backupserver so zu halten, daß er im Bedarfsfall
> sofort einspringen kann, wenn der originale ausfällt.
> Dazu müßte ich zumindest die Benutzer, Gruppen und PW synchronisieren.

Soweit, so klar.

> Geht das automatisiert und würde mir jemand bitte die Richtung weisen?
> Sahnehäubchen wäre natürlich, wenn sich das in ein script einbauen ließe.

Machbar ist fast alles. Ist nur eine Frage des Aufwandes.

Hier eine moegliche Loesung, welche ich mal fuer einen Kunden konzipierte:

Benötigt wird:

2 x Server (1 x Arbeitsserver, 1 x Backupserver)
1 x RaspberryPi 1

Der RPi wird minimal installiert und konfiguriert. Samba und NFS sind nicht
notwendig. SSH sollte aktiviert und konfigiert sein. rsync ist ebenfalls
vorhanden, genauso wie NTP.

Beide Server werden installiert und grundlegend konfiguert (Basisinstallation).
(z.B. eine Partition fuer Boot, eine fuer das System, eine fuer die User, eine
fuer die Daten und eine ganz kleine 1MByte. Dazu spaeter mehr. Nennen wir sie
P1 bis P5)

Ein Server, nennen wir ihn MASTER (M) wird fuer den Betrieb konfiguriert (mit
Samba, Apache, NFS, SSH, ... halt alles was so gebraucht wird. Auch werden
Benutzer hinzugefuegt, sodass dieser fuer den Einsatz fertig ist. Fuer dieses
Beispiel geben wir M die IP 10.0.0.1 und den Hostname M.

Der andere Server, nennen wir ihn BACKUP (B) bekommt die IP 10.0.0.2 und den
Hostname B.

Nun wird es etwas Tricky. ,-)

Auf RPi laeuft ein Script, welches (z.B.) alles minuetlich prueft, ob M noch
erreichbar ist.

Zu einer bestimmten Zeit weckt der RPi B mittels WOL auf.

Auf B startet beim Systemstart als letztes ein Script, welches prueft, ob M
erreichbar ist (z.B. ping -c 2 10.0.0.1). Ist dies der Fall, so wird ein
Backup via SSH und rsync angetossen. Ginge auch via NFS, aber ich habe hier
mal Dein Beispiel aufgegriffen.

Da fuer die verschieden Bereiche (Boot, System, User, Daten) verschiedene
Partitionen existieren laesst sich so einfach das Backup durchfuehren.

Natuerlich geht das auch, wenn alles auf zwei Partitionen laeuft (P1 und P2).

Nach dem Backup werden alle unnoetigen Dienste deaktiviert, welche zwar auf M,
aber nicht auf B gebraucht werden, und B faehrt wieder runter.

Soweit, so gut.

Jetzt saeuft Dir M ab.

Da RPi regelmaessig prueft, ob M erreichbar ist, diesen aber nicht mehr
erreichen kann, sendet RPi ein Startsignal (WOL an B).

Auf B startet beim Systemstart als letztes ein Script, welches prueft, ob M
erreichbar ist (z.B. ping -c 2 10.0.0.1). Ist dies _nicht_ der Fall, so
passiert jetzt folgendes:

- aus der kleinen Partition wird die Konfiguration von M geholt (IP und
Hostname)
- B wird geaendert in M (IP und Hostname).
- alle deaktivierten Dienste werden nun aktiviert (z.B.: START_XYZ="yes")
  Laesst sich locker mittels grep -i realisieren.
- Neustart

Da B nun M wurde, koennen alle User wieder wie gewohnt weiter arbeiten und
Du kannst Dich an die Reparatur von dem defekten M machen.

Das ganze ist jetzt nur mal eben schnell hingeschrieben, soweit ich mich
noch erinnern konnte, da es jetzt doch schon etwas mehr als zehn Jahre her
ist.

Es ist auch nur als Denkanstoss gedacht. Hier fehtl noch der Vorgang, wenn
(alt-)M wieder repariert ist, die Intervalle zum Backup, besonders, wenn Du
auf M ein Update machst, usw.

Vielleicht hilft es ja.

Meinem Kunden hat es gefallen, da es Kostenguenstig und relativ schnell
umzusetzen war. Und ein RPi 1 im IDLE verbraucht nicht viel.

Fuer den Wechsel vom Backupserver (M vormals B) zurueck zu B, hatte ich
auch ein passendes Script geschrieben, welches den Wechsel automatisierte.

Eine andere Variante ware auf dem Eis ein Heartbeat, da waerest Du aber
wieder bei einem HA-Cluster und beide Systeme wuerden permanent laufen,
waeren aber auch immer synchron. Nur die Einrichtung ist ein 'wenig'
aufwaendiger. ,-)

Gruss,
Thomas

-- 
Packageserver: https://www.oritopha.de/index.txt


Mehr Informationen über die Mailingliste Eisfair