网站运营
位置:首页>> 网站运营>> Linux上使用Sendmail群集高可用/可伸缩的Sendmail的方法(3)

Linux上使用Sendmail群集高可用/可伸缩的Sendmail的方法(3)

 来源:asp之家 发布时间:2010-03-11 19:17:00 

标签:linux,服务器,硬件,Sendmail

负载均衡器

在最近几年,越来越多地使用了外部的工作负载导向器。这些专用设备可以在几个服务器之间巧妙地分配工作负载,以及处理故障转移/故障恢复。我们对 Alteon 180 交换机进行了大量测试。它允许我们创建虚拟邮件服务器。到达此虚拟服务器的邮件被循环传送到这三个真正的服务器中的每一个。如果其中一个 Sendmail 服务器由于某种原因发生故障,Alteon 将停止发送新连接到该服务器(定期检查该服务器是否已恢复)。

这种配置的优点之一就是它不具有循环 DNS 解决方案的缺点。由于只向全球公布一个 IP 地址,因此当添加/除去群集的成员时,没有理由担心高速缓存的项。由使用诸如 Alteon 180 和 F5 Network 的 Big-IP 之类产品所知,这种做法通常是切实可行的。但是,该设备可能非常昂贵,此外当然会增加另一个维护点。要提供最大保护并且避免单点故障,应该至少安装两个这样的设备。

图 3

图 4

基于 MX 的故障转移

这是传统的 Sendmail/DNS 配置。DNS 中的主机名可以有一个或多个邮件交换(MX)记录。这些记录包括一个加权因子。当其它 SMTP 服务器试图将邮件传递到此主机时,它们首先寻找 MX 记录及其对应权重。当有多个 MX 记录时,会选择具有最低权重值的 MX 记录。邮件将被传递到第一个主机(该主机应答时,具有最低权重/数字)。

在下例中,某个域具有两个 MX 记录,一个指向芝加哥办事处,权重为 10,另一个指向纽约办事处,权重为 20。在正常情况下,所有邮件都会经过芝加哥办事处,流经公司的 WAN,进行内部传递。

如果芝加哥办事处发生故障,或者到芝加哥办事处的路由发生故障,邮件将自动经由纽约办事处传递。

如果芝加哥办事处在 SMTP 事务中发生故障,那么该事务就会失败(红线)。由于 SMTP 是一个事务,因此保证了消息完整性,发送方将超时、回退,并在以后重新发送整条消息。如果芝加哥办事处仍然停机,邮件会自动流经纽约办事处。

这种方法的主要优点是它是一种非常成熟的过程,有完善的文档,易于理解。另外,它只需要做少量的配置变动,而且不需要附加软件或硬件。遗憾的是,工作负载没有被平均分配,因此实际上在重负载情况下,服务也许会前后变化不定。MX 解决了可用性问题,但没有解决可伸缩性问题。其结果就是为了解决在高峰流量负载期间可能发生的故障,您最终要购买双份硬件。

图 5

图 6

0
投稿

猜你喜欢

手机版 网站运营 asp之家 www.aspxhome.com