[OpenAFS] recommended hardware for new production environment

Marcus Watts mdw@umich.edu
Fri, 19 Mar 2010 20:15:50 -0400

> Date:    Fri, 19 Mar 2010 14:54:15 PDT
> To:      openafs-info <openafs-info@openafs.org>
> From:    Jonathan Nilsson <jnilsson@uci.edu>
> Subject: [OpenAFS] recommended hardware for new production environment
> Hello,
> I've been testing OpenAFS for a while now, and I think we are soon ready to
> start moving user accounts, home directories and other shared folders to a
> production AFS environment.  I would like to know what hardware folks are
> using for the OpenAFS components at a site comparable to our size:
> * Approximately 500 users, each with their own user/home volume
> * At least 50 to 100 shared project directories which will have their own
> volume
> * Total disk usage is not going to be that high... initially about 500GB,
> but up to 2TB.
> We are using Windows domain controllers for the user accounts and Kerberos
> bits.  We plan to use a mix of Virtual Machines and physical machines for
> OpenAFS database servers.  And we plan to initially have a few (3 - 4)
> FileServer machines.
> Mainly, I am interested in finding out how much CPU and RAM the database
> server components of OpenAFS will take.  We have donated old hardware with
> Dual Intel Xeon 3.06GHz processors and 4GB DDR2 RAM.  And we can also
> allocate a few Virtual Machines with up to 4GB memory.
> Thoughts and other feedback is much appreciated.  Thanks!
> --
> Jonathan Nilsson, jnilsson@uci.edu
> Social Sciences Computing Services
> 949.824.1536, SSPA 4110, UC Irvine

test cell #1
2 x poweredge 1750's (each: dual xeon 3.06 ghz, 4G ram -- oddly similar to
your "donated old hardware").
	/var/krb5kdc		16M
		for 3127 kerberos principals.
	/var/lib/openafs/db	6 M
		for 3025 prot entries (users and groups), 299 volumes.
	/vicepa space usage for 299 tiny volumes: 137108 + 162792 K
	system software, including afs, kerberos, development tools, etc.
		1.8 g
These machines have 4G of ram apiece - this is more than sufficient
for a database server: it means that all the data for each service
is cached in ram.  If they were used as serious fileservers also, this
would not quite as advantageous.

test cell #2
	/var/krb5kdc		7M
		for 276 kerberos principals. (includes 1.4M core file and other junk)
	/var/lib/openafs/db	452 K
		for 252 users, 239 volumes.
this cell has distinctly less performance.  The biggest difference is
the network: this cell only has 100 mb not 1gb.  The machines have 256
M ram and 512 M ram, and 1.7Ghz processors.  This is more than adequate
given the network.  Neither machine is anywhere close to running out of memory.

I'm afraid I can't give you anything more definite about memory - a lot
depends on how you tune things.

For a database server, you generally want light utilization; what you
care about is response latency.  You can probably afford to trim back
on memory a lot, since you won't have many users.  You probably don't
want to compromise so much on CPU or network.

The pe1750's above (2x4ghz cpu, 4g ram) were at one point the class of
machines used for the production db servers for umich.edu (ca. 2005?).
This was the first generation of machines where the CPU & memory of the
machines never became a consideration before the machines were retired.

The gx240,gx270 are obviously toys today; but they're pretty kickass
compared to even the most expensive machines available in the mid 90's.
Of course, users today expect a bit more, but even so, these machines
might actually be quite adequate for the # of users & volumes you plan.