Coda File System

Re: Maximum volume size (was: Some questions...)

From: Ivan Popov <>
Date: Tue, 24 Sep 2002 23:54:23 +0200 (MET DST)
Hello Derek,

On Tue, 24 Sep 2002, Derek Simkowiak wrote:

> > Unfortunately, you can not count with having more than about 1G RVM per
> > one server process.
> 	First, can you substantiate your claim about the 1 Gig RVM limit?
> I just need something harder than "some guy on the mailing list said so".

I mean it is a "tested" setup but I am not aware of anyone running with
bigger rvms. The harder limit should be around 2G, hitting the sign bit
and OS limitations. Even 1G is still not listed as a standard choice at
setup, you have to know it is there :)

> I'd like to know how you discovered this limitation, and how long ago that
> was.  (And, are you involved in CODA source code development?)

I am an active user :)

> (.04)x = 1 Gig
>      x = 25 Gig
> 	25 Gig is then the maximum CODA volume size, due to this 1 Gig RVM
> metadata size limit.  Can anyone substantiate this hypothesis?

It depends on your file size distribution (your max number of files). I
have not hit this limit with my installation, and M$ files tend to be
bigger that Un*x ones :) so you should be safe with 30G/server.
You may plan to introduce more server processes as needed, when you get
more files and more disks. (The server processes do not have to reside on
the same host either, so you can add space by 30G "pieces" on existing
or new hosts). What you risk by "underestimating" RVM is just some unused
place on file data partition, not too dangerous.

> 	Furthermore, does all of the RVM metadata reside in memory at one
> time?  If so, my particular RVM metadata will need to be far less than 1
> Gig, as I also need room for the other server software that will be
> running.

No, it has to be in virtual memory, that is it's ok to be swapped out.

> > RVM for the Coda server is on the Coda server that shouldn't be the
> > same as your Web servers.
> 	I think you missed something... Each node in the cluster will be a
> webserver and a "backup" CODA server.  Each node in the cluster will also

No, you do *not* want that. You want each node to be a Coda client only,
with Coda server(s) running separately.

(There are no "backup" Coda servers, all are equal and participating.)

> node will perform the roles of all three tiers.  Each node will have (a)
> strict firewall rules, (b) LVS director load balancer software (ready to
> act as a backup if the primary director fails), (c) application server
> software (Apache et. al.), and (d) distributed filesystem (using CODA, I

It's ok. But Coda (and AFS and DFS) is different from NFS, CIFS and
friends in that you do not want your clients to be servers too.
It *is* possible but it is not what I would do.

> hope).  Each node will be homogenous, in that, when one fails, any other
> node can fulfil its duties without interruption to the client.

You essentially need a farm of Apache servers and a farm of Coda servers
(with possibly different hardware specifications and probably different
number of members in each farm).
You are insisting on using each computer as a member of both farms
- it is not going to be optimal, for many reasons (sorry can not go into
more detail, it is very late here).

Regards and good luck,
Received on 2002-09-24 17:56:07