[exim] Mail Implementation Design

Top Page
Delete this message
Reply to this message
Author: GamCo - Gawie Marais
Date:  
To: exim-users
New-Topics: Re: [exim] Mail Implementation Design (Update)
Subject: [exim] Mail Implementation Design
Hi Guys



We are tied into knots at the moment with regards to a mail system
implementation and have been running into several problems over the past
couple of weeks and we have decided to re-look and investigate a proper
solution.



What we currently have :-



We have around 7500 mailboxes currently. We handle around 80 000 mails daily
to those mailboxes. We have a greylist solution in Exim that works with a
MySQL database backend and we make use of DNSBL lists. All our servers are
running FreeBSD 5.x and 6.x





This is the flow of mail traffic



Mail comes into the exim server, we check for greylisting and DNSBL lists.
If mail is accepted, we pass it to the virus scanners via Amavis, it gets
scanned and if clean, we send it back to the Exim server for local delivery.
The problem currently is that once mail comes in to Exim, a database lookup
is done to make sure that we can accept mail as per domain and user lookups
and once it gets passed back from Amavis, another lookup is done to the
database again to make sure that the user exists via domain and user lookup.
Hence, we have two of the exact same queries done to accept a single mail.



Problems :-



We are currently using TCP connections to the MySQL database from Exim. We
have been using MySQL 4.x which is giving us a lot of problems with
connections and threads used by Exim, due to the multiple lookups per any
one mail that comes into our mail system. Up to a stage where the MySQL
database falls over with memory problems. Once restarted the MySQL database
works perfectly for a couple of days again.



For growth purposes, we would like to keep the Amavis solutions as we can
just add multiple scanning servers to load-balance the scanning services.
The amavis servers only do virus scanning with ClamAV and no spam-related
scanning is done via Spamassassin.



We have been thinking of having the Database server and the Exim server
running on the same hardware in stead of having one server for Exim and one
for MySQL.





Exim Mail Server

Intel P4 2.8GHz

2GB Ram

2 x 120GB Hard Drives







MySQL Server



Dell 2850

2GB Ram

6 x 70GB SCSI hard drives - RAID 5 Configuration



Amavis Scanners



Multiple P4 2.8 Ghz, 1GB RAM Servers





Are there any suggestions to configure the use of Exim, MySQL and Amavis to
work better together? I hope I have included enough information fro you to
judge the problem and make some suggestions.





Regards



Gawie Marais