Skip to main content

Включение и планирование режима обслуживания

Некоторые стандартные процедуры обслуживания, такие как обновление ваш экземпляр GitHub Enterprise Server или восстановление резервных копий, требуют, чтобы экземпляр был отключен для нормального использования.

Сведения о режиме обслуживания

Для некоторых типов операций требуется использовать ваш экземпляр GitHub Enterprise Server в автономном режиме и поместить их в режим обслуживания:

  • Обновление до новой версии GitHub Enterprise Server
  • Увеличение ресурсов ЦП, памяти или хранилища, выделенных для виртуальной машины
  • Перенос данных из одной виртуальной машины в другую
  • Восстановление данных из моментального снимка GitHub Enterprise Server Backup Utilities
  • Устранение определенных типов критических проблем с приложениями

Рекомендуется запланировать период обслуживания как минимум на 30 минут, чтобы предоставить пользователям время для подготовки. После того как период обслуживания будет запланирован, при входе на сайт все пользователи будут видеть баннер.

Когда экземпляр находится в режиме обслуживания, отклоняется весь обычный доступ HTTP и Git. Это включает веб-запросы и запросы API, для которых устройство отвечает с кодом 503 состояния (служба недоступна). Операции получения, клонирования и отправки Git также отклоняются с сообщением об ошибке, в котором указано, что сайт временно недоступен. Задания GitHub Actions не будут выполняться. Вследствие посещения сайта в браузере появляется страница обслуживания.

Вы можете выполнить начальную проверку операции обслуживания, настроив список исключений IP, чтобы разрешить доступ к ваш экземпляр GitHub Enterprise Server только из УКАЗАННЫх IP-адресов и диапазонов. Пытается получить доступ к ваш экземпляр GitHub Enterprise Server из IP-адресов, не указанных в списке исключений IP- адресов, будет получен ответ, согласованный с теми, которые отправляются, когда экземпляр находится в режиме обслуживания.

Немедленное включение режима обслуживания и планирование периода обслуживания на более позднее время

  1. В учетной записи администратора GitHub Enterprise Server, в правом верхнем углу любой страницы щелкните .

  2. Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта.

  3. На боковой панели " "Администратор сайта" щелкните Консоль управления.

  4. На верхней панели навигации щелкните "Обслуживание".

    Снимок экрана: заголовок Консоль управления. Вкладка, помеченная как "Обслуживание", выделена оранжевым контуром.

  5. В разделе "Включить и расписание" выберите "Включить режим обслуживания", а затем укажите, следует ли включить режим обслуживания немедленно или запланировать период обслуживания в будущем.

    • Чтобы включить режим обслуживания немедленно, выберите раскрывающееся меню и щелкните сейчас****.
    • Чтобы запланировать период обслуживания в будущем, выберите раскрывающееся меню и выберите время начала.
  6. При необходимости, чтобы задать настраиваемое сообщение для пользователей, которые будут отображаться во время периода обслуживания, в поле "Задать сообщение в режиме обслуживания" введите сообщение.

  7. Если вы удовлетворены временем окна и необязательным сообщением, нажмите кнопку "Сохранить". Если вы выбрали "сейчас", экземпляр будет немедленно помещен в режим обслуживания.

Проверка изменений в режиме обслуживания с использованием списка исключений IP-адресов

Список исключений IP обеспечивает управляемый и ограниченный доступ к ваш экземпляр GitHub Enterprise Server, который идеально подходит для первоначальной проверки работоспособности сервера после операции обслуживания. После включения ваш экземпляр GitHub Enterprise Server будет выведен из режима обслуживания и доступен только для настроенных IP-адресов. Флажок режима обслуживания будет обновлен, чтобы автоматически устанавливать изменения состояния.

Если вы повторно включите режим обслуживания, список исключений IP-адресов будет отключен, и ваш экземпляр GitHub Enterprise Server вернется в режим обслуживания. Если вы просто отключите список исключений IP-адресов, ваш экземпляр GitHub Enterprise Server вернется к нормальной работе.

Вы также можете использовать служебную программу командной строки для настройки списка исключений IP-адресов. Дополнительные сведения см. в разделе [AUTOTITLE и Служебные программы командной строки](/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh).

  1. В учетной записи администратора GitHub Enterprise Server, в правом верхнем углу любой страницы щелкните .

  2. Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта.

  3. На боковой панели " "Администратор сайта" щелкните Консоль управления.

  4. На верхней панели навигации щелкните "Обслуживание", а затем убедитесь, что режим обслуживания уже включен.

    Снимок экрана: заголовок Консоль управления. Вкладка, помеченная как "Обслуживание", выделена оранжевым контуром.

  5. В разделе "Включить и настроить список исключений IP", выберите "Включить список исключений IP".

  6. Справа от флажка для включения списка введите допустимый список разделенных пробелами IP-адресов или блоков CIDR, которые должны быть разрешены для доступа к ваш экземпляр GitHub Enterprise Server.

  7. При необходимости, чтобы задать настраиваемое сообщение для пользователей, которые будут отображаться во время периода обслуживания, в поле "Задать сообщение в режиме обслуживания" введите сообщение.

  8. Нажмите кнопку Сохранить.

Управление режимом обслуживания с помощью REST API

Режим обслуживания можно управлять ваш экземпляр GitHub Enterprise Server с помощью REST API. Дополнительные сведения см. в разделе Конечные точки REST API для управления GitHub Enterprise Server.

Управление режимом обслуживания с помощью GitHub CLI

Режим обслуживания можно управлять ваш экземпляр GitHub Enterprise Server с помощью расширения GitHub CLI gh es . Дополнительные сведения см. в документации по использованию интерфейса командной строки GH ES для gh es maintenance set и .gh es maintenance get

Дополнительные сведения см. в разделе Администрирование экземпляра с помощью интерфейса командной строки GitHub.

Управление режимом обслуживания с помощью SSH

Если у вас есть SSH-доступ, можно использовать ghe-maintenance служебную программу командной строки, чтобы задать или отменить режим обслуживания для экземпляра GitHub Enterprise Server с одним узлом или несколькими узлами в конфигурации высокой доступности. Дополнительные сведения см. в разделе [AUTOTITLE и Доступ к административной оболочке (SSH)](/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities#ghe-maintenance).

Управление режимом обслуживания для кластера с помощью SSH

Если у вас есть SSH-доступ к экземпляру GitHub Enterprise Server, можно использовать служебную ghe-cluster-maintenance программу командной строки для установки или отмены режима обслуживания для каждого узла в кластере. Дополнительные сведения см. в разделе [AUTOTITLE и Доступ к административной оболочке (SSH)](/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities#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 -s "MESSAGE"
# Sets maintenance mode with a custom message
$ ghe-cluster-maintenance -m "MESSAGE"
# Updates the custom message
$ ghe-cluster-maintenance -u
# Unsets maintenance mode