Networking
如何為真正的點對點配置 Unison?
我有一些設備,並且正在考慮使它們與Unison保持同步。
這些設備並非一直在執行,它們每天會關閉幾個小時,不一定同時關閉。這些設備都沒有一天 24 小時執行。所以我需要真正的點對點,例如查看更改(標記為
*
)如何從 A 傳播到 B、C、D,即使在所有同步期間都沒有執行:A-on* B-on C-off D-off A-on* B-on* C-off D-off A-off* B-on* C-off D-off A-off* B-on* C-on D-off A-off* B-on* C-on* D-off A-off* B-off* C-on* D-off A-off* B-off* C-on* D-on A-off* B-off* C-on* D-on*
不幸的是,Unison使用者手冊建議2 台以上機器採用星型拓撲:
使用 Unison 同步多於兩台機器
Unison 設計用於同步副本對。但是,可以通過執行多個成對同步來使用它來保持更大的機器組同步。
如果您需要這樣做,最可靠的設置方法是將機器組織成“星型拓撲”,其中一台機器指定為“集線器”,其餘機器指定為“輻條”,並且每台輻條機器同步只有集線器。星型拓撲的最大優勢在於它消除了混淆“虛假衝突”的可能性,這是由於 Unison 為它同步的每對主機維護一個單獨的存檔而引起的。
儘管如此,有什麼方法可以實現與 Unison 真正的點對點?
我一直在星型拓撲中使用 Unison 來同步我的四台機器。這樣做的原因是它不是一個版本控製文件系統(例如 git),而是一個同步工具。
如果您確實選擇了分佈式拓撲(您必須通過為每個設備創建配置文件並同步所有設備來設置),那麼您無疑最終會進行大量的手動衝突解決,這將是嚴峻的。除非您僅對系統上的文件進行極其基本的更改,並且一次僅在一台設備上進行更改,否則肯定會出現這種情況。
所以,建議:
- 租一個便宜的虛擬伺服器,它有足夠的儲存空間來儲存你想要同步的數據。
- 嘗試分佈式拓撲,看看它是否會導致太多問題而無法使用。