Mail Server recommendations

Chuck Swiger cswiger at mac.com
Thu Apr 28 15:33:07 PDT 2005


Jim Durham wrote:
> On Thursday 28 April 2005 10:46 am, Steve Ames wrote:
>>Which version of FreeBSD are you running?
> 
> Sorry...that's what happens when you get interrupted 4 times 
> while trying to post 8-) !   I'm running 4.10. I have a couple 
> 5.x boxes, but I haven't moved the production servers to 5.x 
> yet.

Since you've got a dual-proc box, and mail handling parallelizes well into 
seperate tasks, 5.x will probably help for your case.

[ ... ]
> Load average was as high as 125. Lots of virus scanning and spam 
> scanning processes.

Are you swapping excessively?  I bet your system is running out of memory 
trying to run so many processes, that it starts swapping and your load average 
blows up.

You ought to try using the options to amavis/spamd/whatever to limit the 
number of child subprocesses which they are allowed to fork.  Each of those 
can take up to 30-40 MB, so you can only run about forty or fifty of them on a 
machine with 2GB and still have room for the kernel, I/O buffers, and other 
processes.

If you are using sendmail, consider switching to store and forward mode 
exclusively, and use regular queue runners to help serialize the mail into a 
certain # of deliveries at any one time via:

# limit on number of concurrent queue runners
#O MaxQueueChildren

Also consider setting up queue groups, and splitting up your mail into at 
least two piles: your internal mail, and everyone else, although creating a 
few more groups for common list traffic helps.

Or consider switching to an MTA like postfix, which provides very good control 
over how many child processes can go on via master.cf...

Also, are you using this machine as a reader box as well?  If so, you really 
may want to get another box and have one serve as an MX and virus/spam 
scanner, and have the other be a reader box which exchanges SMTP only with 
your MX (use a firewall).

-- 
-Chuck



More information about the freebsd-isp mailing list