Skip to main content

アップグレードの要求事項

この記事では、次の項目が扱われます。

GitHub Enterprise Server をアップグレードする前に、アップグレードの方針を計画するために以下の推奨事項と要求事項をレビューしてください。

注:

  • サポートされているバージョンのアップグレード パッケージは、enterprise.github.com で入手できます。 アップグレードを完了するには、必要なアップグレードパッケージが利用できることを確認してください。 パッケージが利用できない場合はGitHub Enterprise Supportに連絡して支援を求めてください。
  • GitHub Enterprise Server クラスタリングを使用している場合、クラスタリングに固有の具体的な手順については、GitHub Enterprise Server クラスタリング ガイドの「クラスターのアップグレード」を参照してください。
  • GitHub Enterprise Server のリリースノートには、GitHub Enterprise Server のすべてのバージョンの新機能の包括的なリストがあります。 詳細については、リリース ページを参照してください。

推奨事項

  • アップグレードのプロセスに含めるアップグレードは、できるだけ少なくしてください。 たとえば GitHub Enterprise 3.4 から 3.5 を経て 3.6 にアップグレードする代わりに、GitHub Enterprise 3.4 から 3.6 にアップグレードできます。 アップグレード アシスタント を使用して、現在のリリース バージョンからのアップグレード パスを見つけます。
  • 数バージョン古いものを使用している場合、アップグレード プロセスの各ステップで可能な限り新しいバージョンまで your GitHub Enterprise Server instance をアップグレードします。 各アップグレードで可能な限りの最新バージョンを使うことで、パフォーマンスの改善やバグフィックスのメリットが得られます。 たとえばGitHub Enterprise2.7から2.8を経て2.10へアップグレードすることができますが、GitHub Enterprise2.7から2.9を経て2.10へのアップグレードすれば、2番目のステップでより新しいバージョンを利用できます。
  • アップグレードの際には、最新のパッチリリースを使ってください。 GitHub Enterprise Server リリース ページを参照します。 アップグレード先対象リリースの横にある [ダウンロード] をクリックし、 [アップグレード] タブをクリックします。
  • アップグレードのステップのテストには、ステージングインスタンスを使ってください。 詳細については、「ステージング インスタンスの設定」を参照してください。
  • 複数のアップグレードを実行する場合は、機能のアップグレードの間に少なくとも 24 時間待って、データ移行とバックグラウンドで実行されているアップグレードタスクが完全に完了するようにします。
  • 仮想マシンをアップグレードする前にスナップショットを作成します。 詳細については、「スナップショットの作成」を参照してください。
  • インスタンスの最新の正常なバックアップがあることを確認します。 詳細については、GitHub Enterprise Server Backup Utilities の README.md ファイルを参照してください。

要件

  • アップグレードは、最大でも 2 リリース前の機能リリースから行わなければなりません。 たとえば GitHub Enterprise 3.6 にアップグレードするためには、GitHub Enterprise 3.5 あるいは 3.4 となっていなければなりません。
  • アップグレード パッケージを使ってアップグレードをする場合は、GitHub Enterprise Server のエンド ユーザーのためにメンテナンス期間をスケジューリングします。
  • You can upgrade GitHub Enterprise Server to the latest patch release using a hotpatch.

You can use hotpatching to upgrade to a newer patch release, but not a feature release. For example, you can upgrade from 2.10.1 to 2.10.5 because they are in the same feature series, but not from 2.10.9 to 2.11.0 because they are in a different feature series.

Hotpatches do not generally require a reboot. If a hotpatch does require a reboot, the GitHub Enterprise Server release notes will indicate the requirement.

Hotpatches require a configuration run, which can cause a brief period of errors or unresponsiveness for some or all services on your GitHub Enterprise Server instance. You are not required to enable maintenance mode during installation of a hotpatch, but doing so will guarantee that users see a maintenance page instead of errors or timeouts. For more information, see "Enabling and scheduling maintenance mode."

  • ホットパッチは、影響するサービス(カーネル、MySQL、Elasticsearchなど)がVMの再起動やサービスの再起動を必要とするなら、ダウンタイムが必要になります。 リブートや再起動が必要になったときには通知されます。 リブートや再起動は後で完了させることができます。
  • ホットパッチでアップグレードをする場合、アップグレードの完了までに特定のサービスの複数バージョンがインストールされることから、追加のルートストレージが利用できなければなりません。 十分なルートディスクストレージがなければ、事前チェックで通知されます。
  • ホットパッチでアップグレードする場合、インスタンスの負荷は高すぎてはなりません。もし負荷が高すぎると、ホットパッチのプロセスに影響するかもしれません。
  • GitHub Enterprise Server 2.17にアップグレードすると、監査ログがElasticsearchからMySQLに移行されます。 この移行により、スナップショットの復元に必要な時間とディスク容量も増加します。 移行の前に、次のコマンドでElasticsearch監査ログのインデックスでバイト数を確認してください。
    curl -s http://localhost:9201/audit_log/_stats/store | jq ._all.primaries.store.size_in_bytes
    MySQLの監査ログで必要なディスク容量の概算には、この数字を使用します。 スクリプトは、インポートの進行中に空きディスク容量も監視します。 この数字を監視しておくと、空きディスク容量が、移行に必要なディスク容量に近い場合に特に便利です。

次の手順

これらの推奨および要求事項をレビューした後で、GitHub Enterprise Server をアップグレードできます。 詳細については、「GitHub Enterprise Server をアップグレードする」を参照してください。