dovecot proxy/director and high availability design

Laz C. Peterson laz at paravis.net
Mon Jul 20 18:04:47 UTC 2015


I’m trying to do this too.  But the goal would be simply for automatic failover to the other datacenter.  Everything is working if the server’s unique hostname is entered, but I want to do something like round robin DNS that mail clients will automatically attempt to connect to the other IP if they cannot get to the first address.  Unfortunately mail applications don’t really do this like web browsers do …

~ Laz Peterson
Paravis, LLC

> On Jul 20, 2015, at 10:29 AM, Chad M Stewart <cms at balius.com> wrote:
> 
> 
> I'm trying to determine which dovecot components to use and how to order them in the network path from client to mail store.
> 
> 
> If I have say 1,000 users, all stored in MySQL (or LDAP) and have 4 mail stores, configured into 2, 2 node pods.
> 
> 
> MS1 and MS2 are pod1 and are configured with replication (dsync) and host users 0-500.  MS3 and MS4 are pod2 and are configured with replication between them and host users 501-1000.   Ideally the active connections in pod1 would be split 50/50 between MS1 and MS2.  When maintenance is performed obviously all active connections/users would be moved to the other node in the pod and then rebalanced once maintenance is completed.  
> 
> I'm not sure if I need to use both the proxy and director, or just one or the other? If both then what is the proper path, from a network perspective?  I like the functionality director provides, being able to add/remove servers on the fly and adjust connections, etc.. But from what I've read director needs to know about all mail servers.  The problem is that not all servers host all users.  User100 could be serviced by ms1 or ms2, but not by ms3 or ms4.  
> 
> I'm trying to design a system that should provide as close to 99.999% service availability as possible.
> 
> 
> 
> Thank you,
> Chad



More information about the dovecot mailing list