[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn server hardware requirements

From: Thomas Harold <tgh_at_tgharold.com>
Date: 2007-05-31 23:40:33 CEST

marc gonzalez-carnicer wrote:
> Hi, I've seen this question arises from time to time on the mailing
> list archive, but I'd like to query for a particular case. I wonder if
> this kind of information should be on the subversion.tigris.org page
> (I did not find it there).

Everyone's access patterns are different, which is why I suspect there
isn't a page for it.

> * is the above mentioned hardware configuration enough to serve 5 - 20
> developers?

At a minimum, I'd make sure that you're running RAID1 with a hot-spare
disk. But the other issue you'll have with an older system is bus
bandwidth (PCI and chipset). When you run hdparm -tT /dev/sdX, you'll
see two numbers. On modern machines, you'll see numbers in the range of:

# hdparm -tT /dev/md1
/dev/md1:
  Timing cached reads: 4140 MB in 2.00 seconds = 2073.53 MB/sec
  Timing buffered disk reads: 208 MB in 3.01 seconds = 69.08 MB/sec

# hdparm -tT /dev/md4
/dev/md4:
  Timing cached reads: 4088 MB in 2.00 seconds = 2046.40 MB/sec
  Timing buffered disk reads: 588 MB in 3.01 seconds = 195.67 MB/sec

On an older Celeron III or VIA C3 system, the cached read value is down
in the 150-200 MB/s range with only 10-20 MB/s coming off of the disk.
So a modern motherboard would have a lot more bandwidth and disk speed.

> * what hardware configuration are you using on your servers? have you
> brought back to life forgotten machines? or are you using brand new
> servers with xeons / dual core and raid?

Our current SVN server is a Xen DomU running on top of a dual-core AM2
Athlon X2 w/ 512MB dedicated to the DomU. The underlying disk system is
a 4-drive RAID10. The DomU only has access to a single CPU at the
moment. This is suitable for half a dozen users with about 2-dozen
repositories totaling around 25GB. And being in a DomU creates some
bottlenecks (3.0.2 is an old version of Xen and disk/network IO wasn't
optimized). Bogomips on that box and the others are 5500-6000.

Our next box will also run Xen (but v3.1) on top of a dual-CPU dual-core
Opteron Socket F motherboard with the files being stored on a iSCSI SAN.
  But that's still a few months away and we're not hurting for
performance on the existing system.

> * in case the sever has to be replaced or upgraded, which components
> should be chosen carefully? disk speed? motherboard / aux boards? ram?
> network card? cpu?

The NIC (assuming you have a semi-decent gigabit card) will probably not
be a bottleneck. SVN is very lean over the wire. Heck, our bottleneck
is really the T1 line out of the building (most of us are offsite most
of the time).

I'd say, off-hand, that the # of disk spindles and the underlying file
system matter the most. Especially for larger repositories with lots of
revision files (assuming you use FS and not BDB). If you use ext3, that
means you really need to turn on directory indexing (because all
revision files end up in a single directory). So a 4-disk RAID10 would
be better then a 2-disk RAID1. A 6-disk RAID10 on top of 10k or 15k RPM
disks would probably scream (even using simple 10k SATA drives).

CPU need for us is mostly driven by the SSH encryption (we all use
svn+ssh to talk to the server). But most dual-core ~2GHz servers could
probably handle a few dozen (more?) svn+ssh users without issues. OTOH,
a dual-CPU dual-core system isn't all that expensive at the moment.

...

Going the white-box route, figure $700 for a good server case (like the
SuperMicro 4U cases), about $1200 for CPU (pair of dual-core) / MB
(Tyan) / RAM (2GB to start), $350 for misc parts (optical drives,
adapter cable for the front panel to connect to a regular ATX
motherboard, hot-plug SATA backplane) and about $1200 for 4-6 SATA
disks. Running CentOS5 or SUSE or whatever distro floats your boat.
Plus the time to assemble the hardware.

Or around $5000 for a Dell PE2900, pair of dual-core CPUs, 2GB RAM, (4)
73GB SAS 15k drives in RAID10, redundant PSU, and dual-NIC Intel
PRO/1000 and Redhat Enterprise Linux 5 w/ 3-year support. And a 3-year
silver warranty from Dell for next business day parts replacement.
Maybe bump up to (6) SAS drives if you need more space/performance, and
don't forget to order a spare drive to use as a hot-spare.

(Don't forget the $400-$500 for a good UPS.)

I suspect you could service a LOT of SVN traffic (even with SSH or
WebDav or HTTPS) with a 4-core system on top of a 6 or 8 disk RAID10 (or
RAID6) array with fast drives. How many users? That would depend on
your usage patterns. Sometimes server spec'ing is more about "how much
does it cost to let the administrator or boss sleep easily at night".

But since your current repository space is only 2GB. You could probably
go with a single dual-core CPU and a RAID1 on top of 10k/15k drives and
get good performance. At least until you add a web server, database
server and other applications which all start competing for the
spindles, CPU and RAM.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Thu May 31 23:41:15 2007

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.