Skip to main content

メンテナンスモードの有効化とスケジューリング

標準的なメンテナンス手順のうち、GitHub Enterprise Serverインスタンス のアップグレードやバックアップの復元などは、通常の使用のためにインスタンスをオフラインにしなければならないものがあります。

メンテナンスモードについて

操作の種類によっては、GitHub Enterprise Serverインスタンス をオフラインにしてメンテナンスモードにする必要があります。

  • GitHub Enterprise Server の新規バージョンにアップグレードする
  • 仮想マシンに割り当てられている CPU、メモリ、またはストレージリソースを拡大する
  • ある仮想マシンから別の仮想マシンへデータを移行する
  • GitHub Enterprise Serverバックアップユーティリティ スナップショットからデータを復元する
  • 特定の種類の重要なアプリケーション問題のトラブルシューティング

メンテナンスウィンドウのスケジュールは、ユーザに準備時間を与えるために少なくとも30分は先にすることをおすすめします。 メンテナンスウィンドウがスケジューリングされると、すべてのユーザにはサイトにアクセスしたときにバナーが表示されます。

スケジューリングされたメンテナンスに関するエンドユーザ向けバナー

インスタンスがメンテナンスモードに入ると、通常のHTTP及びGitアクセスはすべて拒否されます。 Git fetch、clone、pushの操作も、サイトが一時的に利用できなくなっていることを示すエラーメッセージと共に拒否されます。 In high availability configurations, Git replication will be paused. GitHub Actions jobs will not be executed. サイトにブラウザーでアクセスすると、メンテナンスページが表示されます。

メンテナンスモードのスプラッシュスクリーン

メンテナンスモードの即時有効化あるいは後のためのメンテナンスウィンドウのスケジューリング

  1. From an administrative account on GitHub Enterprise Server, in the upper-right corner of any page, click .

    Screenshot of the rocket ship icon for accessing site admin settings

  2. If you're not already on the "Site admin" page, in the upper-left corner, click Site admin.

    Screenshot of "Site admin" link

  3. 左のサイドバーでManagement Consoleをクリックしてください。 左のサイドバーのManagement Consoleタブ

  4. Management Consoleの上部でMaintenance(メンテナンス)をクリックしてください [Maintenance] タブ

  5. "Enable and schedule(有効化とスケジュール)"の下で、即時にメンテナンスモードを有効化するか、将来にメンテナンスウィンドウをスケジューリングするかを決めてください。

    • メンテナンスモードを直ちに有効にするには、プルダウンメニューを使用して [now] をクリックします。 メンテナンスモードを有効にするオプションが選択されたドロップダウンメニュー
    • 今後のメンテナンス時間枠をスケジュール設定するには、ドロップダウンメニューを使用して開始時間をクリックします。 メンテナンス時間枠を 2 時間でスケジュール設定するオプションが選択されたドロップダウンメニュー
  6. Enable maintenance mode(メンテナンスモードの有効化)を選択してください。 メンテナンスモードの有効化とスケジューリングのためのチェックボックス

  7. 左のサイドバーの下でSave settings(設定の保存)をクリックしてください。

    Screenshot of the save settings button in the Management Console

    Note: Saving settings in the Management Console restarts system services, which could result in user-visible downtime.

  8. 設定が完了するのを待ってください。

    インスタンスの設定

GitHub Enterprise Server APIでのメンテナンスモードのスケジューリング

GitHub Enterprise Server APIでは、様々な時間や日付にメンテナンスをスケジューリングできます。 詳しい情報については、「Management Console」を参照してください。

クラスタ内の全ノードでのメンテナンスモードの有効化もしくは無効化

ghe-cluster-maintenanceユーティリティを使えば、クラスタ内のすべてのノードでメンテナンスモードの設定や解除ができます。

$ ghe-cluster-maintenance -h
# オプションの表示
$ ghe-cluster-maintenance -q
# 現在のモードの問い合わせ
$ ghe-cluster-maintenance -s
# メンテナンスモードの設定
$ ghe-cluster-maintenance -u
# メンテナンスモードの解除