当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 恢复 Exchange DAG 成员服务器

作者:精品下载站 日期:2024-12-14 18:32:27 浏览:14 分类:玩电脑

恢复 Exchange DAG 成员服务器


时间到了,Exchange Server DAG(数据库可用性组)成员发生故障,并且不再启动。当然,这不是什么好消息,因为一台 Exchange 服务器出现故障。但是,只要配置了 DAG,邮箱数据库就会切换,用户不会注意到任何事情。在本文中,您将了解如何恢复发生故障的 Exchange DAG 成员。

介绍

值得高兴的是,我们的 DAG 配置在组织中有两台 Exchange 服务器。

  • 1x DAG (DAG01-2016)

  • 2x Exchange 服务器(EX01-2016、EX02-2016)

您想要配置 DAG,还是想了解有关设置的更多信息?请遵循以下文章:

  1. 创建交换DAG

  2. 添加邮箱数据库副本

在我们的示例中,Exchange Server DAG 成员之一发生故障,并且无法启动。这是 EX01-2016 邮箱服务器。发生故障的 Exchange DAG 成员上托管的邮箱数据库会自动在其他 Exchange Server 上变为活动状态。这是 EX02-2016 邮箱服务器。

注意:您想要配置 Exchange DAG 的重要原因之一是为了实现高可用性。如果一台 Exchange Server 发生故障,环境中的邮件流将继续运行,直到您修复或重建损坏的 Exchange Server。

如果您有一个独立的 Exchange Server 并且出现故障怎么办?方法不同,您可以按照恢复 Exchange Server 进行操作。

我们来看看如何重建Exchange DAG成员EX01-2016

步骤1.检查当前情况

在开始之前,有必要检查环境的当前情况。登录 Exchange 管理中心并导航到服务器 > 数据库

我们可以看到副本计数错误,并且 Exchange Server EX01-2016 上的数据库副本已关闭。

[玩转系统] 恢复 Exchange DAG 成员服务器

单击服务器 > 数据库可用性组。接下来,单击 DAG 上的列表,然后单击工具栏中的编辑图标。

在我们的示例中,我们有以下 DAG 配置:

  • 名称:DAG01-2016

  • 见证服务器:FS01-2016

  • 会员服务器:EX01-2016、EX02-2016

[玩转系统] 恢复 Exchange DAG 成员服务器

数据库可用性组成员 EX01-2016 显示无法运行

[玩转系统] 恢复 Exchange DAG 成员服务器

现在我们确定了发生了什么,我们可以进一步进行。

步骤 2. 从失败的 DAG 成员中删除数据库副本

登录到活动的 Exchange Server 或管理服务器并启动 Exchange Management Shell。运行 Get-MailboxDatabaseCopyStatus cmdlet 以列出数据库副本。

我们可以看到 Exchange Server EX01-2016 上托管的邮箱数据库副本的状态显示为ServiceDown

[PS] C:\>Get-MailboxDatabaseCopyStatus * | ft -AutoSize

Name           Status      CopyQueueLength ReplayQueueLength LastInspectedLogTime ContentIndexState
----           ------      --------------- ----------------- -------------------- -----------------
DB01\EX01-2016 ServiceDown 0               0                                      Unknown
DB02\EX01-2016 ServiceDown 0               0                                      Unknown
DB03\EX01-2016 ServiceDown 0               0                                      Unknown
DB04\EX01-2016 ServiceDown 0               0                                      Unknown
DB01\EX02-2016 Mounted     0               0                                      Healthy
DB02\EX02-2016 Mounted     0               0                                      Healthy
DB04\EX02-2016 Mounted     0               0                                      Healthy
DB03\EX02-2016 Mounted     0               0                                      Healthy

运行Remove-MailboxDatabaseCopy cmdlet 并插入数据库,包括发生故障的Exchange Server。您将收到一条确认消息。单击Y,然后按Enter

[PS] C:\>Remove-MailboxDatabaseCopy -Identity "DB01\EX01-2016"

Confirm
Are you sure you want to perform this action?
Removing database copy for database "DB01" on server "EX01-2016".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [?] Help (default is "Y"): Y

WARNING: Couldn't communicate with the Microsoft Exchange Replication service on server "EX01-2016.exoip.local" to pick
up new configuration changes for database "DB01". Make sure that the service is running and that the server has
network connectivity. Error: A server-side administrative operation has failed. The Microsoft Exchange Replication
service may not be running on server EX01-2016.exoip.local. Specific RPC error message: Error 0x6ba (The RPC server is
unavailable) from cli_RpcsNotifyChangedReplayConfiguration [Server: EX01-2016.exoip.local]
WARNING: Couldn't delete the replication state for database 'DB01' on server EX01-2016. Error: The attempt to access
the registry on machine 'EX01-2016.exoip.local' did not succeed after 10 seconds.
WARNING: The copy of mailbox database "DB01" on server "EX01-2016" has been removed. If necessary, manually delete the
database copy's files located at "F:\DB01" and "E:\DB01\DB01.edb" on that server.

运行该命令后您可能会收到警告消息。忽略该警告,因为它无法到达发生故障的 Exchange 服务器。这是正确的,因为它处于离线状态。

警告:无法与服务器“EX01-2016.exoip.local”上的 Microsoft Exchange 复制服务通信以获取数据库“DB01”的新配置更改。确保服务正在运行并且服务器具有网络连接。错误:服务器端管理操作失败。 Microsoft Exchange 复制服务可能未在服务器 EX01-2016.exoip.local 上运行。特定 RPC 错误消息:来自 cli_RpcsNotifyChangedReplayConfiguration [服务器:EX01-2016.exoip.local] 的错误 0x6ba(RPC 服务器不可用)
警告:无法删除服务器 EX01-2016 上数据库“DB01”的复制状态。错误:尝试访问计算机“EX01-2016.exoip.local”上的注册表在 10 秒后未成功。
警告:服务器“EX01-2016”上邮箱数据库“DB01”的副本已被删除。如有必要,手动删除位于该服务器上“F:\DB01”和“E:\DB01\DB01.edb”的数据库副本文件。

验证该命令是否已成功删除邮箱数据库副本。

单击数据库。错误副本计数显示0,并且有副本的服务器仅显示 Exchange Server EX02-2016。

[玩转系统] 恢复 Exchange DAG 成员服务器

检查邮箱数据库副本是否已删除的另一种方法是运行 Get-MailboxDatabaseCopyStatus。

[PS] C:\>Get-MailboxDatabaseCopyStatus * | ft -AutoSize

Name           Status      CopyQueueLength ReplayQueueLength LastInspectedLogTime ContentIndexState
----           ------      --------------- ----------------- -------------------- -----------------
DB02\EX01-2016 ServiceDown 0               0                                      Unknown
DB03\EX01-2016 ServiceDown 0               0                                      Unknown
DB04\EX01-2016 ServiceDown 0               0                                      Unknown
DB01\EX02-2016 Mounted     0               0                                      Healthy
DB02\EX02-2016 Mounted     0               0                                      Healthy
DB04\EX02-2016 Mounted     0               0                                      Healthy
DB03\EX02-2016 Mounted     0               0                                      Healthy

对其他数据库副本执行相同的步骤。运行 Remove-MailboxDatabaseCopy cmdlet 并一一指定其他邮箱数据库副本,将其挂载到 EX01-2016。

如果要加快数据库副本删除速度,请选择 DAG 成员服务器并删除所有邮箱数据库副本。首先,列出发生故障的 Exchange Server EX01-2016 上的数据库副本。

[PS] C:\>Get-MailboxDatabaseCopyStatus -Server "EX01-2016" | ft -AutoSize

Name           Status      CopyQueueLength ReplayQueueLength LastInspectedLogTime   ContentIndex
----           ------      --------------- ----------------- --------------------   ------------
DB02\EX01-2016 ServiceDown 0               0                                        Unknown
DB03\EX01-2016 ServiceDown 0               0                                        Unknown
DB04\EX01-2016 ServiceDown 0               0                                        Unknown

将Remove-MailboxDatabaseCopy cmdlet 添加到命令中。另外,使用精确语法 -Confirm:$false 添加跳过确认提示。

[PS] C:\>Get-MailboxDatabaseCopyStatus -Server "EX01-2016" | Remove-MailboxDatabaseCopy -Confirm:$false

您将收到与第一个邮箱数据库副本删除相同的警告消息。同样,这是因为 Exchange Server DAG 成员不可用,并且无法访问。

检查具有副本的服务器列不显示失败的 Exchange Server EX01-2016。此外,错误副本计数列将显示 0

[玩转系统] 恢复 Exchange DAG 成员服务器

您可以通过运行 Get-MailboxDatabaseCopyStatus cmdlet 获得相同的结果。

[PS] C:\>Get-MailboxDatabaseCopyStatus * | ft -AutoSize

Name           Status  CopyQueueLength ReplayQueueLength LastInspectedLogTime ContentIndexState
----           ------  --------------- ----------------- -------------------- -----------------
DB01\EX02-2016 Mounted 0               0                                      Healthy
DB02\EX02-2016 Mounted 0               0                                      Healthy
DB04\EX02-2016 Mounted 0               0                                      Healthy
DB03\EX02-2016 Mounted 0               0                                      Healthy

现在邮箱数据库副本已成功从发生故障的 Exchange Server 中删除,我们可以继续下一步。

步骤 3. 从 DAG 中删除失败的 DAG 成员

导航到服务器 > 数据库可用性组。单击列表中的 DAG,然后使用工具栏中的管理 DAG 成员身份图标。

[玩转系统] 恢复 Exchange DAG 成员服务器

选择邮箱服务器并单击删除图标。单击保存

[玩转系统] 恢复 Exchange DAG 成员服务器

给它一些时间来处理删除。之后,您将看到已成功完成的消息。

[玩转系统] 恢复 Exchange DAG 成员服务器

验证成员服务器列未显示出现故障的 Exchange Server。

[玩转系统] 恢复 Exchange DAG 成员服务器

我们确实成功删除了 DAG 成员服务器。让我们进一步进行。

步骤 4. 删除出现故障的 Exchange DAG 成员服务器

删除失败的 Exchange Server DAG 成员。在我们的示例中,Exchange Server EX01-2016 是托管在 VMware ESXi 中的虚拟机。此操作还将删除 VMware 数据存储中的文件。

[玩转系统] 恢复 Exchange DAG 成员服务器

现在我们已经删除了 Exchange Server 及其文件,我们可以继续下一步。

步骤 5. 重置 Exchange Server 计算机帐户

重置发生故障的 Exchange Server 的 Active Directory 计算机帐户。我们会这样做,因为:

  • 我们将能够以旧计算机名称将新服务器重新加入 Active Directory

  • 它允许恢复过程从 Active Directory 检索发生故障的 Exchange Server 的所有配置数据

重要提示不要删除计算机帐户,而是重置计算机帐户。

启动Active Directory 用户和计算机 (ADUC)。找到 Exchange Server 计算机帐户。右键单击计算机帐户,然后单击重置帐户

[玩转系统] 恢复 Exchange DAG 成员服务器

步骤 6. 安装 Windows Server

安装新的 Windows Server 或启动模板(如果有)。在那之后:

  1. 活动 Windows 服务器

  2. 下载并安装最新的 Windows 更新

  3. 配置计算机名称与旧计算机名称相同

  4. 配置静态IP地址,与旧IP地址相同

  5. 将计算机加入域

注意: 目标服务器必须使用与丢失服务器相同的 Windows Server 版本。例如,您无法在运行 Windows 2016 的新服务器上恢复运行 Windows 2012 R2 的丢失的 Exchange 2016 服务器,反之亦然。

在我们的示例中,我们设置计算机名称 EX01-2016,内部 IP 地址为 192.168.1.52,并加入域 exoip.local。

步骤 7. 查找 Exchange Server 版本

请阅读文章使用 PowerShell 查找 Exchange 版本来了解更多信息。

运行 Get-ExchangeServer cmdlet 并检查发生故障的 Exchange Server 上正在运行的 Exchange Server 版本。

注意:失败的 Exchange Server 将显示在列表中,这是正确的。因为它没有已删除,并且仍然存在于组织中。这就是恢复 Exchange Server 的全部意义。

[PS] C:\>Get-ExchangeServer | Format-Table Name, Edition, AdminDisplayVersion

Name         Edition AdminDisplayVersion
----         ------- -------------------
EX01-2016 Enterprise Version 15.1 (Build 2242.4)
EX02-2016 Enterprise Version 15.1 (Build 2242.4)

步骤 8. 下载 Exchange Server ISO

请转至以下页面以获取 Exchange Server 版本的列表。该页面将显示 Exchange Server 内部版本号和发布日期。向下滚动到您需要的 Exchange Server。下载并保存 ISO 映像。当发布新版本时,Microsoft 确实会删除旧版 Exchange CU。您可以使用非官方网站下载较旧的 Exchange Server ISO 文件。

假设您没有要恢复的服务器上安装的累积更新 (CU) 版本的安装介质,则可以使用最新的可用累积更新来恢复服务器。升级成功后,Exchange 命令行管理程序中的 AdminDisplayVersion 或恢复的服务器上的 msExchVersion 属性将显示旧的内部版本号,这本质上是装饰性的。我们可以运行 setup /m:upgrade /IAcceptEchangeServerLicenseTerms 或等待下一个累积更新版本并执行升级以纠正此问题。

在我们的示例中,我们没有运行最新的 Exchange Server 版本。因此,我们将下载并恢复具有最新可用累积更新的 Exchange Server EX01-2016。一旦我们恢复并且一切正常,我们将升级可运行的 Exchange Server (EX02-2016)。

步骤 9. 安装 Exchange Server 必备组件

请阅读安装 Exchange Server 先决条件一文中的更多信息。

注意:目标服务器应具有与丢失服务器相同的总体性能特征和硬件配置。

  1. 安装所需的 Windows 组件

  2. 安装.NET框架

  3. 安装适用于 Visual Studio 2012 的 Visual C++ Redistributable

  4. 安装 Visual Studio 2013 的 Visual C++ 可再发行组件包

  5. 安装 IIS URL 重写模块

  6. 安装统一通信托管 API 4.0 运行时

完成上述所有任务后,重新启动服务器。

步骤 10. 创建磁盘驱动器或安装点

请阅读配置 ReFS 卷 Exchange 2013/2016/2019 一文了解更多信息。

注意: 创建与 DAG 中其他 Exchange Server 相同的磁盘卷。目标服务器上也必须存在用于丢失服务器上安装的数据库的相同磁盘驱动器号。

在我们的示例中,运行的 Exchange 服务器是 EX02-2016。这就是驱动器的样子。

[玩转系统] 恢复 Exchange DAG 成员服务器

这就是我们在服务器 EX01-2016 上配置驱动器的方法。数据库数据和日志是分开的。此外,磁盘卷是空的,因为其中还没有数据。

[玩转系统] 恢复 Exchange DAG 成员服务器

现在我们已经为数据库副本配置了磁盘,下一步是恢复发生故障的 Exchange Server。

步骤11.设置账户权限

您将用于进行服务器恢复的帐户需要以下权限:

  • 域管理员安全组成员身份

  • Exchange 组织管理角色组成员身份

步骤 12. 获取 Exchange 位置路径

如果 Exchange 安装在默认位置 %ProgramFiles%\Microsoft\Exchange Server\V15 之外的位置,则必须在其中包含 /TargetDir: 开关Setup.exe /Mode:RecoverServer 命令指定 Exchange 程序(二进制)文件的位置。如果您不使用/TargetDir开关,则当您恢复 Exchange 服务器时,Exchange 文件将安装在默认位置。

注意:检查失败的 Exchange Server 位置。如果它不在默认位置,则必须在命令中包含目标目录。

要在丢失的 Exchange 服务器上查找 Exchange 的安装位置,请执行以下步骤:

打开管理工具并启动ADSI编辑。另一种方法是在 Windows 搜索中输入 adsiedit.msc。打开后,右键单击左侧窗格中的ADSI Edit,然后选择连接到。在众所周知的命名上下文中选择配置。单击确定

[玩转系统] 恢复 Exchange DAG 成员服务器

在 ADSI 编辑中导航:

配置 > CN=配置、DC=exoip、DC=本地 > CN=服务 > CN=Microsoft Exchange > > CN=EXOIP > CN=管理组 > CN=Exchange 管理组 (FYDIBOHF23SPDLT) > CN=服务器。

右键单击失败的 Exchange Server 对象。选择属性

[玩转系统] 恢复 Exchange DAG 成员服务器

找到 msExchInstallPath 属性。该属性存储当前的安装路径。在我们的示例中,使用了默认的 Exchange 安装位置。因此,我们不会使用 /TargetDir: 开关。

[玩转系统] 恢复 Exchange DAG 成员服务器

步骤 13. 恢复 Exchange 服务器

挂载 Exchange Server ISO。

[玩转系统] 恢复 Exchange DAG 成员服务器

以管理员身份启动命令提示符。运行Setup.exe /Mode:RecoverServer 命令恢复 Exchange Server。在我们的示例中,ISO 安装到(M:) 驱动器。

C:\>M:\Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF /Mode:RecoverServer

Microsoft Exchange Server 2016 Cumulative Update 21 Unattended Setup

Copying Files...
File copy complete. Setup will now collect additional information needed for installation.

Languages
Mailbox role: Transport service
Mailbox role: Client Access service
Mailbox role: Unified Messaging service
Mailbox role: Mailbox service
Management tools
Mailbox role: Client Access Front End service
Mailbox role: Front End Transport service

Performing Microsoft Exchange Server Prerequisite Check

    Configuring Prerequisites                                                                         COMPLETED
    Prerequisite Analysis                                                                             COMPLETED

Configuring Microsoft Exchange Server

    Preparing Setup                                                                                   COMPLETED
    Stopping Services                                                                                 COMPLETED
    Copying Exchange Files                                                                            COMPLETED
    Language Files                                                                                    COMPLETED
    Restoring Services                                                                                COMPLETED
    Language Configuration                                                                            COMPLETED
    Mailbox role: Transport service                                                                   COMPLETED
    Mailbox role: Client Access service                                                               COMPLETED
    Mailbox role: Unified Messaging service                                                           COMPLETED
    Mailbox role: Mailbox service                                                                     COMPLETED
    Exchange Management Tools                                                                         COMPLETED
    Mailbox role: Client Access Front End service                                                     COMPLETED
    Mailbox role: Front End Transport service                                                         COMPLETED
    Finalizing Setup                                                                                  COMPLETED

The Exchange Server setup operation completed successfully.
Setup has made changes to operating system settings that require a reboot to take effect. Please reboot this server
prior to placing it into production.

Exchange Server 恢复完成。重新启动服务器。

步骤 14.导入并分配 SSL 证书

请阅读文章如何在 Exchange Server 中导出证书如何在 Exchange Server 中导入证书来了解更多信息。

/Mode:RecoverServer 开关将自签名证书分配给所有需要 SSL/TLS 的 Exchange 服务。如果服务器之前使用由不同证书颁发机构颁发的 SSL/TLS 证书,您需要重新导入该证书并将服务配置为使用该证书。否则,用户在尝试连接时(例如,在 Outlook 中)将收到证书提示。

步骤 15. 额外检查

恢复后,检查以下配置,如果没有设置,请进行配置:

  • Exchange 服务器许可证

  • 虚拟目录 URL

  • 发送连接器

  • 接收连接器

  • DAG成员服务器

  • 邮箱数据库副本

  • 自定义 IIS 设置

注意:存储在 Exchange Server 上的所有内容都将无法恢复。仅存储在 Active Directory 中的内容。

结论

我们展示了如何重建 Exchange Server DAG 成员的步骤。当 DAG 成员服务器无法启动时,这可能是一个恐慌时刻。但是,只要用户不受影响并且可以继续工作,一切都很好。在后台,您已经通过执行这些步骤恢复了 Exchange DAG 成员服务器。

您喜欢这篇文章吗?您可能还喜欢逐步安装 Exchange 安全更新。不要忘记关注我们并分享这篇文章。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯