Skip to main content

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

your GitHub Enterprise Server instance のアップグレードやバックアップの復元など、一部の標準的なメンテナンス手順では、通常の使用のためにインスタンスをオフラインにする必要があります。

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

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

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

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

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

インスタンスがメンテナンスモードに入ると、通常のHTTP及びGitアクセスはすべて拒否されます。 Git fetch、clone、pushの操作も、サイトが一時的に利用できなくなっていることを示すエラーメッセージと共に拒否されます。 高可用性構成では、Git レプリケーションは一時停止されます。 GitHub Actions ジョブは実行されません。 サイトにブラウザーでアクセスすると、メンテナンスページが表示されます。

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

メンテナンス操作の初期検証を実行するには、指定された IP アドレスと範囲からのみ your GitHub Enterprise Server instance へのアクセスを許可するように IP 例外リストを構成します。 IP 例外リストで指定されていない IP アドレスから your GitHub Enterprise Server instance にアクセスしようとすると、インスタンスがメンテナンス モードのときに送信された応答と一致する応答を受け取ります。

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

  1. GitHub Enterprise Server の管理アカウントから、任意のページの右上隅の をクリックします。

    サイト管理者設定にアクセスするための宇宙船アイコンのスクリーンショット

  2. [サイト管理者] ページにまだ表示されていない場合は、左上隅の [サイト管理者] をクリックします。

    [サイト管理者] リンクのスクリーンショット 1. 左側のサイドバーで、 [Management Console] をクリックします。 左側のサイドバーの [[Management Console]] タブ

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

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

    • メンテナンス モードを直ちに有効にするには、ドロップダウン メニューを使用して [今すぐ] をクリックします。 メンテナンス モードを有効にするオプションで [今すぐ] が選択されたドロップダウン メニュー
    • 今後のメンテナンス時間枠をスケジュール設定するには、ドロップダウンメニューを使用して開始時間をクリックします。 メンテナンス期間をスケジュールするオプションで [2 時間] が選択されたドロップダウン メニュー
  5. [メンテナンス モードを有効にする] を選択します。 メンテナンス モードを有効またはスケジュールするためのチェックボックス 1. 左側のサイドバーで、 [設定の保存] をクリックします。

    [Management Console] の [設定の保存] ボタンのスクリーンショット

    注: [Management Console] に設定を保存すると、システム サービスが再起動され、ユーザーに表示されるダウンタイムが発生する可能性があります。

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

    インスタンスの設定

IP 例外リストを使い、メンテナンス モードで変更を検証する

IP 例外リストは、your GitHub Enterprise Server instance への制御および制限付きアクセスを提供します。これは、メンテナンス操作後のサーバー正常性の初期検証に最適です。 有効にすると、your GitHub Enterprise Server instance はメンテナンス モードから外され、構成済みの IP アドレスでのみ使用できるようになります。 メンテナンス モードのチェック ボックスは、状態の変化を反映するように更新されます。

メンテナンス モードを再度有効にすると、IP 例外リストが無効になり、your GitHub Enterprise Server instance がメンテナンス モードに戻ります。 IP 例外リストを無効にした場合、your GitHub Enterprise Server instance は通常の操作に戻ります。

コマンド ライン ユーティリティを使って IP 例外リストを構成することもできます。 詳細については、「コマンド ライン ユーティリティ」と「管理シェル (SSH) にアクセスする」を参照してください。

  1. GitHub Enterprise Server の管理アカウントから、任意のページの右上隅の をクリックします。

    サイト管理者設定にアクセスするための宇宙船アイコンのスクリーンショット

  2. [サイト管理者] ページにまだ表示されていない場合は、左上隅の [サイト管理者] をクリックします。

    [サイト管理者] リンクのスクリーンショット 1. 左側のサイドバーで、 [Management Console] をクリックします。 左側のサイドバーの [[Management Console]] タブ

  3. [Management Console] の上部にある [メンテナンス] をクリックし、メンテナンス モードが既に有効になっていることを確認します。 メンテナンス タブ

  4. [IP 例外リストの有効化] を選択します。 IP 例外リストを有効にするためのチェックボックス

  5. テキスト ボックスに、your GitHub Enterprise Server instance へのアクセスを許可する必要がある、空白で区切られた IP アドレスまたは CIDR ブロックの有効な一覧を入力します。 IP アドレスの完了フィールド

  6. [保存] をクリックします。 IP 例外リストが保存された後

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