Мониторинг Windows Server с использованием SNMP
Насколько сложно это может быть? Я хочу получить текущую производительность процессора с удаленной машины Win 2k3. Мне нужно использовать SNMP, потому что машина находится за брандмауэром.
Предположения:
- Я понимаю сеть / могу настроить любой вид IP-адреса / перенаправление портов / брандмауэр / прочее.
- Я понимаю SNMP - я знаю, как использовать мой инструмент для получения значения из OID на целевой машине.
- Я знаю, что я хочу сделать с результатом из моего запроса SNMP.
- Я включил SNMP на Windows Server, настроил соответствующие вещи безопасности IP / сообщества.
- Я уже могу спросить стандартный материал сервера Windows, использующий SNMP, о количестве дисков / сетевых интерфейсов и т. Д.
Вопрос: - Какой OID я использовал, чтобы просто спросить текущее использование производительности.
Я потратил много часов, спрашивая Google - явно задавая неправильный вопрос:S .... Насколько это может быть сложно?
6 ответов
Использование snmpwalk
чтобы увидеть, что машина сообщает, и выбрать то, что выглядит соответствующим:-)
Для загрузки ЦП MIB ресурсов хоста предоставляет таблицу SNMP по адресу 1.3.6.1.2.1.25.3.3
в котором перечислены все ЦП и его текущий процент использования, но эти значения могут вводить в заблуждение (100% не всегда означает, что ваша система перегружена).
www.oidview.com - это хорошее место для просмотра MIB, где вы найдете название объекта MIB и OID.
Вы можете использовать Cacti в Linux или Windows для управления данными и графиками snmp. Он сам обнаружит oid (с использованием предварительно загруженных шаблонов) и сгенерирует графы для вас (ежедневно / ежемесячно...). Открытый исходный код.
OID для "использования производительности" не существует, вам нужно будет провести собственное расследование и определить, что вы хотите захватить - многие вещи из MIB HOSTS (ЦП, ОЗУ, дисковое пространство) являются общими, но вы можете также заботиться о конкретных вещах, которые зависят от аппаратного обеспечения (например, карта RAID от поставщика).
Какой инструмент вы используете? Nagios, OpenNMS и MRTG имеют шаблоны для распространенных сценариев.
Также имейте в виду, что если вы используете SNMP v2, строки вашего сообщества являются открытым текстом.
Вы можете использовать getif.exe или браузер MIB, чтобы увидеть, что машина показывает.
Оид для общей информации о процессоре от одного из RFC-устройств:
.1.3.6.1.2.1.25.3.3.1
но вам нужно детализировать, чтобы определить мультипроцессор. На одном из моих однопроцессорных серверов oid:
.1.3.6.1.2.1.25.3.3.1.2.1
YMMV.
Отличный источник информации snmp:
http://www.wtcs.org/snmp4tpc/testing.htm
Как уже упоминалось в другом месте, как только вы получите данные, MRTG, Cacti, Nagios (и др.) - это отличный способ показать историческую информацию и получить представление о состоянии сервера в вашей сети.
обкрадывать
Использование Nagios
который будет установлен на сервере Linux. Он имеет множество плагинов для мониторинга производительности системы (CPU/RAM/HDD). Затем установите NRPE
на вашем сервере Windows. Nagios
/NRPE
должен быть запущен на вашем сервере Windows. Nagios
также имеет возможность вызывать сигнал тревоги при достижении установленного вами порога и отправлять оповещение по электронной почте тому, кто управляет системой.
Вы также можете использовать Cacti
который также использует SNMP
, Он имеет плагины для мониторинга производительности системы. По сравнению с Nagios
, Cacti
имеет графическое представление текущей производительности системы, которая может обновляться в режиме реального времени.
Я использую Nagios
с Nagios graphs
которые дают мне возможность отслеживать загрузку процессора, MEM и диска, на стороне Windows, которую я использую NSClient++
подключиться к Nagios
сервер
- Для процессора я использую
check_nt_cpuload
, этоNagios
плагин, - Для памяти я использую
check_memory
- я использую
SNMP
для проверки свободного места на диске, а также для проверки используемой памяти одним процессом, я также используюSNMP
для проверки того, сколько процесс берет из процессора. Также у меня есть настройкаNagios
отправлять электронные письма, когда достигнуто хранилище мусора (например, память на сервере 1 имеет решающее значение).
Это заняло у меня около 5 дней, и теперь у меня есть журналы для примерно 10 монтирований, и я могу сказать, сколько сервера было загружено за определенный период времени.