(Illustration by Gaich Muramatsu)
On Wed, Oct 10, 2001 at 10:02:19PM -0700, Zachary Denison wrote: > drive, where I store users mail directories. What I > would like to do is setup these three machines as CODA > servers with replication, so each one is an exact > mirror of the other 2. Is this what happens under > replication? I hope so, because this is what I want. > Anyway I want to store these in geographically > disparate locations. At each location I want to have > CODA clients, which run the mail delivery software. Won't work. Coda uses a write-all, read-one replication stragegy. So the Coda clients in each location will try to store new mail in all servers at the same time. So you could just as well have all servers in one location, in which case you probably wouldn't consider delivering email from a remote location. This just shows that Coda is not the right solution for your problem. > the administration manual, it seems to imply that the > maximum size of the RVM log partition is 130 Megs, RVM is both a log and a data partition, the log really doesn't have to be that big at all, somewhere between 2 and 8 MB is plenty. It's the data segment that is important, this is memory mapped, so the limit is pretty much defined by the operating system and is typically between 2 and 3 GB. The RVM data contains all the metadata and directory contents, which is typically around 5% of the actual size of the associated filedata. So there is a limit to how much data (actually how many files) a server process can possibly handle, which we _assume_ to be around 50GB. Ofcourse it is possible to some extent to run multiple Coda server processes on one machine, but that is administratively more difficult and you'd be living out of swap, as 10 processes would easily need about 20GB of swapspace. This kind of VM load is typically not handled very well, so you'll not only get hit by obscure Coda bugs, but also obscure Linux VM bugs ;) So why do you want replication? To ease the load of many users popping their email, or to provide failover when one of the sites disappears from the face of the earth? For the user case it should be possible to use a static load-balancing trick where each server only deals with a 1/3rd subset of all users. If the group is large enough each server should be getting a similar number of users at any given time. Each mail delivery process can accept anything, but forward specific users to the right server, f.i. depending on the md5 hash of the username % 3. For failover, it just depends how synchronized it need to be. Any good synchronization will require a lot of traffic between the 3 servers. Effectively the total user load such a setup can handle would be less than any single machine would be able to. JanReceived on 2001-10-11 11:14:51