メンテナンスモードについて
操作の種類によっては、GitHub Enterprise Server インスタンス をオフラインにしてメンテナンスモードにする必要があります。
- GitHub Enterprise Server の新規バージョンにアップグレードする
- 仮想マシンに割り当てられている CPU、メモリ、またはストレージリソースを拡大する
- ある仮想マシンから別の仮想マシンへデータを移行する
- GitHub Enterprise Serverバックアップユーティリティ スナップショットからデータを復元する
- 特定の種類の重要なアプリケーション問題のトラブルシューティング
メンテナンスウィンドウのスケジュールは、ユーザに準備時間を与えるために少なくとも30分は先にすることをおすすめします。 メンテナンスウィンドウがスケジューリングされると、すべてのユーザにはサイトにアクセスしたときにバナーが表示されます。
インスタンスがメンテナンスモードに入ると、通常のHTTP及びGitアクセスはすべて拒否されます。 Git fetch、clone、pushの操作も、サイトが一時的に利用できなくなっていることを示すエラーメッセージと共に拒否されます。 サイトにブラウザーでアクセスすると、メンテナンスページが表示されます。
メンテナンスモードの即時有効化あるいは後のためのメンテナンスウィンドウのスケジューリング
- 任意のページの右上で をクリックします。
- 左のサイドバーでManagement Consoleをクリックしてください。
- Management Consoleの上部でMaintenance(メンテナンス)をクリックしてください
- "Enable and schedule(有効化とスケジュール)"の下で、即時にメンテナンスモードを有効化するか、将来にメンテナンスウィンドウをスケジューリングするかを決めてください。
- メンテナンスモードを直ちに有効にするには、プルダウンメニューを使用して [now] をクリックします。
- 今後のメンテナンス時間枠をスケジュール設定するには、ドロップダウンメニューを使用して開始時間をクリックします。
- Enable maintenance mode(メンテナンスモードの有効化)を選択してください。
- 左のサイドバーの下でSave settings(設定の保存)をクリックしてください。
GitHub Enterprise Server APIでのメンテナンスモードのスケジューリング
GitHub Enterprise Server APIでは、様々な時間や日付にメンテナンスをスケジューリングできます。 For more information, see "Management Console."
クラスタ内の全ノードでのメンテナンスモードの有効化もしくは無効化
ghe-cluster-maintenance
ユーティリティを使えば、クラスタ内のすべてのノードでメンテナンスモードの設定や解除ができます。
$ ghe-cluster-maintenance -h
# オプションの表示
$ ghe-cluster-maintenance -q
# 現在のモードの問い合わせ
$ ghe-cluster-maintenance -s
# メンテナンスモードの設定
$ ghe-cluster-maintenance -u
# メンテナンスモードの解除