Ich habe nach einer Lösung gesucht, mit der man eine SSH-Sitzung von einer Linux-Box auf eine andere migrieren kann. Ich bevorzuge eine Open-Source- oder kostenlose Lösung, kann aber auch keine kommerzielle Lösung finden. Ich vermute, dass dies nicht möglich ist, da eine SSH-Sitzung eng an TTY, Port usw. gebunden ist.
Im Grunde habe ich ein Setup, das Haproxy mit Keepalived verwendet, das eingehende SSH-Verbindungen an eine Linux-Box in einem Pool von Linux-Boxen (Hosts) übergibt, wobei Haproxy weiterhin als Reverse-Proxy/Load Balancer fungiert, der keine direkte Verbindung vom SSH-Client zum SSH-Server zulässt (ich habe woanders gelesen, dass dies möglich ist). Aber im Falle eines Ausfalls einer Linux-Box gibt es keine Möglichkeit, SSH-Sitzungen auf der besagten Linux-Box auf eine der Überlebenden zu migrieren.
Natürlich kann der Benutzer versuchen, die Verbindung wiederherzustellen und würde eine neue SSH-Sitzung erhalten, aber das ist nicht, was unsere Benutzer wollen.
Hat jemand eine Lösung?
Antwort1
Vielleicht, nur vielleicht, können Sie dies mit Heartbeat unter Linux tun. Es funktioniert für andere Sachen ... Ich habe es mit NFS gemacht. Allerdings frage ich mich, ob es aufgrund der Verschlüsselung ein Problem geben würde, da der Client auf einen anderen Daemon umsteigen würde und sich beide Systeme möglicherweise nicht gegenseitig vertrauen würden. Vielleicht, wenn es ein unverschlüsseltes Protokoll wäre, wie rsh/rlogin.
Ich habe vor langer Zeit ein Dokument geschrieben, das einige der Heartbeat-Einstellungen erklärt, allerdings bezieht sich das Dokument auf HA NFS. Vielleicht können Sie etwas daraus lernen.
https://www.howtoforge.com/hohe-verfügbarkeit-nfs-mit-drbd-plus-heartbeat
http://linux-ha.org/wiki/Heartbeat
Jemand anderes hat das schon einmal gefragt und die Antwort war ungefähr die gleiche