В Cacti есть возможность применить стандартные наборы шаблонов для устройств. К ним относятся - Cisco Router, Generic SNMP Device, Local Linux Machine, Net-SNMP Device и Windows Device. Они охватывают достаточно большую категорию "OID" по сбору различных данных. Но если устройство использует нестандартный "OID", или его просто нету в стандартных наборах, то понадобиться создать свой, в котором будут указаны необходимые "OID" для сбора данных.
Будут использоваться:
- Cacti version: 1.1.36;
- Управляемый коммутатор Zyxel GS2210-8 с поддержкой SNMP [link] протокола;
- iReasoning MIB Browser [link] - Достаточно версии - Free Personal Edition;
- MIB [link] - Берется с офф. сайта производителя устройства. В нашем случае для "Zyxel GS2210-8";
- OID - Object identifier;
- Рабочая станция с Windows на борту.
Будем работать со следующими разделами настроек:
- Templates: (Шаблоны для,)
- Data Source - Собираемые данные;
- Graph - На основе собранных данных рисуем графики;
- Device - Шаблоны готовых и добавленных устройств.
- Managment: (Управление,)
- Devices - Устройства, с которых будут собираться данные и рисоваться графики;
- Data Source - Используемые для текущих устройств шаблоны собираемых данных;
- Graph - Рисуемые графикики, которые были выбраны для текущих устройств;
- Trees - Краткая сводка для раздела управление.
Zyxel GS2210-8:
Включаем на устройстве сервис "SNMP" и настраиваем. Переходим в группу настроек. Стандартный пароль от "Community" - public. Его следует изменить на свой.
Managment -> Access Control -> SNMP
# - General Setting
Version: v2c - Задаем используемую версию;
Get Community: public;
Set Community: public;
Trap Community: public;
# - Trap Destination
v2c 0.0.0.0 162 - ;
Managment -> Access Control -> Service Access Control
# - SNMP - *; - Включаем сервис.
Показать изображения:
MIB Browser:
После установки программы и скачивания баз, попробуем найти "OIDs" отвечающие за температуру устройства, использование RAM и загрузку CPU.
Показать изображение:
Для того, чтобы узнать на устройстве все существующие "OID" и их текущие значения, в MIB Browser в параметре "Operations" необходимо выбрать опцию "Walk".
- Переходим в настройки,
# - Adwanced Properties of SNMP Agent:
Address - ip-адрес;
Port - 161;
Read Community - public;
Write Community - -;
SNMP Version - 2.
- Открываем скачанные MIB файлы,
# - File -> Load MIBs -> ZYXEL-HW-MONITOR-MIB.mib:
С помощью Find in Subtree ищем OID со значением "temperature";
# - File -> Load MIBs -> ZYXEL-SYS-MEMORY-MIB.mib;
OID со значением "memory";
- Таблицу можно посмотреть с помощью ПКМ -> Table View.
Показать изображения:
Templates:
Необходимые значения "OIDs" мы нашли. Имея их, давайте создадим шаблон для нашего устройста - "Device Templates", и добавим в него свой шаблон для собираемых данных - "Data Templates", шаблон с отрисовкой графиков по собираемым данным - "Graph Templates".
OIDs:
- Temp:
# Board: .1.3.6.1.4.1.890.1.15.3.26.1.2.1.4.1
# MAC: .1.3.6.1.4.1.890.1.15.3.26.1.2.1.4.2
# PHY: .1.3.6.1.4.1.890.1.15.3.26.1.2.1.4.3
- RAM:
# Total (byte): .1.3.6.1.4.1.890.1.15.3.50.1.1.1.3.1
# Used (byte): .1.3.6.1.4.1.890.1.15.3.50.1.1.1.4.1
# Utilization (%): .1.3.6.1.4.1.890.1.15.3.50.1.1.1.5.1
- CPU:
# Utilization (%): .1.3.6.1.4.1.890.1.15.3.49.1.7.0
Device Templates:
Создаем шаблон устройства для нашего Zyxel GS2210-8.
- Console -> Templates -> Device -> +
# Device Templates;
Name: Zyxel GS2210-8
# Associated Graph Templates, добавим после создания ч-з Add Graph Template;
0) Zyxel - CPU Utilization
1) Zyxel - Ram
2) Zyxel - RAM Utilization
3) Zyxel - Temp
Save.
Data Templates:
Добавляем шаблоны для собираемых данных, на примере температуры.
Показать изображение:
- Console -> Templates -> Data Source -> +
# Data Templates;
Name: Zyxel - Temp (BOARD)
# Data Source;
Name: |host_description| - Temp (BOARD)
Data Input Method: Get SNMP Data
# Data Source Item;
Internal Data Source Name: zyxel_oid
- После нажимаем Create, и у нас появится новые настройки:
# Custom Data: .1.3.6.1.4.1.890.1.15.3.26.1.2.1.4.1
Save.
- Проделываем то же самое и для остальных значений.
Graph Templates:
Переходим к созданию шаблонов для графиков. Тут нам и понадобятся созданные недавно "Data Templates".
Показать изображение:
- Console -> Templates -> Graph -> +
# Template;
Name: Zyxel - Temp
# Graph Template Options;
Title (--title): |host_description| - Temp
Vertical Label (--vertical-label): Temperature (C)
Image Format (--imgformat): PNG
Height (--height): 200
Width (--width): 700
- Этих настроек достаточно, остальные по умолчанию.
Create.
- Далее у нас появится опция,
Graph Template Items; Нажимаем +
- Создадим график для Data Source - BOARD,
# Graph Template Items;
Graph Item Type: AREA
Data Source [Field Not Templated]: Zyxel - Temp (BOARD) - (zyxel_oid)
Color: Цвет
Opacity/Alpha Channel: 50%
Consolidation Function: AVERAGE
Text Format: BOARD
Save.
- Настроим значения LAST, AVERAGE, MAX.
# Graph Template Items; Нажимаем +
Graph Item Type: GPRINT
Data Source [Field Not Templated]: Zyxel - Temp (BOARD) - (zyxel_oid)
Consolidation Function: LAST
Text Format: Current:
Save
# Graph Template Items; Нажимаем +
Graph Item Type: GPRINT
Data Source [Field Not Templated]: Zyxel - Temp (BOARD) - (zyxel_oid)
Consolidation Function: AVERAGE
Text Format: Average:
Save.
# Graph Template Items; Нажимаем +
Graph Item Type: GPRINT
Data Source [Field Not Templated]: Zyxel - Temp (BOARD) - (zyxel_oid)
Consolidation Function: MAX
Text Format: Maximum:
Save.
То же самое делаем для Data Source - MAC и PHY.
В итоге должно получиться так:
Показать изображения:
Значения базовых опции для параметра Graph Item Type:
"AREA" - Плоский график данных; (Если на графике должно отображаться несколько значений AREA, то для того, чтобы значения не накладывались друг на друга и были видны, следует настроеть прозрачность "Alpha %")
"AREA Stack" - Наложение друг на друга;
"Line" - Линия.
Тег "<HR>" (Insert Hard Return) - необходим для отступа с новой строки для следующего значения "Graph Item Type".
Managment:
Осталось подключить наши устройства и нирисовать графики.
Devices:
- Console -> Management -> Devices -> +
# General Device Options
Description: Zyxel GS2210-8;
Hostname: ip-адрес;
Poller Association: Main Poller;
Device Site Association: None;
Device Template: Zyxel GS2210-8;
Number of Collection Threads: 1 Thread (default).
# SNMP Options
SNMP Version: Version 2;
SNMP Community: puplic;
SNMP Port: 161;
SNMP Timeout: 500;
Maximum OIDs Per Get Request: 10.
# Availability/Reachability Options
Downed Device Detection: SNMP Uptime;
Ping Timeout Value: 400;
Ping Retry Count: 1.
Create.
Теперь пролистываем ниже и смотрим что появились новые настройки. В "# Associated Graph Templates" добавились шаблоны графиков из шаблона устройства. А в "# Associated Data Queries" добавим (Add Data Query) - SNMP - Interface Statistics. Далее жмем "Save" и в самом верху на "Create Graphs for this Device".
Показать изображение: