配置两台 Exchange 2010 计算机以进行故障转移

配置两台 Exchange 2010 计算机以进行故障转移

背景:我们将使用 Exchange 2010 向我们组织之外的已知用户发送时间敏感的电子邮件警报(我们将我们的组织称为“internal.loc”)。

该项目需要某种故障转移功能,但不使用 MS 集群服务。

我们有两台 Windows Server 2008 Standard 计算机。两台计算机上都安装了 Exchange,并且都配置为 Hub Tranport。我们将这两台计算机称为 EXCH-A 和 EXCH-B。

电子邮件警报将由我们自己的自定义业务应用程序生成。我们还有另一个域(我们称之为 alerts.foo),它将充当警报的发送者和返回电子邮件的接收者。

以下是邮件流的基本图表:

商务应用 > EXCH-A > SMTP-A > TO:[电子邮件保护]从:[电子邮件保护]

如果 EXCH-A 发生故障,则我们有 EXCH-B 待命。我们的业务应用程序将首先轮询 EXCH-A 以获取心跳。如果没有活动,则我们的业务应用程序将使用 EXCH-B 发送警报。

这里对邮件流程进行更具体的描述:

1)商务应用程序检查EXCH-A的健康状况。

2) 如果 EXCH-A 没问题,则继续使用 SMTP-A 发送邮件至:[电子邮件保护]从:[电子邮件保护]

3) 如果 EXCH-A 不可用,则使用 E​​XCH-B/SMPT-B 递送至[电子邮件保护]

问题:我们如何处理退回的电子邮件?特别是关于邮箱设置和 DC/AD 配置。

假设 EXCH-A 和 EXCH-B 都有邮箱,并且假设我们有一个内部用户 -[电子邮件保护]- 充当回复电子邮件的发件人和收件人。

对于一台机器,这或多或少是一个普通的设置。对于两台机器(在我们的穷人故障转移设置中),如果 EXCH-A 不可用,我们将如何路由回邮。是否可以为用户设置两个独立的邮箱[电子邮件保护],每台机器上一个?或者两个邮箱应该“同步”?

如有任何帮助我将不胜感激,当然,我很乐意根据需要详细说明。

答案1

您可以设置一个名为[电子邮件保护]并将邮件副本反弹到两个服务器。集线器传输应尝试将邮件传递到两个服务器,并将邮件保留在 EXCH-B 上的队列中,直到 EXCH-A 恢复。由于您可以使用组电子邮件地址发送,因此这可能是一种方法。也可能有其他方法。

如果您使用的是 Enterprise,Exch 将使用内置的 Exch 集群服务为您处理此问题。它们可以很好地处理这些场景。

答案2

我个人会利用 TCP 负载平衡与数据库可用性组相结合,类似于使用 HAProxy 利用 SMTP 负载平衡,这将允许您进一步优化此故障转移以满足您的需求。

这应该会给你一个你正在寻找的“穷人”故障转移解决方案。

相关内容