Skip to main content
We publish frequent updates to our documentation, and translation of this page may still be in progress. For the most current information, please visit the English documentation.

Поддержка этой версии GitHub Enterprise была прекращена 2023-01-18. Исправления выпускаться не будут даже при критических проблемах безопасности. Для повышения производительности, укрепления безопасности и новых функций установите последнюю версию GitHub Enterprise. Чтобы получить справку по обновлению, обратитесь в службу поддержки GitHub Enterprise.

Мониторинг с помощью SNMP

GitHub Enterprise предоставляет данные об использовании диска, ЦП, памяти и т. д. по протоколу SNMP.

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

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

Настройка SNMP версии 2c

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

    Снимок экрана: значок ракетного корабля для доступа к параметрам администратора сайта

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

    Снимок экрана: ссылка "Администратор сайта" 1. На боковой панели слева нажмите Management Console . Вкладка "Management Console" на боковой панели слева 1. На левой боковой панели щелкните Мониторинг. Вкладка Monitoring (Мониторинг) 1. В разделе "Мониторинг" выберите Включить SNMP. Кнопка для включения SNMP

  3. В поле Строка сообщества введите новую строку сообщества. Если оставить это поле пустым, по умолчанию используется значение public. Поле для добавления строки сообщества 1. Нажмите кнопку Сохранить параметры под левой боковой панелью.

    Снимок экрана кнопки сохранения параметров в Management Console

    Примечание. Сохранение параметров в Management Console перезапускает системные службы, что может привести к простою, заметному для пользователей.

  4. Ожидайте завершения запуска конфигурации.

    Настройка экземпляра

  5. Проверьте конфигурацию SNMP, выполнив следующую команду на отдельной рабочей станции с поддержкой SNMP в сети:

    # community-string is your community string
    # hostname is the IP or domain of your Enterprise instance
    $ snmpget -v 2c -c COMMUNITY-STRING -O e HOSTNAME hrSystemDate.0

Это должно возвращать системное время на узле your GitHub Enterprise Server instance.

Пользовательская безопасность

Если настроена поддержка SNMP версии 3, вы можете получить более высокий уровень безопасности с контролем на уровне пользователей благодаря модели безопасности пользователей (USM). Для каждого уникального пользователя можно отдельно настроить один из следующих уровней безопасности.

  • noAuthNoPriv: этот уровень безопасности не предоставляет проверку подлинности и конфиденциальность.
  • authNoPriv: этот уровень безопасности предоставляет проверку подлинности, но не предоставляет конфиденциальность. Чтобы отправить запрос на устройство, потребуется имя пользователя и пароль (длиной не менее восьми символов). Информация отправляется без шифрования, как в протоколе SNMP версии 2. В качестве протокола проверки подлинности может использоваться MD5 или SHA, по умолчанию — SHA.
  • authPriv: этот уровень безопасности предоставляет проверку подлинности и конфиденциальность. Проверка подлинности является обязательной, пароль должен содержать не менее восьми символов, а ответы шифруются. Пароль конфиденциальности не является обязательным, но если он указан, то должен содержать не менее восьми символов. Если пароль конфиденциальности не указан, используется пароль проверки подлинности. В качестве протокола конфиденциальности может использоваться DES или AES, по умолчанию — AES.

Настройка пользователей для SNMP версии 3

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

    Снимок экрана: значок ракетного корабля для доступа к параметрам администратора сайта

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

    Снимок экрана: ссылка "Администратор сайта" 1. На боковой панели слева нажмите Management Console . Вкладка "Management Console" на боковой панели слева 1. На левой боковой панели щелкните Мониторинг. Вкладка Monitoring (Мониторинг) 1. В разделе "Мониторинг" выберите Включить SNMP. Кнопка для включения SNMP

  3. Выберите SNMP версии 3. Кнопка для включения SNMP версии 3

  4. В поле "Имя пользователя" введите уникальное имя для пользователя SNMP версии 3. Поле для ввода имени пользователя SNMP версии 3

  5. В раскрывающемся меню Уровень безопасности выберите уровень безопасности для пользователя SNMP версии 3. Раскрывающееся меню для уровня безопасности пользователя SNMP версии 3

  6. Для пользователей SNMP версии 3 с уровнем безопасности authnopriv: Параметры для уровня безопасности authnopriv

    • В поле "Пароль для проверки подлинности" введите пароль для проверки подлинности.
    • В правой части окна "Пароль для проверки подлинности" в раскрывающемся меню Протокол выберите нужный протокол для проверки подлинности.
  7. Для пользователей SNMP версии 3 с уровнем безопасности authpriv: Параметры для уровня безопасности authpriv

    • В поле "Пароль для проверки подлинности" введите пароль для проверки подлинности.
    • В правой части окна "Пароль для проверки подлинности" в раскрывающемся меню Протокол выберите нужный протокол для проверки подлинности.
    • При необходимости в поле "Пароль конфиденциальности" введите пароль конфиденциальности.
    • В правой части раздела "Пароль конфиденциальности" выберите в раскрывающемся меню Протокол метод протокола конфиденциальности, который вы хотите использовать.
  8. Нажмите кнопку Добавить пользователя. Кнопка для добавления пользователя SNMP версии 3 1. Нажмите кнопку Сохранить параметры под левой боковой панелью.

    Снимок экрана кнопки сохранения параметров в Management Console

    Примечание. Сохранение параметров в Management Console перезапускает системные службы, что может привести к простою, заметному для пользователей.

  9. Ожидайте завершения запуска конфигурации.

    Настройка экземпляра

Запрос данных SNMP

В SNMP версии 3 доступны сведения об устройстве на аппаратном и программном уровнях. Из-за отсутствия шифрования и конфиденциальности, для уровней безопасности noAuthNoPriv и authNoPriv мы исключаем таблицу hrSWRun (1.3.6.1.2.1.25.4) из создаваемых отчетов SNMP. Если вы используете уровень безопасности authPriv, мы включаем эту таблицу. Дополнительные сведения см. в справочной документации по API.

В SNMP версии 2с доступны сведения об устройстве только на аппаратном уровне. Приложения и службы в GitHub Enterprise не имеют настроенных идентификаторов OID для передачи метрик. Доступны несколько MIB, для получения списка которых можно выполнить snmpwalk на отдельной рабочей станции с поддержкой SNMP в сети:

# community-string is your community string
# hostname is the IP or domain of your Enterprise instance
$ snmpwalk -v 2c -c COMMUNITY-STRING -O e HOSTNAME

Из доступных MIB для SNMP наиболее полезным является HOST-RESOURCES-MIB (1.3.6.1.2.1.25). В таблице ниже приведены некоторые важные объекты в этом MIB:

ИмяOIDОписание
hrSystemDate.21.3.6.1.2.1.25.1.2Представление узлов о локальной дате и времени дня.
hrSystemUptime.01.3.6.1.2.1.25.1.1.0Сколько времени прошло с момента последней инициализации узла.
hrMemorySize.01.3.6.1.2.1.25.2.2.0Объем ОЗУ на виртуальной машине.
hrSystemProcesses.01.3.6.1.2.1.25.1.6.0Количество контекстов процесса, загруженных или выполняющихся на узле в данный момент.
hrStorageUsed.11.3.6.1.2.1.25.2.3.1.6.1Объем дискового пространства, потребляемого на узле, выраженный в hrStorageAllocationUnits.
hrStorageAllocationUnits.11.3.6.1.2.1.25.2.3.1.4.1Размер hrStorageAllocationUnit в байтах

Например, чтобы получить hrMemorySize по протоколу SNMP версии 3, выполните следующую команду на отдельной рабочей станции с поддержкой SNMP в сети:

# username is the unique username of your SNMP v3 user
# auth password is the authentication password
# privacy password is the privacy password
# hostname is the IP or domain of your Enterprise instance
$ snmpget -v 3 -u USERNAME -l authPriv \
  -A "AUTH PASSWORD" -a SHA \
  -X "PRIVACY PASSWORD" -x AES \
  -O e HOSTNAME HOST-RESOURCES-MIB::hrMemorySize.0

Чтобы получить hrMemorySize по протоколу SNMP версии 2c, выполните следующую команду на отдельной рабочей станции с поддержкой SNMP в сети:

# community-string is your community string
# hostname is the IP or domain of your Enterprise instance
snmpget -v 2c -c COMMUNITY-STRING HOSTNAME HOST-RESOURCES-MIB::hrMemorySize.0

Примечание: чтобы предотвратить утечку сведений о службах, работающих на устройстве, мы исключаем таблицу hrSWRun (1.3.6.1.2.1.25.4) из создаваемых отчетов SNMP, если вы не используете уровень безопасности authPriv для SNMP версии 3. Если вы используете уровень безопасности authPriv, мы включаем таблицу hrSWRun.

Дополнительные сведения о сопоставлениях OID для популярных системных атрибутов SNMP см. в разделе OID для статистики по ЦП, памяти и дискам в Linux SNMP.