在此场景中,主站点 1 由于计划的维护作业或未计划的电源故障而关闭。所有工作负载在辅助站点 2(升级的主站点)上运行,并且流量通过站点 2 上的 UDLR 和 NSX Edge 进行路由。现在,原来的主站点 1 已重新启动,NSX 管理员希望在原来的主站点 1 中恢复 NSX 组件并还原所有工作负载。

NSX 管理员希望实现以下主要目标:
  • 以最短的停机时间完成所有工作负载从站点 2 到原始主站点 1 的整个故障恢复。
  • 通过故障恢复到站点 1 后,保留应用程序 IP 地址。
  • 在站点 1 上自动恢复所有 Edge 接口设置和 BGP 协议配置设置。
注:
  • 管理员可以通过使用 vSphere Web Client 或运行 NSX REST API 来手动执行故障恢复任务。此外,管理员也可以通过在故障恢复期间运行包含所需运行的 API 的脚本文件来自动执行某些故障恢复任务。此场景介绍了使用 vSphere Web Client 的手动故障恢复步骤。但是,在执行任何步骤时,如果需要使用 CLI 或 NSX REST API,场景中也提供了充分的说明。
  • 在此场景中,灾难恢复工作流特定于前面所述的拓扑,其中具有一个主 NSX Manager 和一个辅助 NSX Manager。此场景不涉及具有多个辅助 NSX Manager 的工作流。

前提条件

  • 在站点 1 和站点 2 上安装 NSX Data Center 6.4.5 或更高版本。
  • 在站点 1 和站点 2 上使用增强型链接模式部署 vCenter Server
  • 站点 1 和站点 2 满足以下条件:
    • NSX 防火墙(如果有)上未配置任何应用程序特定的安全策略。
    • NSX 防火墙(如果有)上未配置任何应用程序特定的防火墙规则。
    • 在这两个 ESG 上禁用防火墙,因为会在 UDLR 上启用 ECMP,并且可以确保允许所有流量。
  • 在站点 2(已升级为主站点)上,启动故障恢复流程前未在通用逻辑组件中进行任何更改。

过程

  1. 当主站点 1 重新启动后,请确保 NSX Manager 和控制器群集节点已打开电源并且正在运行。
    1. 导航到网络和安全 (Networking & Security) > 仪表板 (Dashboard) > 概览 (Overview)
    2. 从下拉菜单中选择主 NSX Manager
    3. 系统概览窗格中,查看 NSX Manager 和控制器群集节点的状态。
      NSX Manager 和控制器节点旁边的绿色实心圆点表示 NSX 组件均已打开电源且正在运行。
  2. 在启动故障恢复过程之前,请确认以下项:
    1. 安装和升级页面上,导航到管理 (Management) > NSX Manager (NSX Managers),然后看到两个站点上的 NSX Manager 均具有主要角色。
    2. NSX Controller 节点页面上,确保两个站点上都存在通用控制器群集 (UCC) 节点。
  3. 关闭与站点 2(升级的主站点)关联的所有三个 UCC 节点。
  4. NSX Controller 节点页面上,删除与站点 2(升级的主站点)关联的所有三个 UCC 节点。
    提示: 您可以使用 NSX REST API 通过运行以下 API 调用一次移除一个控制器节点: https://NSX_Manager_IP/api/2.0/vdn/controller/{controllerID}。但是,需通过运行以下 API 调用强制删除最后一个控制器节点: https://NSX_Manager_IP/api/2.0/vdn/controller/{controllerID}?forceRemoval=true
  5. 确保在继续执行后续步骤之前,站点 2(升级的主站点)上的通用组件未发生任何更改。
  6. 移除站点 2(升级的主站点)上 NSX Manager 所具有的主要角色。
    1. 安装和升级页面上,导航到管理 (Management) > NSX Manager (NSX Managers)
    2. 选择站点 2 上的 NSX Manager,然后单击操作 (Actions) > 移除主要角色 (Remove Primary Role)
      此时会显示一则消息,提示您在移除主要角色之前,确保已删除站点 2 上 NSX Manager 拥有的控制器。
    3. 单击是 (Yes)
      站点 2 上的 NSX Manager 将进入“转换”角色。
  7. 在主站点 1 上的主 NSX Manager 上,移除相关联的辅助 NSX Manager
    1. NSX Manager 页面上,选择与站点 1 相关联的 NSX Manager
    2. 单击操作 (Actions) > 移除辅助管理器 (Remove Secondary Manager)
    3. 选中即使 NSX Manager 无法访问仍执行操作 (Perform Operation even if NSX Manager is inaccessible)复选框。
    4. 单击移除 (Remove)
  8. 将站点 2 上处于转换角色的 NSX Manager 注册为站点 1 上主 NSX Manager 的辅助项。
    小心: 由于在 UDLR 控制虚拟机(Edge 设备虚拟机)上禁用了本地输出,因此,将自动删除控制虚拟机。因此,在将站点 2 上的 NSX Manager(当前处于转换角色)注册为辅助角色之前,请确保已删除站点 2 上的控制器群集节点。如果未删除控制器群集节点,则可能会发生网络流量中断。
    1. 安装和升级页面上,导航到管理 (Management) > NSX Manager (NSX Managers)
    2. 选择与站点 1 相关联的 NSX Manager
    3. 单击操作 (Actions) > 添加辅助管理器 (Add Secondary Manager)
    4. 选择与站点 2 相关联的 NSX Manager
    5. 输入站点 2 上 NSX Manager 的用户名和密码,然后接受安全证书。
    6. 单击添加 (Add)
    完成所有这些分步骤后,可观察到以下结果:
    • 站点 1 上的 NSX Manager 具有主要角色,而站点 2 上的 NSX Manager 具有辅助角色。
    • 在站点 2 的 NSX Manager 上,会出现三个状态为“已断开连接”的卷影控制器节点。将显示以下消息:只能在主管理器或独立管理器上读取或更新控制器群集属性。

      此消息表示站点 2 上的辅助 NSX Manager 无法与主站点 1 的主 NSX Manager 上的通用控制器群集节点建立连接。但是,几秒钟过后,会重新建立连接,并且状态会更改为“已连接”。

  9. 打开站点 1 中的 UDLR 和 NSX Edge 上的控制虚拟机(Edge 设备虚拟机)的电源。
    1. 导航到网络 (Networking) > 虚拟机 (VMs) > 虚拟机 (Virtual Machines)
    2. 右键单击 UDLR 控制虚拟机的虚拟机名称(虚拟机 ID),然后单击打开电源 (Power on)
    3. 对于要打开电源的 Edge 虚拟机,重复步骤 (b)。
    4. 等待 UDLR 控制虚拟机和 Edge 虚拟机已启动并正在运行,然后再执行下一步。
  10. 确保已自动删除与站点 2 中的辅助 NSX Manager 关联的 UDLR 控制虚拟机(Edge 设备虚拟机)。
    1. 导航到网络和安全 (Networking & Security) > NSX Edge (NSX Edges)
    2. 选择辅助 NSX Manager,然后单击 UDLR。
    3. 状态页面上,可以看到 UDLR 上未部署任何 Edge 设备虚拟机。
  11. 更新主站点 1 上的 NSX Controller 状态,以便控制器服务与辅助站点 2 同步。
    1. 安装和升级页面上,单击 NSX Manager (NSX Managers)
    2. 选择站点 1 上的主 NSX Manager
    3. 单击操作 (Actions) > 更新控制器状态 (Update Controller State)
  12. 将工作负载虚拟机从站点 2 迁移到站点 1。
    注: 工作负载虚拟机将继续存在于站点 2 上。因此,您必须手动将工作负载虚拟机迁移到站点 1。

结果

手动将所有 NSX 组件和工作负载从辅助站点(站点 2)故障恢复到主站点(站点 1)的过程已完成。

后续步骤

通过在站点 1 上执行以下步骤,确认故障恢复到主站点 1 的过程已 100% 完成:
  1. 检查 NSX Manager 是否具有主要角色。
  2. 检查是否在 UDLR 上部署了控制虚拟机(Edge 设备虚拟机)。
  3. 检查是否所有控制器群集节点的状态均为已连接
  4. 对为 NSX 准备的每个主机群集执行通信运行状况检查。
    1. 导航到安装和升级 (Installation and Upgrade) > 主机准备 (Host Preparation)
    2. 选择站点 1 上的 NSX Manager
    3. 一次选择一个群集,并检查群集的通信通道运行状况是否为“已启动”。
    4. 对于群集中的每个主机,检查主机的通信通道运行状况是否为“已启动”。
    5. 检查主机准备状态是否为绿色
  5. 登录到 UDLR 控制虚拟机(Edge 设备虚拟机)的 CLI 控制台,然后执行以下步骤:
    1. 运行 show ip bgp neighbors 命令检查是否已建立所有 BGP 邻居,并且其状态为“已启动”。
    2. 运行 show ip route bgp 命令检查是否可从所有 BGP 邻居中发现所有 BGP 路由。

在故障恢复到站点 1 的过程完成后,所有工作负载在主站点 1 上运行,并且流量通过站点 1 中的 UDLR 和 NSX Edge 进行路由。