Amazon-Ec2
負載均衡器後面的 VisualSVN 伺服器的多個 AWS EC2 實例之間的網路文件系統 (NFS)
我在 Amazon EC2 上使用 VisualSVN Server 執行了幾個 Windows 伺服器實例,並希望通過執行具有負載均衡器的重複實例來使它們更具容錯性。
問題在於特定數據,例如,如果文件根目錄(即“C:/Repositories”的內容不同)從一個 Web 伺服器故障轉移到另一個 Web 伺服器是沒有好處的。
我的基本想法是 EC2 實例之間的共享量(即“C:/Repositories”):
但是,我有很多疑問:
- 執行兩個/多個指向同一個倉庫的 VisualSVNServer 實例是否可能/安全?
- 在 Amazon 負載均衡器後面是否有可能/安全執行 VisualSVNServer 實例?
- 是否有可能/安全執行指向網路文件系統的 VisualSVNServer 實例?
- 我在 AWS S3 和 AWS EBS 之間猶豫不決,你推薦什麼作為 VisualSVNServer 和 NFS 架構的最佳儲存解決方案(我認為是 EBS,但它們是 aws 服務的新手)?
- 是的,這是可能且安全的。
- 是的,這應該是可能的。但我建議您啟用 Amazon Load Balancer Sticky Session 功能
- 是的,應該有一些警告:您應該小心用於訪問共享數據的網路協議。Subversion 依賴於文件鎖定和原子文件移動操作。眾所周知,SMB 和 SMB2 工作正常,而 Unix NFS 協議可能有問題。
- 我沒有足夠的 AWS 經驗來回答這個特定問題。
作為旁注,我建議您考慮針對此類部署的VisualSVN 伺服器多站點儲存庫複製(2) 功能。在這種情況下,您將在每台伺服器上擁有單獨的數據副本,這些副本可以分佈在不同的地理位置以便更快地訪問。
(1) http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_StickySessions.html
(2) https://www.visualsvn.com/server/features/multisite-replication/