Existem duas soluções possíveis:
-
Armazene suas caixas de correio em um armazenamento replicado. Dependendo das suas necessidades de desempenho, você tem algumas opções: se permanecermos no domínio de código aberto / definido por software, recomendo uma exportação NFS respaldada pelo Gluster ( link ) ou um dispositivo DRBD ( link ). Dependendo do tamanho esperado das caixas de correio, o Gluster pode não ser adequado.
-
Use a replicação IMAP para que suas caixas de correio sejam replicadas e constantemente sincronizadas entre dois servidores, eu recomendo o Dovecot ( link )
A solução de armazenamento compartilhado:
Supondo que você vá com o DRBD, que tem desempenhos decentes, você precisa configurar o Linux-HA ( link ) para ter certeza que apenas um servidor está ativo por vez e apenas um servidor montou o dispositivo DRBD. O registro MX aponta para o IP flutuante gerenciado pelo Linux-HA.
Os serviços SMTP / POP / IMAP devem ler qualquer informação contábil (caixas de correio, aliases, senhas criptografadas) do mesmo serviço de pesquisa replicado, como MySQL / LDAP.
Este será um cluster ativo / passivo.
A solução de replicação IMAP:
Cada servidor de correio tem seu próprio armazenamento local independente. Configure dois servidores idênticos, certifique-se de que o Postfix e o Dovecot leiam as informações contábeis do mesmo serviço de consulta replicado (MySQL / LDAP). Configure o Dovecot para replicar as caixas de correio nos dois servidores.
Este será um cluster ativo / ativo. Nesse caso, o email de entrada vai aleatoriamente para um dos dois servidores de email e termina em seu armazenamento local. Periodicamente, o Dovecot Sync realiza uma replicação bidirecional entre as mensagens armazenadas em cada servidor e resolve automaticamente os conflitos. Há uma pequena janela de tempo (o intervalo entre duas sincronizações) durante o qual algumas mensagens podem ser perdidas. Cabe a você decidir se isso é aceitável ou não.