SMTP smarthost round-robin balanceamento

1

Nosso provedor de SMTP exige a distribuição uniforme de e-mails entre quatro hosts diferentes. Eu entendo que a maneira padrão de distribuir esse tipo de carga é utilizar o recurso round robin do DNS, mas o problema é que os servidores de email do provedor devem ser endereçados usando nomes simbólicos e não IPs. Qual a melhor forma de lidar com isto? A configuração de vários registros CNAME funcionará ou devo usar qualquer recurso interno de balanceamento Sendmail / Postfix / Exim / etc (que atualmente não conheço)?

    
por Alex 26.08.2011 / 22:51

3 respostas

6

Seu provedor é um idiota. Eles devem fornecer um nome de servidor para conectar-se ao seu MTA e fazer seu próprio balanceamento de carga. Eu estaria inclinado apenas a lançar um nome na minha diretiva relayhost e acabar com isso. Você pode definir um nome local com os registros A de todas as máquinas de seu provedor (tomadas para resolver os nomes que eles lhe deram), mas não faz sentido ter que fazê-lo, porque toda vez que seu provedor decide adicionar mais servidores seu cluster você tem que fazer uma alteração de configuração.

    
por 26.08.2011 / 23:35
2

+1 para "Seu provedor é um idiota".

No entanto, você poderia resolver seu requisito configurando algum loadbalancer (por exemplo, HAProxy) localmente, que usa os smarthosts do seu provedor como backends. Seus servidores direcionariam seus e-mails para esse balanceador de carga. Ele não será estritamente balanceado com base em e-mails, mas em conexões TCP. Mas eu acho que isso deve ser bom o suficiente, já que é muito difícil decidir quantos e-mails individuais serão gerados no final (por causa de múltiplos destinatários, listas de discussão, aliases, ...)

Além disso, quando os servidores do seu provedor mudam, você só precisa adaptar a configuração do loadbalancer e não precisa tocar em nenhum outro servidor.

Pode ser necessário considerar a alta disponibilidade do balanceador de carga, já que seria um ponto único de falha.

    
por 27.08.2011 / 01:01
0

Bem, o BIND 9.x não suporta várias entradas CNAME, já que isso quebra os RFCs, que surpresa! Mas encontrei uma solução possível aqui: link Vou implementar isso, vou fornecer um relatório aqui apenas para o registro.

    
por 27.08.2011 / 00:48