Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы может все еще выполняться. Актуальные сведения см. в документации на английском языке.

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

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

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

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

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

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

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

  2. Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта. 1. На боковой панели Администратор сайта щелкните Консоль управления. 1. На боковой панели "Параметры" щелкните Мониторинг. 1. В разделе "Мониторинг" выберите Включить SNMP.

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

  4. На боковой панели "Параметры" щелкните Сохранить параметры.

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

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

  6. Проверьте конфигурацию 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

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

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

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

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

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

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

  2. Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта. 1. На боковой панели Администратор сайта щелкните Консоль управления. 1. На боковой панели "Параметры" щелкните Мониторинг. 1. В разделе "Мониторинг" выберите Включить SNMP.

  3. Выберите SNMP версии 3.

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

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

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

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

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

  9. На боковой панели "Параметры" щелкните Сохранить параметры.

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

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

Запрос данных 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.