メンテナンスモードについて
操作の種類によっては、GitHub Enterprise Serverのインスタンス をオフラインにしてメンテナンスモードにする必要があります。
- GitHub Enterprise Server の新規バージョンにアップグレードする
 - 仮想マシンに割り当てられている CPU、メモリ、またはストレージリソースを拡大する
 - ある仮想マシンから別の仮想マシンへデータを移行する
 - GitHub Enterprise Serverバックアップユーティリティ スナップショットからデータを復元する
 - 特定の種類の重要なアプリケーション問題のトラブルシューティング
 
メンテナンスウィンドウのスケジュールは、ユーザに準備時間を与えるために少なくとも30分は先にすることをおすすめします。 メンテナンスウィンドウがスケジューリングされると、すべてのユーザにはサイトにアクセスしたときにバナーが表示されます。

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

メンテナンスモードの即時有効化あるいは後のためのメンテナンスウィンドウのスケジューリング
- GitHub Enterprise Serverの管理アカウントから、任意のページの右上にあるをクリックしてください。 

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

 - Management Consoleの上部でMaintenance(メンテナンス)をクリックしてください 
![[Maintenance] タブ](https://github.github.com/docs-ghes-2.22/assets/images/enterprise/management-console/maintenance-tab.png)
 - "Enable and schedule(有効化とスケジュール)"の下で、即時にメンテナンスモードを有効化するか、将来にメンテナンスウィンドウをスケジューリングするかを決めてください。
- メンテナンスモードを直ちに有効にするには、プルダウンメニューを使用して [now] をクリックします。 

 - 今後のメンテナンス時間枠をスケジュール設定するには、ドロップダウンメニューを使用して開始時間をクリックします。 

 
 - メンテナンスモードを直ちに有効にするには、プルダウンメニューを使用して [now] をクリックします。 
 - Enable maintenance mode(メンテナンスモードの有効化)を選択してください。 

 - 左のサイドバーの下でSave settings(設定の保存)をクリックしてください。 
![Management Console での [Save settings] ボタン](https://github.github.com/docs-ghes-2.22/assets/images/enterprise/management-console/save-settings.png)
 - 設定が完了するのを待ってください。
 
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
# メンテナンスモードの解除