Выводим состояние серверов из Zabbix на рабочий стол / Хабрахабр. Система мониторинга Zabbix предоставляет замечательные возможности по мониторингу серверов под управлением ОС AIX, Linux, *BSD, Windows, Mac OS X, сетевого оборудования, Web- приложений, а также любый железяк поддерживающих SNMP или хотя бы отвечающих на пинг. Zabbix бесплатен и распространяется по лицензии GPL.
Если у элемента карты (узла сети, группы узлов сети или другой карты) имеется одна
Эта опция доступна начиная с версии Zabbix 1.8.1. При обновлении с предыдущих версий. Пример использования переменных, для упрощения создания подписей. Если использовать статические данные, то после правки узла придется править и на карте. Смысл мониторинга Web следующий: 1. Пока все нормально работает, связь (линия) между Zabbix сервером и сайтом зеленого цвета.
Серверная часть системы устанавливается только под *nix. Можно настроить отсылку уведомлений на email, jabber, sms при наступлении нежелательных событий, как то падение сервера, чрезмерная загрузка процессора, отсутствие места на диске и т. Также существует веб- интерфейс с красивыми графиками и картой сети. Но сисадмин, как известно, существо ленивое. Поэтому чтобы не лазить постоянно в веб- интерфейс целесообразно вывести некоторые графики и карту сети прямо на его рабочий стол. В данной статье мы рассматриваем Windows XP/7 в качестве клиентской машины, но путем небольшого допиливания скрипт можно использовать и в Linux.
Принцип работы: В Zabbix создаются необходимые графики и карта сети, которую мы хотим выводить на экран. PHP- скрипт раз в минуту обращается к Zabbix, получает от него эти изображения и генерирует из них один рисунок для рабочего стола. Рисунок помещается на веб- сервере.
- Смысл мониторинга Web следующий: 1. Пока все нормально работает, связь (линия) между Zabbix сервером и сайтом зеленого цвета..
- Создаем карту сети в Zabbix для мониторинга Web. Смысл мониторинга Web следующий: 1. Пока все нормально работает, связь (линия) между Zabbix.
- Завел несколько узлов сети (рабочую станцию win и zabbix сервер), настроил на них сбор данных с помощью стандартных шаблонов.
- Обычно о проблемах в работе сетевой и пользовательской инфраструктуры системные администраторы узнают либо со звонков пользователей, либо со звонков руководства, что не доставляет приятности подобным моментам..
Другой скрипт на клиентской машине периодически скачивает этот рисунок и устанавливает его в качестве обоев. Шаг 0. Устанавливаем и настраиваем Zabbix. Этот вопрос уже разжёван в документации, на нем останавливаться не будем.
В статье используется версия 1. В более ранних версиях используются другие адреса картинок, поэтому если у вас Zabbix 1. Шаг 1. Создаем в Zabbix необходимые графики и карты сети. Этот шаг тоже не должен вызвать затруднений. Графики можно создать на странице Configuration — Hosts, карту сети — в Maps.
Шаг 2. Пишем скрипт, генерирующий фоновую картинку рабочего стола. Используем PHP, расширение с. URL для получения картинок, библиотеки gd и Image.
Magick для работы с изображениями. Предварительно необходимо создать в Zabbix пользователя, под которым скрипт будет заходить в систему.
Скрипт также будет получать график загрузки WAN интерфейса роутера из cacti и изображение с веб- камеры в серверной. График в cacti кажется более наглядным, чем график Zabbix. Результатом работы скрипта будет BMP- файл. Скрипт не претендует на универсальность, но его легко переделать под свои нужды. Обязательно нужно изменить значения констант в начале файла на настройки для вашей системы.< ? Основные настройки, не забудьте указать свои значения!< br/> < br/> //1. Папка для хранения изображений< br/> define('TMP_PATH', '/usr/local/share/zabbix/php/tmp/'); < br/> //2. URL веб- интерфейса Zabbix< br/> define('ZABBIX_URL', 'http: //monitoring. Пользователь в Zabbix< br/> define('ZABBIX_USER', 'mon'); < br/> //4. Пароль для Zabbix< br/> define('ZABBIX_PW', 'qwerty'); < br/> //5. Пользователь в Cacti< br/> define('CACTI_URL', 'http: //monitoring.
Пользователь в Cacti< br/> define('CACTI_USER', 'admin'); < br/> //7. Пароль для Cacti< br/> define('CACTI_PW', 'qwerty'); < br/> //8. Ширина рабочего стола в пикселях< br/> define('WALLPAPER_WIDTH', 1. Высота рабочего стола в пикселях< br/> define('WALLPAPER_HEIGHT', 1. Ресурсы, выводимые на рабочий стол и их координаты. < br/> // Координаты придется считать вручную.< br/> $resources = array(); < br/> //Карта сети< br/> $resources[] = array('url' => 'http: //monitoring. График температуры< br/> $resources[] = array('url' => 'http: //monitoring. Веб- камера< br/> $resources[] = array('url' => 'http: //1. График из cacti< br/> $resources[] = array('url' => 'http: //monitoring.
Конец настроек< br/> //Ниже менять ничего не надо, если вы не уверены, что вы делаете.< br/> < br/> $error = false; < br/> < br/> //"Логинимся" скриптом в Zabbix< br/> $ch = curl_init(); < br/> curl_setopt($ch, CURLOPT_URL, ZABBIX_URL . '/index. CURLOPT_POST, 1); < br/> curl_setopt($ch, CURLOPT_POSTFIELDS, array('form'=> '1', 'form_refresh'=> '1','name'=> ZABBIX_USER, 'password'=> ZABBIX_PW,'enter'=> 'Enter')); < br/> curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); < br/> curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); < br/> curl_setopt($ch, CURLOPT_COOKIEJAR, "./cookie. Сохраняем куки в файл< br/> curl_setopt($ch, CURLOPT_COOKIEFILE, "./cookie.
Логинимся" скриптом в cacti. Удалите эти строчки, если вы не используете cacti< br/> $ch = curl_init(); < br/> curl_setopt($ch, CURLOPT_URL, CACTI_URL . '/graph_image. CURLOPT_POST, 1); < br/> curl_setopt($ch, CURLOPT_POSTFIELDS, array('action'=> 'login', 'login_username'=> CACTI_USER,'login_password'=> CACTI_PW)); < br/> curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); < br/> curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); < br/> curl_setopt($ch, CURLOPT_COOKIEJAR, "./cookie. CURLOPT_COOKIEFILE, "./cookie. Получаем изображения< br/> foreach($resources as $k => $res)< br/> {< br/> $ch = curl_init(); < br/> curl_setopt($ch, CURLOPT_URL, $res['url']); < br/> curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); < br/> curl_setopt($ch, CURLOPT_COOKIEJAR, "./cookie. CURLOPT_COOKIEFILE, "./cookie.
TMP_PATH . 'temp_img' . $k . '. Создаем "обои" на рабочий стол< br/> $wp = imagecreatetruecolor(WALLPAPER_WIDTH, WALLPAPER_HEIGHT); < br/> < br/> if(!$error)< br/> {< br/> //Все в порядке< br/> < br/> //Заливаем синим фоном< br/> $bg = imagecolorallocate($wp, 5. Добавляем картинки< br/> $images = array(); < br/> foreach($resources as $k => $res)< br/> {< br/> $im = imagecreatefromfile(TMP_PATH . 'temp_img' . $k . '. TMP_PATH . 'temp_fin. Если произошла ошибка, заливаем рабочий стол серым цветом< br/> $bg = imagecolorallocate($wp, 1.
Конфертируем полученный PNG файл в BMP с помощью Image. Magick< br/> $imgk = new Imagick(TMP_PATH . 'temp_fin. Image(TMP_PATH . 'temp_fin. Image(TMP_PATH . 'temp_fin. Image. Compression(imagick: :COMPRESSION_NO); < br/> $imgk- > set. Image. Format("bmp"); < br/> $imgk- > write.
Image(TMP_PATH . 'wp. Функция открытия изображения в зависимости от его типа с сайта php. IMAGETYPE_GIF => 'imagecreatefromgif',< br/> IMAGETYPE_JPEG => 'imagecreatefromjpeg',< br/> IMAGETYPE_PNG => 'imagecreatefrompng',< br/> IMAGETYPE_WBMP => 'imagecreatefromwbmp',< br/> IMAGETYPE_XBM => 'imagecreatefromwxbm',< br/> ); < br/> < br/> if(!$functions[$info[2]]) return false; < br/> < br/> if(! Шаг 3. Добавляем скрипт в крон. Желательно хранить скрипт в каталоге, который не опубликован на сайте. Иначе скрипт можно будет запускать из браузера, да и файл с куки можно будет утащить. Добавляем скрипт в крон: # echo "*/1 * * * * root /usr/local/bin/php /usr/local/share/zabbix/get_image.
Zabbix по умолчанию обновляет данные раз в 3. Шаг 4. Устанавливаем на клиентской машине скрипт автоматической смены обоев. Создадим VBS- скрипт: Для Windows XPDim res< br/> Set o. XMLHTTP = Create.
Object("MSXML2. XMLHTTP") < br/> o. XMLHTTP. Open "GET", "http: //monitoring. XMLHTTP. Send< br/> On Error Goto 0 < br/> < br/> Set o. ADOStream = Create.
Object("ADODB. Stream") < br/> o. ADOStream. Mode = 3 < br/> o. ADOStream. Type = 1 < br/> o.
ADOStream. Open < br/> o. ADOStream. Write o. XMLHTTP. response. Body < br/> o.
ADOStream. Save. To. File "C: \\wp. bmp", 2'куда файл сохранять< br/> Set o. XMLHTTP = Nothing< br/> Set o. ADOStream = Nothing< br/> < br/> < br/> Dim Wsh.
Shell< br/> Set Wsh. Shell = WScript. Create. Object("Wscript. Shell")< br/> Wsh. Shell. Reg. Write "HKCU\Control Panel\Desktop\Wallpaper", """C: \\wp. Wsh. Shell. Run "%windir%\System. RUNDLL3. 2. EXE user.
Update. Per. User. System. Parameters", 1, True< br/> < br/> Set Wsh. Shell = Nothing. Windows Vista/Windows 7. Здесь ситуация сложнее.
Для смены обоев необходимо вызвать Win. API функцию. VBScript этого сделать не может, поэтому нам придется написать небольшую программку на C++. Идея взята отсюда. В конце статьи есть ссылка на скомпилированный exe- шник, но на всякий случай привожу исходный код: #include < windows. System. Parameters. Info( SPI_SETDESKWALLPAPER, 0, (PVOID)argv[1], SPIF_UPDATEINIFILE | SPIF_SENDCHANGE ); < br/> return 0; < br/> }< br/> Теперь необходимо в VBS скрипте для Windows XP заменить строку Wsh.
Shell. Run "%windir%\System. RUNDLL3. 2. EXE user. Update. Per. User. System. Parameters", 1, Trueна. Wsh. Shell. Run "C: \wallpaper. C: \wp. bmp", 1, True.
Шаг 5. Добавляем VBS скрипт в планировщик задач. Необходимо запускать скрипт раз в минуту. Готово! Файлы проекта — zabbix_wallpaper.
Настройка системы мониторинга Zabbix - сотворения своей карты сети — Linux портал. Продолжаем знакомиться с системой мониторинга Zabbix, уже поставили установка системы мониторинга Zabbix на Debian 6. Zabbix версии 1. 8. Эта страница предоставляет список карт, так же возможность сделать новейшую карту, показывает наши свойства (Имя карты, Ширина и Высота в пикселах ). Эта страница употребляется для управления пользовательскими картами сети. Начиная с версии Zabbix 1. Эта страница предоставляет список карт.
Отображаемые данные: Настройка карты (высокоуровневая)Эта страница предоставляет доступ к настройке карты. Высокоуровневые атрибуты карты. Имя. Уникальное имя карты. Ширина. Ширина карты в пикселах. Высота. Высота карты в пикселах.
Фоновый рисунок. Использовать фоновый рисунок: Без рисунка – без фонового рисунка (белый фон)Рисунок – избранный рисунок употребляется как фоновый рисунок. Масштабирование нереально.
Подсветка иконки. Элементы карты будут подсвечиваться. Если элемент имеет активный триггер, будет употребляться фон в виде круга, имеющий такой же цвет, что и значимость самого тяжелого триггера.
Если элемент имеет статус “отключен” или “в обслуживании”, будет употребляться фон в виде квадрата. Эта функция доступна начиная с версии Zabbix 1. Маркировать элементы с измененным состоянием триггеров. Любые элементы карты, состояние которых не так издавна поменялось не так издавна (сработка триггера или его восстановление), будут маркироваться красными треугольниками.
Эти треугольники располагаются сверху, снизу, слева и справа от объекта. Если у объекта имеется подпись, то треугольник не будет отображаться со стороны подписи. Время отображения этой маркировки такое же как у мигания состояния триггера — 3.
Эта функция доступна начиная с версии Zabbix 1. Развертывание одиночной трудности. Если у элемента карты (узла сети, группы узлов сети или другой карты) имеется одна неувязка, эта функция управляет отображением имени трудности (триггера), или количества заморочек. Если функция включена, тогда будет отображено имя трудности. Эта функция доступна начиная с версии Zabbix 1.
При обновлении с прошедших версий установок Zabbix, эта функция включена по умолчанию для всех карт. Тип подписи иконки. Тип подписи ко всем иконкам на карте: Подпись – только подписи к иконкам. IP адрес – только IP адрес. Название элемента – название элемента (например, имя узла сети)Только состояние – только состояние (OK или Неувязка)Ничего — без отображения подписей к иконкам. Размещение подписи иконки.
Отображение подписей у иконки: По нижнему краю – под иконкой (снизу)По левой стороне – с левой стороны. По правой стороне – с правой стороны. По верхнему краю – над иконкой (сверху)Функции карты сети (функции частей карты сети)Эта страница предоставляет доступ к настройке иконок и связей на карте.
Настройка элемента карты. Эта страница предоставляет доступ к настройке 1- го элемента на карте.
Добавление элемента на карту может быть с помощью кнопки “+” справа от надписи Элемент. Аналогично удаление элемента карты — “–” справа от надписи Элемент. Атрибуты элемента карты. Тип. Тип элемента: Узел сети – иконка, отображающая состояние всех триггеров у избранного узла сети.
Карта – иконка, отображающая состояние всех частей на карте. Триггер – иконка, отображающая состояние 1- го триггера. Группа узлов сети – иконка, отображающая состояние всех триггеров у избранной группы узлов сети. Изображение – только иконка без связи с каким либо ресурсом. Подпись. Подпись к иконке, непринципиально какая строка. Макросы и многострочные строки могут быть использованы в подписях начиная с версии 1.
Размещение подписи. Размещение подписи: По умолчанию – размещение по умолчанию для карты. По нижнему краю – снизу (под иконкой)По левой стороне – с левой стороны. По правой стороне – с правой стороны. По верхнему краю – сверху (над иконкой)Узел сети. Будет использовано состояние всех триггеров обозначенного узла сети. Карта сети. Будет использовано состояние всех частей обозначенной карты сети.
Триггер. Будет употребляться состояние триггеров. Группа узлов сети. Состояние всех триггеров в обозначенной группе узлов сети.
Иконка (по умолчанию)Используемая иконка для всех состояний. Использовать расширенные иконки. Включение возможности указать иконку для каждого типа состояния элемента. Иконка (ok)Используемая иконка, если заморочек нет. Иконка (неувязка)Используемая иконка, если имеются трудности (одна или более). Иконка (неясно)Используемая иконка, если имеются трудности (одна или более). Иконка (сервис)Используемая иконка, если избранный узел находится в обслуживании.
Иконка (отключен)Используемая иконка, если избранный узел сети отключен. Координата XКоордината X элемента карты. Только отображение инфы, перемещение элемента по карте способом Drag and Drop. Координата YКоордината Y элемента карты. Только отображение инфы, перемещение элемента по карте способом Drag and Drop. URLЕсли установлено, то URL ссылка будет использована при нажатии пользователем на элементе карте. Настройка связи. Добавление связи для 2- ух частей на карте может быть с помощью кнопки + справа от надписи Связь.
Аналогично удаление элемента карты — кнопка - справа от надписи Связь. Заметьте, чтобы добавить связь меж 2- мя элементами на карте нужно сначала их выбрать с помощью левой кнопки мыши и кнопки Shift (или Ctrl)! Атрибуты связи на карте. Подпись. Подпись к полосы связи меж элементами на карте. Элемент 1. 1- ый элемент карты, которого соединяет связь. Элемент 2. 2- ой элемент карты, которого соединяет связь.
Индикаторы связи. Список триггеров, соединенных с этой связью. В случае если у триггера состояние Неувязка, тогда соответствующий стиль применяется для полосы связи.
Тип (OK)Стиль связи по умолчанию: Линия – одиночная линия. Жирная линия – жирная линия. Точечная линия – точечная линия. Пунктирная линия – пунктирная линия. Цвет (OK)Цвет связи по умолчанию.– Карты сети – Сделать карту сети,там все понятно, дадим наименования,поменяем размеры (6.
Выбираем нашу сделанную карту и добавляем тут наши точки. Похожие статьи. Сети для самых маленьких Планирование. Статья расположена на хабре. Это 1- ая статья из серии «Сети для самых малеханьких». Мы с товарищем thegluck долго думали с чего начать: маршрутизация, VLAN’ы, настройка оборудования.
В конечном ит.. Мониторинг компьютерных систем,сетей и сетевых устройств. Для общего образования рассмотрим несколько приложения и может быть что- то подберем для себя. Cacti. Материал из Википедии — свободной энциклопедии. Cacti — open- source web- приложение, система позволяет.. Установка и настройка сервера на базе Debian. Эта статья не претендует на полный и расширенный howto, просто для собственного же удобства решил все свои заметки, записки соединить воедино и пользоваться как шпаргалкой, может быть будут вст.. Обычная настройка FTP сервера proftpd на Centos 5.
Рассмотрю простую настройку и установку, ftp- сервера proftpd, так как самого пакета в официальных репозиториях нету, то придется собирать из исходников или ищем изготовленный пакет. Вот здесь найд.. ipcalc калькулятор для расчета сетей.
Малая и комфортабельная утилитка по расчету сетевых адресов, все в цвете и отлично . Ставиться просто для хоть какого Debian based дистрибутива: $ aptitude install ipcalc.
Внедрение: ipcalc [options] ADD.. Нет комментариев.
Ваш будет первым!