[CentOS-es] Varias instancias de Postfix.
Carlos Sura
carlos.sura1 en googlemail.com
Mar Jun 5 03:34:45 EDT 2012
Buen día,
Estoy interesado en usar o más instancias de Postfix en CentOS. De hecho,
he logrado configurarlo y hacer correr una segunda instancia sin ningún
problema *-hasta ahorita- *.
Lo que sucede es, que yo quisiera saber si hay alguna manera de que las dos
instancias puedan compartir el puerto 25 (asumí que no por defecto)
entonces a la segunda instancia le asigne el puerto 2525. Se suponía o
supone que esto debe funcionar; de hecho lo hace, si uso el servidor SMTP
en el puerto 2525, pero si lo uso en puerto 25, solamente me usa la primera
instancia de Postfix, más no la segunda que corre en el puerto 2525, por lo
cual recurro a alguna recomendación para esto; según yo al tener las dos
instancias (cada una con una IP diferente) se iban a alternar... O es lo
que tenia planeado; pero aún si trato de enviar correos con la función MAIL
de PHP, me utiliza la primera instancia de Postfix *-la que instale por
defecto-.*
*
*
En realidad, el puerto es secundario, yo hice esto con la intención de
aumentar el volumen de correos a enviar al mismo tiempo, ya que Postfix es
muy limitado en eso al respecto; mi servidor es capable así que no hay
problema. Lo que quiero es: Si envío por ejemplo, 1000 correos por minuto
con una sola instancia, entonces teniendo dos instancias, debería enviar
2000 correos por minuto como mínimo (según mi lógica, corregirme si estoy
equivocado).
¿Por qué? tengo una infraestructura escalable a la que muchos, pero muchos
usuarios envían correos, ahora para garantizar que estos lleguen a la
bandeja de entrada, estoy usando Amazon SES (lo cual es independiente, pero
vale mencionar). Entonces, mis soluciones:
a. Instalar varias instancias de Postfix (lo que hice actualmente, pero
dado que corren en diferentes puertos o no sé si hice algo mal, no funciona
duplicando la cantidad de correos que puedo enviar por minuto, además si
utilizo la función MAIL de PHP y desactivo la primera instancia de Postfix,
este no envía correos. Pero si utilizo SMTP, entonces si funciona con la
segunda instancia y la otra IP).
b. Usar un MTA multi-threading como PowerMTA, pero es demasiado caro, de
momento antes de llegar a esta quiero ver soluciones sin costos elevados.
c. Amazon SES tiene un script en perl, lo probé pero la velocidad sigue
siendo igual, no cambio en nada; lo intenté modificar pero no vario mucho,
sigue lento.
d. Use un SMTP de Amazon SES pero llegan mucho más lentos.
Por lo cual amigos, la única solución viable que veo es
las múltiples instancias de Postfix, si alguien me puede indicar respecto a
los puertos o que sea independiente de ello y que se alternen se
lo agradeceré mucho, claro está que no necesito una gran explicación, solo
la base yo me las ingenio luego.
La idea es que teniendo dos instancias de Postfix se dupliquen, teniendo
tres instancias, obviamente se tripliquen la cantidad de correos a enviar
por minuto.
NOTA:
- Uso un solo dominio para salida de correos.
- Tengo 2 IPs no creo que requiera más, pero de ser necesario dispongo de
muchas más.
- CentOS 6.
- Postfix + Dovecot + MySQL + PostfixAdmin (Cuentas de correo virtuales).
- Si tengo SPF y DKIM funcionando muy bien, incluso DMARC como Gmail
sugiere.
- No hacemos SPAM.
- Si soporta el ancho de banda.
¿Tendrá algo que ver con Dovecot?
En master.cf tengo:
# Dovecot LDA
dovecot unix - n n - - pipe flags=DRhu user=usuario:usuario
argv=/usr/libexec/dovecot/deliver -f ${sender} -d
${recipien$................
y Amazon SES me obliga a usar el mismo, solo que no usando dovecot, sino
apuntando la ruta a su script.
éxitos,
--
Carlos Sura.-
www.carlossura.com
Más información sobre la lista de distribución CentOS-es