Skip to main content

此版本的 GitHub Enterprise Server 将于以下日期停止服务 2026-08-25. 已停止发布的版本不受支持。 即使针对重大安全问题,也不会发布补丁。 若要获得更好的性能、改进的安全性和 GitHub Enterprise Server 中的新功能,请参阅升级过程的 Overview。 如需升级帮助,请联系 GitHub Enterprise 支持。

恢复高可用性配置

在故障转移到 GitHub Enterprise Server 设备后,您应尽快恢复冗余,而不应依赖于一台设备。

关于高可用性配置的恢复

如果故障转移是在计划内进行的,或者与设备的健康状态无关,则可以将之前的主设备用作新的副本设备。 如果故障转移与主设备的问题相关,则最好创建新的副本设备。 有关详细信息,请参阅“创建高可用性副本”。

警告

在将以前的主设备配置为新副本之前,必须启用维护模式。 如果不启用维护模式,将导致生产中断。

将原来的主设备配置为新的副本

  1. 使用 SSH 连接到之前的主设备的 IP 地址。

    ssh -p 122 admin@ FORMER_PRIMARY_IP
    
  2. 在以前的主设备上启用维护模式。 有关详细信息,请参阅“启用和排定维护模式”。

  3. 在之前的主设备上,使用之前副本的 IP 地址运行 ghe-repl-setup。 可能需要使用 --force 选项替换现有配置。

    ghe-repl-setup --force FORMER_REPLICA_IP
    
  4. 若要将公钥添加到主设备上的授权密钥列表中,请浏览到 https://PRIMARY-HOSTNAME/setup/settings 并将从副本复制的密钥添加到列表中。

  5. 要验证到新主设备的连接并为新副本启用副本模式,请再次运行 ghe-repl-setup

    ghe-repl-setup FORMER_REPLICA_IP
    
  6. 要开始复制数据存储,请使用 ghe-repl-start 命令。

    ghe-repl-start
    

    警告

              `ghe-repl-start` 会导致主服务器短暂中断,在此期间用户可能会看到内部服务器错误。 要提供更简便的消息,请先在主节点上运行 `ghe-maintenance -s`,然后再在副本节点上运行 `ghe-repl-start`,以将设备置于维护模式。 复制开始后,使用 `ghe-maintenance -u` 禁用维护模式。 当主节点处于维护模式时,Git 复制将无法进行。
    

如果运行的是版本 3.14.20、3.15.15、3.16.11、3.17.8、3.18.2 或更高版本,包括将来的版本(如 3.19),则无需在运行 ghe-repl-start之前将主数据库置于维护模式。 此命令不再预期会在主服务器上造成中断。 但是,在设置新副本时,只要在 ghe-repl-startghe-config-apply 之间运行 ghe-repl-setupghe-repl-start 就不会造成中断。 跳过ghe-config-apply并且直接从ghe-repl-setup进入ghe-repl-start仍会导致服务中断。