將 ssh 會話從一個 Linux 機器遷移到另一個 Linux 機器作為故障轉移

將 ssh 會話從一個 Linux 機器遷移到另一個 Linux 機器作為故障轉移

我一直在尋找一種解決方案,允許將 ssh 會話從一個 Linux 機器遷移到另一個 Linux 機器。我更喜歡開源或免費的解決方案,但我甚至找不到商業解決方案。我懷疑這是不可能的,因為 ssh 會話與 tty、連接埠等緊密相關。

基本上我有一個使用 haproxy 和 keepalived 的設置,它將傳入的 ssh 連接移交給 Linux 盒子(主機)池中的一個 Linux 盒子,haproxy 仍然充當反向代理/負載平衡器,不允許從 ssh 直接連接客戶端到ssh 伺服器(我在其他地方讀到這是可能的)。但是,如果 Linux 機器發生故障,則無法將所述 Linux 機器上的 ssh 會話遷移到倖存者之一。

當然,用戶可以嘗試重新連接並獲得新的 ssh 會話,但這不是我們的用戶想要的。

有人有解決辦法嗎?

答案1

也許,只是也許你可以在 Linux 上用 heartbeat 來做到這一點。它適用於其他東西......我已經用 NFS 完成了。儘管這讓我想知道是否會因為加密而出現問題,因為客戶端會故障轉移到不同的守護進程,並且可能兩個系統都不會相互信任。也許是未加密的協議,例如 rsh/rlogin。

我之前寫過一篇文檔,解釋了一些心跳設置,儘管該文檔與 HA NFS 相關。也許你能從中得到一些東西。

https://www.howtoforge.com/high-availability-nfs-with-drbd-plus-heartbeat

http://linux-ha.org/wiki/Heartbeat

之前有人問過這個問題,答案也差不多

故障轉移/冗餘 SSH

相關內容