Skip to main content
ドキュメントへの更新が頻繁に発行されており、このページの翻訳はまだ行われている場合があります。 最新の情報については、「英語のドキュメント」を参照してください。

このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2023-03-15. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの向上、新機能の向上を図るために、最新バージョンの GitHub Enterprise にアップグレードします。 アップグレードに関するヘルプについては、GitHub Enterprise サポートにお問い合わせください

クラスタのアップグレード

管理シェル (SSH) を使用して GitHub Enterprise Serverクラスタを最新のリリースにアップグレードします。

ホットパッチでのアップグレード

ホットパッチを使って GitHub Enterprise Server を最新のパッチ リリースにアップグレードできます。

ホットパッチは新しいパッチリリースへのアップグレードに利用できますが、新しいフィーチャリリースへのアップグレードには利用できません。 たとえば、2.10.1 から 2.10.5 は同じ機能シリーズに含まれているためアップグレードできますが、2.10.9 から 2.11.0 は異なる機能シリーズに含まれているためアップグレードできません。

ホットパッチでは通常、再起動は必要ありません。 ホットパッチで再起動が必要になる場合、GitHub Enterprise Server リリース ノートに要件が示されます。

ホットパッチには構成実行が必要です。構成実行すると、お使いの GitHub Enterprise Server インスタンス の一部または全部のサービスで短い時間、エラーが発生したり、応答しなかったりすることがあります。 ホットパッチのインストール中はメンテナンス モードを有効にする必要はありませんが、有効にすると、エラーまたはタイムアウトではなくメンテナンス ページがユーザーに表示されます。 詳しくは、「メンテナンスモードの有効化とスケジューリング」を参照してください。ホットパッチのインストールスクリプトは、ホットパッチをクラスタ内の各ノードにインストールし、サービスを適切な順序で再起動し、ダウンタイムを回避します。

  1. GitHub Enterprise Server Backup Utilities を使用してデータをバックアップします。
  2. 任意のノードの管理シェルから、ghe-cluster-hotpatch コマンドを使用して最新のホットパッチをインストールします。 ホットパッチの URL を指定するか、手動でホットパッチをダウンロードしてローカルのファイル名を指定することができます。
    $ ghe-cluster-hotpatch https://HOTPATCH-URL/FILENAME.hpkg

アップグレードパッケージでのアップグレード

アップグレードパッケージを使用して、GitHub Enterprise Server クラスタを最新のフィーチャリリースにアップグレードします。 たとえば、2.11 から 2.13 にアップグレードできます。

アップグレードの準備

  1. アップグレードするバージョンの クラスター ネットワーク構成を確認し、必要に応じて構成を更新します。
  2. GitHub Enterprise Server Backup Utilities を使用してデータをバックアップします。
  3. アップグレード中は通常どおりに使用できないため、GitHub Enterprise Serverクラスタのエンドユーザーに対してメンテナンス期間をスケジュールします。 メンテナンスモードは、クラスタのアップグレードの進行中、ユーザーのアクセスをブロックし、データが変更されないようにします。
  4. GitHub Enterprise Server のダウンロード ページで、アップグレード .pkg ファイルの URL をクリップボードにコピーします。
  5. 任意のノードの管理シェルから、ghe-cluster-each コマンドを curl と組み合わせて使用して、1 つの手順でリリース パッケージを各ノードにダウンロードします。 先ほどのステップでコピーした 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. cluster.confmysql-master = <hostname> として定義されているプライマリ MySQL ノードを特定します。 このノードは最後にアップグレードされます。

クラスタノードのアップグレード

  1. 任意のクラスター ノードの管理シェルに接続して ghe-cluster-maintenance -s を実行して、スケジュールされた期間に従ってメンテナンス モードを有効にします。
  2. プライマリ MySQL ノードを除き、GitHub Enterprise Server の各ノードの管理シェルに接続します。 アップグレードの準備の手順 4 でダウンロードしたパッケージ ファイル名を指定して、ghe-upgrade コマンドを実行します。
    $ 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 ノードの管理シェルに接続してください。 アップグレードの準備の手順 4 でダウンロードしたパッケージ ファイル名を指定して、ghe-upgrade コマンドを実行します。
    $ 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. プライマリ MySQL ノードの管理シェルに接続し、ghe-cluster-config-apply コマンドを実行します。
  7. ghe-cluster-config-apply が完了したら、ghe-cluster-status を実行してサービスが正常な状態であることを確認します。
  8. ghe-cluster-maintenance -u を実行して、任意のノードの管理シェルからメンテナンス モードを終了します。