我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

发起到副本设备的故障转移

您可以使用命令行故障转移到 GitHub Enterprise Server 副本设备以进行维护和测试,也可以在主设备发生故障时进行故障转移。

故障转移所需的时间取决于手动升级副本和重定向流量所需的时长。 平均时间范围为 2-10 分钟。

推广副本不会自动为现有设备创建副本。 在推广副本后,如有需要,可以设置从新的主设备复制到现有设备及之前的主设备。

  1. 要允许复制在切换设备之前完成,请将主设备置于维护模式:
    • 要使用 Management Console,请参阅“启用和排定维护模式”。
    • 您也可以使用 ghe-maintenance -s 命令。
      $ ghe-maintenance -s
  2. 当活动 Git 操作的数量达到零时,请等待 30 秒。
  3. 要验证所有复制通道均报告 OK,请使用 ghe-repl-status -vv 命令。
    $ ghe-repl-status -vv
  4. 要停止复制并将副本设备升级为主设备,请使用 ghe-repl-promote 命令。 此操作还会自动将主节点(若可到达)置于维护模式。
    $ ghe-repl-promote
  5. 将 DNS 记录更新为指向副本的 IP 地址。 流量会在经过 TTL 周期后定向到副本。 如果您要使用负载均衡器,请务必将其配置为向副本发送流量。
  6. 通知用户他们可以恢复正常操作。
  7. 如有需要,请设置从新的主设备复制到现有设备和之前的主设备。 更多信息请参阅“关于高可用性配置”。
  8. 您不打算在故障转移之前将复制设置为高可用性配置一部分的设备需由 UUID 从高可用性配置中删除。
    • 在以前的设备上,通过 cat /data/user/common/uuid 获取其 UUID。
      $ cat /data/user/common/uuid
    • 在新的主设备上,使用 ghe-repl-teardown 删除 UUID。 请将 UUID 替换为您在上一步中检索到的 UUID。
      $ ghe-repl-teardown -u UUNID

延伸阅读

此文档对您有帮助吗?

Privacy policy

帮助我们创建出色的文档!

所有 GitHub 文档都是开源的。看到错误或不清楚的内容了吗?提交拉取请求。

做出贡献

或, 了解如何参与。