ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。
記事のバージョン: Enterprise Server 2.21

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

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

ここには以下の内容があります:

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

GitHub Enterprise Serverは、ホットパッチを利用して最新のパッチリリースへアップグレードできます。ホットパッチにはメンテナンスウィンドウが不要で、通常は再起動も必要ありません。 ホットパッチは新しいパッチリリースへのアップグレードに利用できますが、新しいフィーチャリリースへのアップグレードには利用できません。 たとえば2.10.1から2.10.5へのアップグレードは同じフィーチャリリースなので可能ですが、2.10.9から2.11.0へは異なるフィーチャリリースなので行えません。ホットパッチのインストールスクリプトは、ホットパッチをクラスタ内の各ノードにインストールし、サービスを適切な順序で再起動し、ダウンタイムを回避します。

  1. データをGitHub Enterprise Serverバックアップユーティリティでバックアップしてください。
  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バックアップユーティリティでバックアップしてください。
  3. アップグレード中は通常どおりに使用できないため、GitHub Enterprise Serverクラスタのエンドユーザーに対してメンテナンス期間をスケジュールします。 メンテナンスモードは、クラスタのアップグレードの進行中、ユーザーのアクセスをブロックし、データが変更されないようにします。
  4. GitHub Enterprise Serverのダウンロードページで、アップグレード .pkg ファイルの URL をクリップボードにコピーします。
  5. 任意のノードの管理シェルから 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. cluster.confmysql-master = <hostname> として定義されているプライマリ MySQL ノードを特定します。 このノードは最後にアップグレードされます。

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

  1. 任意のクラスタノードの管理シェルに接続し、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. アップグレードの準備のステップ 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. 任意のノードの管理シェルから ghe-cluster-maintenance -u を実行して管理モードを終了してください。

担当者にお尋ねください

探しているものが見つからなかったでしょうか?

弊社にお問い合わせください