Failover do Servidor de Correio Completo

1

Estou tentando encontrar a melhor solução para permitir que um servidor de e-mail ainda esteja totalmente operacional, mesmo se ele travasse alternando para um servidor de fallback.

Nós rodamos nosso servidor de e-mail no Debian usando Postfix e Courier-IMAP.

Eu conheço os registros MX e ative os relés para não perder nenhum novo e-mail recebido. No entanto, preciso continuar acessando os e-mails antigos.

Colocar um balanceador de carga na frente de dois servidores e configurar o fallback automático é uma consideração, mas não tenho certeza de como essa solução funcionará para um servidor de e-mail, já que tenho pouca experiência com LBs.

Não me oponho a usar o GlusterFS ou algo parecido para o maildir, desde que o impacto no desempenho seja insignificante. No entanto, ouvi / pesquisei que tal solução vem com alto custo de desempenho.

O último requisito é que os detalhes da conexão durante o uso de um cliente de e-mail não precisem ser alterados quando ocorrer o fallback. Este requisito, no entanto, é o menos importante para todos os outros fatores.

Essencialmente, estou procurando uma solução padrão do setor. Se a indústria decidir que tal solução não precisa existir, quaisquer possíveis soluções alternativas serão apreciadas.

    
por Christian 27.03.2018 / 00:58

1 resposta

2

Existem duas soluções possíveis:

  1. 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.

  2. 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.

    
por 27.03.2018 / 03:16