メンテナンスモードについて
操作の種類によっては、your GitHub Enterprise Server instance をオフラインにしてメンテナンス モードにする必要があります。
- GitHub Enterprise Server の新規バージョンにアップグレードする
- 仮想マシンに割り当てられている CPU、メモリ、またはストレージリソースを拡大する
- ある仮想マシンから別の仮想マシンへデータを移行する
- GitHub Enterprise Server Backup Utilities スナップショットからデータを復元する
- 特定の種類の重要なアプリケーション問題のトラブルシューティング
メンテナンスウィンドウのスケジュールは、ユーザに準備時間を与えるために少なくとも30分は先にすることをおすすめします。 メンテナンスウィンドウがスケジューリングされると、すべてのユーザにはサイトにアクセスしたときにバナーが表示されます。
インスタンスがメンテナンスモードに入ると、通常のHTTP及びGitアクセスはすべて拒否されます。 Git fetch、clone、pushの操作も、サイトが一時的に利用できなくなっていることを示すエラーメッセージと共に拒否されます。 高可用性構成では、Git レプリケーションは一時停止されます。 GitHub Actions ジョブは実行されません。 サイトにブラウザーでアクセスすると、メンテナンスページが表示されます。
メンテナンスモードの即時有効化あるいは後のためのメンテナンスウィンドウのスケジューリング
-
GitHub Enterprise Server の管理アカウントから、任意のページの右上隅の をクリックします。
-
[サイト管理者] ページにまだ表示されていない場合は、左上隅の [サイト管理者] をクリックします。
1. 左側のサイドバーで、 Management Console をクリックします。
-
Management Console の上部で [メンテナンス] をクリックしてください
-
"Enable and schedule(有効化とスケジュール)"の下で、即時にメンテナンスモードを有効化するか、将来にメンテナンスウィンドウをスケジューリングするかを決めてください。
- メンテナンス モードを直ちに有効にするには、ドロップダウン メニューを使用して [今すぐ] をクリックします。
- 今後のメンテナンス時間枠をスケジュール設定するには、ドロップダウンメニューを使用して開始時間をクリックします。
- メンテナンス モードを直ちに有効にするには、ドロップダウン メニューを使用して [今すぐ] をクリックします。
-
[メンテナンス モードを有効にする] を選択します。
1. 左側のサイドバーで、 [設定の保存] をクリックします。
注: Management Console に設定を保存すると、システム サービスが再起動され、ユーザーに表示されるダウンタイムが発生する可能性があります。
-
設定の実行が完了するのを待ってください。
GitHub Enterprise Server APIs でのメンテナンスモードのスケジューリング
GitHub Enterprise Server APIs では、様々な時間や日付にメンテナンスをスケジューリングできます。 詳細については、管理コンソールに関する記事を参照してください。
クラスタ内の全ノードでのメンテナンスモードの有効化もしくは無効化
この ghe-cluster-maintenance
ユーティリティを使用すると、クラスター内のすべてのノードのメンテナンス モードを設定または設定解除できます。
$ ghe-cluster-maintenance -h
# Shows options
$ ghe-cluster-maintenance -q
# Queries the current mode
$ ghe-cluster-maintenance -s
# Sets maintenance mode
$ ghe-cluster-maintenance -u
# Unsets maintenance mode