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

此版本的 GitHub Enterprise 将停止服务 此版本的 GitHub Enterprise 已停止服务 2019-07-12. 即使出现严重安全问题,也不会发布补丁。要获得更好的性能、更高的安全性和全新功能,请升级到 GitHub Enterprise 的最新版本。 要获取有关升级的帮助,请联系 GitHub Enterprise 支持部门

升级集群

使用管理 shell (SSH) 将 GitHub Enterprise Server 集群升级到最新版本。

本文内容

使用热补丁升级

您可以使用热补丁将 GitHub Enterprise Server 升级到最新的补丁版本,不需要维护窗口,并且一般不需要重启。使用热补丁可以升级到较新的补丁版本,但不能升级功能版本。例如,可以从 2.10.1 升级到 2.10.5,因为它们在相同的功能系列中,但不是从 2.10.9 升级到 2.11.0,因为它们在不同的功能系列中。 热补丁安装脚本可在集群中的每个节点上安装热补丁,并按正确顺序重新启动服务以避免停机。

  1. 使用 GitHub Enterprise Server 备份实用程序 备份数据。

  2. 在任何节点的管理 shell 中,使用 ghe-cluster-hotpatch 命令安装最新的热补丁。 您可以为热补丁提供 URL,也可以手动下载该热补丁并指定本地文件名。

    $ ghe-cluster-hotpatch https://HOTPATCH-URL/FILENAME.hpkg

使用升级包升级

使用升级包将 GitHub Enterprise Server 集群升级到最新功能版本。 例如,您可以从 2.11 升级到 2.13

准备升级

  1. 查看要升级到的版本的网络配置,并根据需要更新配置。

  2. 使用 GitHub Enterprise Server 备份实用程序 备份数据。

  3. 为 GitHub Enterprise Server 集群的最终用户排定维护窗口,因为它在升级期间无法正常使用。 在群集群升级过程中,维护模式会阻止用户访问并防止数据更改。

  4. GitHub Enterprise Server 下载页面上,将 .pkg 升级文件的 URL 复制到剪贴板。

  5. 在任何节点的管理 shell 中,将 ghe-cluster-each 命令与 curl 结合使用,只需一步即可将发布包下载到每个节点。 使用您在上一步中复制的 URL 作为参数。

    $ ghe-cluster-each -- "cd /home/admin && curl -L -O  https://PACKAGE-URL.pkg"
    > ghe-app-node-1:   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
    > ghe-app-node-1:                                  Dload  Upload   Total   Spent    Left  Speed
    > 100  496M  100  496M    0     0  24.2M      0  0:00:20  0:00:20 --:--:-- 27.4M
    > ghe-data-node-2:   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
    > ghe-data-node-2:                                  Dload  Upload   Total   Spent    Left  Speed
    > 100  496M  100  496M    0     0  21.3M      0  0:00:23  0:00:23 --:--:-- 25.8M
    > ghe-data-node-1:   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
    > ghe-data-node-1:                                  Dload  Upload   Total   Spent    Left  Speed
    > 100  496M  100  496M    0     0  19.7M      0  0:00:25  0:00:25 --:--:-- 25.6M
    > ghe-app-node-2:   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
    > ghe-app-node-2:                                  Dload  Upload   Total   Spent    Left  Speed
    > 100  496M  100  496M    0     0  19.8M      0  0:00:25  0:00:25 --:--:-- 17.6M
    > ghe-data-node-3:   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
    > ghe-data-node-3:                                  Dload  Upload   Total   Spent    Left  Speed
    > 100  496M  100  496M    0     0  19.7M      0  0:00:25  0:00:25 --:--:-- 25.5M
  6. 确定主 MySQL 节点,此节点在 cluster.conf 中定义为 mysql-master = <hostname>。 此节点将最后升级。

升级集群节点

  1. 通过连接到任何集群节点的管理 shell 并运行 ghe-cluster-maintenance -s,根据排定的窗口启用维护模式。

  2. With the exception of the primary MySQL node, connect to the administrative shell of each of the GitHub Enterprise Server nodes. 运行 ghe-upgrade 命令,提供在准备升级的步骤 4 中下载的包文件名:

    $ ghe-upgrade PACKAGE-FILENAME.pkg
    > *** verifying upgrade package signature...
    >  497MB 0:00:04 [ 117MB/s] [==========================================>] 100%            
    > gpg: Signature made Fri 19 Feb 2016 02:33:50 PM UTC using RSA key ID 0D65D57A
    > gpg: checking the trustdb
    > gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
    > gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
    > gpg: Good signature from "GitHub Enterprise (Upgrade Package Key) > "
  3. 升级过程将在完成后重启节点。 验证您可以在其重启后 ping 每个节点。

  4. 连接到主 MySQL 节点的管理 shell。 运行 ghe-upgrade 命令,提供在准备升级的步骤 4 中下载的包文件名:

    $ ghe-upgrade PACKAGE-FILENAME.pkg
    > *** verifying upgrade package signature...
    >  497MB 0:00:04 [ 117MB/s] [==========================================>] 100%            
    > gpg: Signature made Fri 19 Feb 2016 02:33:50 PM UTC using RSA key ID 0D65D57A
    > gpg: checking the trustdb
    > gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
    > gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
    > gpg: Good signature from "GitHub Enterprise (Upgrade Package Key) > "
  5. 升级过程将在完成后重启主 MySQL 节点。 验证您可以在其重启后 ping 每个节点。

  6. 通过运行 ghe-cluster-maintenance -u,从任何节点的管理 shell 退出维护模式。

问问别人

找不到要找的内容?

联系我们