Hello all,
This email is by no means an "Educate me step by step" query, But more of an inquiry about which direction to go based on your experience. I've been working with Dovecot for some years now, so the configuration of that piece is no stranger. However, Choosing the right style of shared storage has proven to be somewhat of a challenge.
A bit of background of what I need to provide service for:
~80,000 users, that will potentially grow throughout the future
~100 unique domains
Ability to scale horizontally. As resources grow, adding a node (or group of nodes) with the exact configuration as the other nodes. Director should be able to send the connection to a node that has the same data as it's neighbors, Allowing high availability.
What I've experimented with so far:
_Server pairs, using dsync to replicate data between the nodes - Director to send users to a specific pair (director_tag returned from passdb) _
Pros:
- Easy way to replicate data, without the need for external tools
Cons:
- Limited to one pair of nodes
- dsync doesn't replicate all sieve files, for example, one file that tracks out of office replies has not been replicated in my experience
_NFS storage managed by corosync and pacemaker - Director to send users to any backend _
Pros:
- One location for all data. New nodes that get stood up will be easy to configure
Cons:
- Complex to set up
In your experience, what did you choose for mail storage?
Thanks.