Мониторинг на устройства в мрежата на рутер с алтернативен фърмуер
⇡#Подготовка
Така че да започваме. На първо място, имаме нужда от ненужно флаш устройство с капацитет най-малко 512 MB. Трябва да създадете два дяла на него - дайте 64 MB за Linux swap, а останалите форматирайте в ext3. За разделяне можете да използвате например помощни програми от Acronis или безплатния GParted. В настройките на рутера System Setup → Services трябва да активирате достъп чрез Telnet или SSH и поддръжка за USB устройства (Enable USB Storage). Трябва също така да активирате SNMP в съответния подраздел IP Config и да запомните стойността на името на общността. Между другото, полезно е да го промените от публичен на нещо свое.
След като приложите настройките и след това рестартирате рутера, можете да включите USB флаш устройството в USB порта и да продължите с конфигурацията. Свързваме се чрез Telnet или SSH към рутера (влизане и парола са същите като тези за уеб интерфейса) и след това инсталираме Optware и минимален набор от помощни програми. За да направите това, трябва да монтирате нашата флашка и да изпълните следните команди в конзолата:
монтиране -o свързване /tmp/harddisk/opt /opt
mkdir -p /opt/tmp/ipkg
ipkg.sh инсталирайте ipkg-opt
ipkg инсталирайте nano
ipkg инсталирайте lighttpd
ipkg инсталирайте mrtg
Активирайте суап дяла. Нека да разгледаме изхода на командата fdisk -l и да определим кой от дяловете е маркиран като Linux swap - той трябва да бъде свързан с командата swapon. (Заменете /dev/sda1 с вашия дял!)
За да не извършваме тези действия ръчно, ще ги запишем в автоматично зареждане (скрипт след монтиране):
mkdir -p /usr/local/sbin/
chmod +x /usr/local/sbin/post-mount
Към този файл трябва да се добавят следните редове:
/bin/mount -o bind /tmp/harddisk/opt /opt
Запазваме файла (F2, Y, Enter) и изпълняваме друг набор от команди, за да запазим настройките:
flashfsзапазване && flashfs commit && активиране на flashfs
Както бе споменато по-горе, наборът от инструкции за вашия фърмуер може да се различава. Основното нещо е да инсталирате Optware и необходимия софтуер, както и по желание да активирате суап (същият WL-500gP няма много памет, така че суапът е много полезен).
⇡#Настройване на lighttpd
Нека се опитаме да стартираме lighttpd със следната команда:
⇡#Конфигуриране на MRTG
И сега най-трудното и интересно. MRTG ще събира различни статистики и ще ги показва под формата на визуални графики чрез уеб интерфейс. Директорията по подразбиране за уеб документи е /opt/share/www/. В него трябва да създадете друга папка за съхранение на MRTG файлове. И ние ще съхраняваме конфигурационните файлове в директорията /opt/etc/mrtg/.
mkdir -p /opt/share/www/mrtg
mkdir -p /opt/etc/mrtg/
Първо, нека се занимаваме със създаването на конфигурационен файл за премахване на статистика от рутера. Това не е толкова интересно, защото във фърмуера на Олег вече има показване на графики за натоварването на мрежовите интерфейси и процесора, но е доста подходящо за запознаване с параметрите. Изпълняваме следните команди:
cfgmaker --output=/opt/etc/mrtg/mrtg.cfg public@localhost
indexmaker --output=/opt/share/www/mrtg/index.html /etc/mrtg/mymrtg.cfg
Използвайки nano, отворете файла /opt/etc/mrtg/mrtg.cfg и добавете няколко реда в началото:
Опции[_]: growright, битове
какво направихме Първо, променихме броенето от байтове на битове и принудихме графиките да се чертаят отдясно наляво. Второ, активирахме стартирането на MRTG в режим на демон, тоест програмата ще виси тихо във фонов режим и ще актуализира графиките на всеки 5 минути. Не се нуждаем от протокола IPv6 - деактивирайте го. Последният параметър определя работната директория на MRTG, където се съхраняват всички основни файлове.
За мрежовите интерфейси на рутера всички настройки са идентични. Името на наблюдавания параметър се дава в квадратни скоби (скорост, изтегляне, консумация на нещо и т.н.). Всеки параметър има редица опции. Сега няма да ги разглеждаме всички, особено след като целта на всеки от тях е съвсем ясна от името. Пълен списък на всички възможни опции за техните настройки можете да намерите в официалната документация на MRTG.
Запазваме файла mrtg.cfg, стартираме отново indexmaker със същите параметри и включваме mrtg.
Когато за първи път стартирате или промените настройките, mrtg може да ругае липсващите файлове. Като цяло, след всякакви промени в mrtg.cfg, се препоръчва да актуализирате index.html и да рестартирате mrtg.
indexmaker --output=/opt/share/www/mrtg/index.html /etc/mrtg/mymrtg.cfg
Обновете страницата в браузъра с отворена mrtg статистика и се възхищавайте на резултата от вашия труд. Можете да допълните съществуващите графики, например със статистически данни за използването на процесора. Ето пример за настройки, направени във форума на фърмуера на Oleg. Добавете следните редове в края на mrtg конфигурационния файл:
Заглавие[cpu]: Натоварване на процесора на сървъра (5 минути средно)
Легенда1[cpu]: Зареждане на процесора (x 100)
Легенда I[cpu]: 1 минута натоварване
LegendO[cpu]: 5 минути натоварване
Е, тогава създайте директно скрипт, за да премахнете тази статистика ...
chmod +x /opt/etc/mrtg/cpu.sh
... и го попълнете със следното съдържание:
⇡#Конфигуриране на SNMP за Windows
cfgmaker --output=/opt/etc/mrtg/win_1.cfg [email protected]
Превъртете през файла /opt/etc/mrtg/win_1.cfg и намерете в него параметрите на желания мрежов адаптер, след което ги копирайте в основния конфигурационен файл /opt/etc/mrtg/mrtg.cfg и рестартирайте mrtg (вижте по-долу).по-висок). Подобни действия трябва да се извършат за всички други компютри или устройства, ако те, разбира се, поддържат връщането на такава статистика чрез SNMP.
Работата с помощната програма е доста проста: посочваме името на хоста и други параметри, щракнете върху Старт и вижте отговора на машината. Можете да си поиграете и да щракнете върху разделите, като щракнете върху Старт и прегледате резултатите. Имаме нужда от раздел MBrowser. С негова помощ можете да видите различни OID по йерархичен начин, както и да получите техните стойности. Например, нека използваме параметъра cpuPercentProcessorTime (CPU load) от SNMP Informant. Пълният път до него (неговият OID) изглежда като .iso.org.dod.internet.private.enterprises.wtcs.informant.standard.processorTable.processorEntry.cpuPercentProcessorTime. По принцип е подходящо да се използва в настройките на mrtg, но е по-добре да се вземе кратка цифрова нотация .1.3.6.1.4.1.9600.1.1.5.1.5. Можете също така да използвате смесена версия на записа, както предпочитате.
Легенда I[PC1-CPU]: CPU 1
ЛегендаO[PC1-CPU]: CPU 2
Легенда1[PC1-CPU]: Използване на CPU 1
Legend2[PC1-CPU]: Използване на CPU 2
Опции [PC1-CPU]: цяло число, калибровка, нулев процент, право на растеж
Заглавие [PC1-CPU]: Използване на процесора PC1
Използване на процесора PC1
Просто погледнете екранната снимка, за да разберете кой параметър за какво е отговорен. В източника на SNMP данни извлечените параметри се комбинират с амперсанд. В Опции стойностите се декодират, както следва: integer - показва цели числа под графиките, gauge - индикация, че полученият параметър не е "брояч" (невходящи стойности), nopercent - забрана за показване на проценти на използване, growright - чертане на графики отдясно наляво. Е, MaxBytes като прагова стойност за използване на процесора в проценти, очевидно, не може да бъде повече от 100.
СледСлед като всичко е отстранено, можете автоматично да заредите уеб сървъра и mrtg, като добавите следните редове в края на файла /usr/local/sbin/post-mount:
Остава да добавим последния акорд.
flashfs запазване && flashfs commit && flashfs активира && рестартирайте
⇡#Заключение
По същия начин можете да добавите много други параметри за наблюдение. Ако не искате да се занимавате, в мрежата има много готови mrtg шаблони за използване с различни видове въвеждане. За визуално отстраняване на грешки на тези данни можете да използвате помощната програма Eserv SNMP Monitor. И тук има приличен набор от MIB за разнообразно оборудване. Много програми имат вградени или отделни SNMP агенти. Като цяло можете да наблюдавате почти цялата ИТ икономика. Има ли нужда от него домашен потребител? В някои случаи да, но разглежданият вариант е по-подходящ за малък офис. Моля, обърнете внимание, че ресурсите на рутера не са неограничени и ако е възможно, по-добре е незабавно да изградите SNMP мониторинг, базиран например на Zabbix, Nagios или подобни системи. Вероятно ще се докоснем до тях в бъдещи материали, но засега традиционната дума за раздяла: „Успех!“