多站点、高可用性 (HA) 配置中的某个 vRealize Automation 设备失败时,可能需要替换故障节点。

小心: 继续操作之前, VMware 建议联系技术支持人员以对 HA 问题进行故障排除,并确认问题已隔离到一个节点上。

如果技术支持人员确定需要替换节点,请执行以下步骤。

  1. vCenter 中,为 HA 配置中的每个设备生成备份快照。

    在备份快照中,不包括虚拟机内存。

  2. 关闭出现故障的节点。
  3. 记下故障节点的 vRealize Automation 软件内部版本号和网络设置。

    记下 FQDN、IP 地址、网关、DNS 服务器,尤其是 MAC 地址。稍后,您需要将相同的值分配给替换节点。

  4. 主数据库节点必须为正常节点之一。按照以下步骤操作:
    1. 以 root 用户用户登录正常节点的命令行。
    2. 通过运行以下命令查找主数据库节点的名称。

      vracli status | grep primary -B 1

      结果应类似于以下示例,其中 postgres-1 是主数据库节点。

      "Conninfo":
      "host=postgres-1.postgres.prelude.svc.cluster.local
      dbname=repmgr-db user=repmgr-db passfile=/scratch/repmgr-db.cred
      connect_timeout=10",
      "Role": "primary",
    3. 运行以下命令,验证主数据库节点是否正常。

      kubectl -n prelude get pods -o wide | grep postgres

      结果应类似于以下示例,其中 postgres-1 包含在列表中,并显示为正在运行且正常。

      postgres-1 1/1 Running 0 39h 12.123.2.14 vc-vm-224-84.company.com <none> <none>
      postgres-2 1/1 Running 0 39h 12.123.1.14 vc-vm-224-85.company.com <none> <none>
      重要说明: 如果主数据库节点出现故障,请与技术支持人员联系,而不是继续操作。
  5. 从正常节点的根命令行中,移除故障节点。

    vracli cluster remove faulty-node-FQDN

  6. 使用 vCenter 部署新的替换 vRealize Automation 节点。

    部署相同的 vRealize Automation 内部版本号,并应用故障节点的网络设置。包括 FQDN、IP 地址、网关、DNS 服务器,尤其是前面记录的 MAC 地址。

  7. 打开替换节点的电源。
  8. 以 root 用户用户登录替代节点的命令行。
  9. 运行以下命令,验证初始引导顺序是否已完成。

    vracli status first-boot

    查找 First boot complete 消息。

  10. 从替换节点中,加入 vRealize Automation 集群。

    vracli cluster join primary-DB-node-FQDN

  11. 以 root 用户用户登录主数据库节点的命令行。
  12. 通过运行以下脚本部署已修复的群集。

    /opt/scripts/deploy.sh