1

I have a couple of windows server instances running on Amazon EC2 with VisualSVN Server and would like to make them a bit more fault tolerant by running a duplicate instance with load balancers.

The problem is the specific data, as an example it does no good to fail over from one web server to another web server if the contents of the document root i.e. "C:/Repositories" are not identical.

my basic idea is share volume (i.e. "C:/Repositories") between EC2 istances:

enter image description here

But, I have many doubts:

  1. Would it be possible/safe to run two/more instances of VisualSVNServer pointing to the same repo?

  2. Would it be possible/safe run instances of VisualSVNServer behind Amazon Load Balancer?

  3. Would it be possible/safe run instances of VisualSVNServer pointing to Network File System?

  4. I'm undecided between AWS S3 and AWS EBS, what do you recommend as a best storage solution for VisualSVNServer and NFS architecture (I think EBS, but they are newbie in aws services)?

Simone Nigro
  • 375
  • 2
  • 3
  • 17

1 Answers1

2
  1. Yes, that is possible and safe.
  2. Yes, that should be possible. But I recommend you to enable Amazon Load Balancer Sticky Session feature
  3. Yes, it should be possible with some caveats: you should be careful about network protocol used for accessing shared data. Subversion relies on file locking and atomic file move operations. SMB and SMB2 are known to be working fine, while Unix NFS protocol may have problems.
  4. I don't have enough experience with AWS to answer this particular question.

As side note I recommend you consider VisualSVN Server Multisite Repository Replication (2) feature for such deployments. In this case you will have separate copy of data on every server, which can distributed around different geographic location for faster access.

(1) http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_StickySessions.html

(2) https://www.visualsvn.com/server/features/multisite-replication/

Ivan Zhakov
  • 1,836
  • 14
  • 15