Question

I am looking for an enterprise subversion setup, that will fit the following requirements:

  • I need at least 2 instances of the repository server for high availability reasons
  • Management of multiple repositories
  • The 2 repository servers need to be synchronized.
  • Easy administration and configuration
  • User & authorization management with LDAP integration (web-interface) - optional
  • Backup & restore features, that guarantee the recovery with not more than 1 day of lost data
  • Fast and easy setup.
  • Monitoring of the repository(traffic, data volume, hotspots..) - optional
  • good security
  • either open source or low price tag, if possible
  • some pricing range, if a commercial tool is recommended.
  • a VMWare appliance would be great.

I am interested in an appliance or a set of subversion tools, that support these requirements. The operating system should be Ubuntu.

The configuration and setup of the toolset should be doable in hours or at the most a few days...

Our development team is not huge (about 30 people), but grows continually.

I have been unable to find anything (with the exception of Subversion MultiSite, that seems to big (and expensive? - they give no price information) for our enterprise) Can anyone recommend a solution? Could you also describe your experiences with the recommended tool?

The easier and faster installation and configuration is, the better... If it is without a price tag, this is even better..

Thank you for any help.

Was it helpful?

Solution

Running a subversion server in a VMWare instance with one of VMWare's "High Availability" tools will give you most of what you need. There are pre-built VMWare Appliances that have a Subversion server built in. http://www.vmware.com/appliances/directory/308

VMWare's HA features will give you the redundancy of the SVN server instance. (You're going to need multiple physical servers for true redundancy. If one server fails, VMWare will re-start the instance on the new server.)

I don't know of any VMWare appliances that have special backup features, but this is pretty trivial to script. Just run an 'svnadmin hotcopy' once a day, so you have a copy of the repository ready to go in case of a corruption. (On top of this, you really should be using a SAN RAID array with tape backups.)

Our setup:

  • Rack of Blade Servers
  • VMWare Infrastructure
  • Virtualized Windows 2003 Server
  • If Windows crashes or one of the blades goes down, VMWare re-starts the Windows instance.
  • CollabNet Subversion Server, running Apache with SSPI authentication
  • SVN repo lives on a SAN
  • Nightly svnadmin hotcopy and verify of the repo (to another directory on the SAN), so we have a "hot" backup of the repo ready to go in case of a corruption problem.
  • Nightly tape backups of everything
  • Tapes taken offsite regularly

The cost of the server hardware and VMWare is going to be your biggest issue (assuming you don't already have this.) If you're not willing to make this kind of cash outlay, it may be worth looking at a hosted SVN provider.

OTHER TIPS

I haven't seen a shrink-wrap setup for this, so far. If you want to build that from scratch, here are some pointers:

  • You can use builtin commands for the mirroring of the repo.
  • For multiple repos, just create a huge one and then add paths below the root.
  • For me, the command line is "easy admin&config", so can't help you there
  • To get user management, let subversion listen to localhost (127::1) and put an apache web server in front. There a loads of tools for user management for web servers.
  • For backup&restore, see your standard server backup tools.

VisualSVN Server answers most of your requirements.

From the web promo page (my emphasis):

Zero Friction Setup and Maintenance

  • One package with the latest versions of all required components
  • Next-Next-Finish installation
  • Smooth upgrade to new version

Enterprise-ready Server for Windows Platform

  • Stable and secure Apache-based Windows service
  • Support for SSL connections
  • SSL certificate management
  • Active Directory authentication and authorization with groups support
  • Logging to the Windows Event Log
  • Access and operational logging (Enterprise edition only)
  • Based on open protocols and standards
  • Configured by Subversion committer to work correctly out-of-the-box

I can vouch for visual SVN. I use the free version for our team of 4 developers, and it does everything it says on the tin reliably. Installation also took all of 5 minutes. That said, it does require a windows box.

We use svn for enterprise work. It is perfectly adequate. There are plenty of enterprise testimonials, including one from Fog Creek (Joel on Software, Stack Overflow).

I don't believe you need anything beyond the regular version.

I suppose you are aware that it is typical to use Subversion with TRAC, the issue tracking system.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top