Zabbix: создание элемента данных (item) для наблюдения за лог-файлом и добавление триггера
В продолжение статей о сервере мониторинга Zabbix – создадим новый элемент данных (item), который будет отслеживать файл лога. К нему – добавим триггер (trigger), который должен срабатывать при появлении определённой строки в файле.
Предполагается, что сервер установлен согласно статье CentOS: установка сервера мониторинга Zabbix, и к нему подключен для наблюдения хост, согласно статье Zabbix: настройка мониторинга — элементы данных (items), графики (graphs), шаблоны (teamplates).
Одно различие – проверки выполняются на локальном хосте.
Начнём с настройки zabbix-agent. Редактируем файл /etc/zabbix/zabbix_agentd.conf:
# устанавливаем в 1, что бы разрешить удалённое выполнение команд – потребуется в будущем для выполнения дейстий (actions)
EnableRemoteCommands=1 # включаем логгирование выполнения удалённых команд
LogRemoteCommands=1 # определяем агенту, какой IP адрес прослушивать для получения команд, указывается внешний IP
ListenIP=127.0.0.1 # задаём внешний IP сервера, с которого будут поступать команды на выполнение активных проверок
ServerActive=127.0.0.1 # задаём имя хоста, должно совпадать с полем Host name в конфигурации хоста на zabbix-сервере
Hostname=lms-teamcity # разрешаем запуск агента от пользователя root (можно попробовать и без этого)
AllowRoot=1
Последнюю опцию можно установить, например, в случае ошибок вида:
12503:20131008:131447.267 cannot stat '/home/teamcity/logs/limits-app.log': [13] Permission denied
12503:20131008:131447.267 Active check [log[“/home/teamcity/logs/limits-app.log”,”DEBUG”]] is not supported. Disabled.
Не забываем после каждого изменения в файле конфигурации zabbix-агента перезапустить его:
# service zabbix-agent restart
Shutting down Zabbix agent: [ OK ]
Starting Zabbix agent: [ OK ]
Проверяем лог-файл агента:
# tail /var/log/zabbix/zabbix_agentd.log
23011:20131009:105219.265 Got signal [signal:15(SIGTERM),sender_pid:9288,sender_uid:0,reason:0]. Exiting …
23010:20131009:105219.265 Got signal [signal:15(SIGTERM),sender_pid:9288,sender_uid:0,reason:0]. Exiting …
23008:20131009:105219.265 Got signal [signal:15(SIGTERM),sender_pid:9288,sender_uid:0,reason:0]. Exiting …
23008:20131009:105221.272 Zabbix Agent stopped. Zabbix 2.0.8 (revision 38017).
9302:20131009:105223.459 Starting Zabbix Agent [lms-teamcity]. Zabbix 2.0.8 (revision 38017).
9308:20131009:105223.462 agent #4 started [active checks]
9306:20131009:105223.463 agent #2 started [listener]
9307:20131009:105223.464 agent #3 started [listener]
9305:20131009:105223.464 agent #1 started [listener]
9304:20131009:105223.464 agent #0 started [collector]
Проверяем, под каким пользователем запустился агент:
# ps aux | grep zabbix_agent
root 9159 0.2 0.0 105440 1016 pts/10 S+ 10:50 0:00 less /var/log/zabbix/zabbix_agentd.log
root 9302 0.0 0.0 74364 1272 ? S 10:52 0:00 /usr/sbin/zabbix_agentd
root 9304 0.0 0.0 74364 1208 ? S 10:52 0:00 /usr/sbin/zabbix_agentd
root 9305 0.0 0.0 74364 1264 ? S 10:52 0:00 /usr/sbin/zabbix_agentd
root 9306 0.0 0.0 74364 1232 ? S 10:52 0:00 /usr/sbin/zabbix_agentd
root 9307 0.0 0.0 74364 1028 ? S 10:52 0:00 /usr/sbin/zabbix_agentd
root 9308 0.0 0.0 74364 1320 ? S 10:52 0:00 /usr/sbin/zabbix_agentd
root 9362 0.0 0.0 103240 860 pts/8 S+ 10:52 0:00 grep zabbix_agent
Переходим к настройке сервера.
В в разделе Configuration > Hosts напротив нужного хоста – нажимаем items:
Кликаем по Create item:
Заполняем поля:
Обязательно указать Type – Zabbix agent (active). Про активный тип проверок можно читать .
Key – ключ для элемента данных, подробно описаны . На примере проверки лог-файла – указываем путь/к/файлу,выражение,кодировка,количество_строк:
log[“/home/teamcity/logs/limits-app.log”]
Проверяется файл /home/teamcity/logs/limits-app.log. Можно указать выражение (regexp), кодировку и количество строк, передаваемых в секунду:
log[“/home/teamcity/logs/limits-app.log”,”ERROR”,”UTF-8″,”100″]
Что бы использовать только параметр “количество строк” – разделите пустые поля простыми запятыми, например:
log[“/home/teamcity/logs/limits-app.log”,,,”100″]
Type of information – Log
Остальные параметры опциональны.
Жмём Save, и переходим к созданию триггера (trigger), который будет срабатывать на этот элемент данных (item).
Кликаем на triggers:
Кликаем на Create trigger:
Заполняем поле Имя (Name). Что бы упростить задачу создания триггера и связать его с только что созданным элементом данных – жмём на Add, в появившемся окне жмём Select и выбираем наш элемент:
Выбираем приложение, далее – выбираем Function – это уже само выражение, согласно которому будет срабатывать триггер.
Полученное выражение:
Find string V in last () value. N = 1 if found, 0 – otherwise{lms-teamcity:log[“/home/teamcity/logs/limits-app.log”].str(ERROR)}=1
Логика такая: “Найти строку V в последних полученных данных от элемента lms-teamcity:log[“/home/teamcity/logs/limits-app.log”], если строка присутствует (N = 1, т.е. found) – то триггер срабатывает, и переходит в статус PROBLEM”.
1 – found
0 – otherwise
Что бы проверить как срабатывает выражение – жмём Expression constructor:
Жмём Test:
Выбираем Value = 0 (т.е. string (ERROR) не найдена), жмём Test и получаем результат FALSE – т.е. триггер не сработает или перейдёт в состояние OK, если перед этим был в PROBLEM.
Меняем Value = 1 (т.е. в последних полученных данных слово ERROR найдено) – и получаем результат TRUE:
Необходимо учитывать, что слова в выражении чувствительны к регистру.
Полный список функций для триггеров доступен и .
Сохраняем триггер, убеждаемся что он готов к работе:
Если есть ошибка “Trigger just added. No status update so far.” – попробуйте подождать 5 минут, либо – перейдите в редактирование триггера и без каких-либо изменений – и нажмите Save ещё раз. И, конечно же, не забывайте проверять логи агента (/var/log/zabbix/zabbix_agentd.log) и сервера (/var/log/zabbix/zabbix_server.log).
Переходим в Monitoring > Events, и наблюдаем как срабатывает триггер:
В следующий раз мы создадим Action (Действие), которое должно будет выполняться при срабатывании триггера. Это может быть либо выполнение команды/скрипта на наблюдаемом хосте, либо отправка письма-отчета о срабатывании.
Источник: https://rtfm.co.ua/zabbix-sozdanie-elementa-dannyx-item-dlya-nablyudeniya-za-log-fajlom-i-dobavlenie-triggera/
Обзор системы мониторинга Zabbix
Zabbix создан для мониторинга и отслеживания статусов разнообразных сервисов компьютерной сети, серверов и сетевого оборудования. Это открытое решение распределенного мониторинга корпоративного класса, предоставляющее возможность проводить мониторинг многочисленных параметров сети а также состояния и работоспособности серверов.
Zabbix использует гибкий механизм уведомлений, что позволяет пользователям настраивать оповещения по почте практически для любого события. Это дает возможность быстро среагировать на возможные проблемы сервера. Система предлагает отличные возможности отчетности и визуализации данных, базируясь на собранных данных.
Система мониторинга поддерживает опрос данных и их получение. Все отчеты и статистика Zabbix, также как и параметры настроек, доступны через веб-интерфейс. Веб-интерфейс отслеживает состояние сети и жизнедеятельность серверов, а также дает возможность оценивать их работоспособность из любого места.
Хорошо настроенный Zabbix может играть важную роль в мониторинге ИТ инфраструктуры. По мере ознакомления с Zabbix, становилось очевидным то, что это отличная система контроля, которая достаточно проста в использовании (при грамотно отлаженном интерфейсе) однако, крайне полезна для крупных компаний с множеством серверов.
Обзор системы В основе развития Zabbix были поставленные такие задачи как простота работы на пользовательском уровне, использование малой части вычислительных ресурсов насколько это возможно, при этом обеспечивать быструю реакцию и документировать каждый аспект программного обеспечения.
Zabbix предоставляет возможность эффективного и надежного мониторинга распределенной IT инфраструктуры. Настройку всей распределенной установки можно выполнить из одного места, а именно через общий веб-интерфейс. Zabbix поддерживает вплоть до 1000 Нод в режиме распределенной установки. Каждая Нода отвечает за мониторинг своей собственной территории.
Нода может быть настроена локально и через Мастер Ноду, которая имеет копию конфигурационных данных всех Дочерних Нод. Настройку Дочерних Нод можно осуществить в режиме оффлайн, т.е. при отсутствии связи между Мастер и Дочерней Нодой. Иерархическое представление распределенного мониторинга позволяет иметь древовидную структуру Нод.
Каждая Нода пересылает необходимую информацию только своей Мастер Ноде. Все Ноды могут работать даже в случае проблем со связью. История собранных данных и событий хранится локально. Когда связь восстанавливается, тогда Дочерние Ноды будут выборочно отправлять данные Мастер Ноде.
Новые Ноды могут быть прикреплены к или откреплены от распределенной установки Zabbix без какой либо потери их функциональности. При этом нет необходимости перезапускать какую либо Ноду. Каждая Нода имеет свои собственные настройки и работает как обычный Zabbix сервер.
Структура Zabbix
Zabbix сервер – это ядро программного обеспечения. Сервер может удаленно проверять сетевые сервисы, является хранилищем, в котором хранятся все конфигурационные, статистические и оперативные данные, и он является тем субъектом в программном обеспечении Zabbix, который оповестит администраторов в случае возникновения проблем с любым контролируемым оборудованием. Zabbix прокси – собирает данные о производительности и доступности от имени Zabbix сервера. Все собранные данные заносятся в буфер на локальном уровне и передаются Zabbix серверу, к которому принадлежит прокси-сервер. Zabbix прокси является идеальным решением для централизованного удаленного мониторинга мест, филиалов, сетей, не имеющих локальных администраторов. Он может быть также использован для распределения нагрузки одного сервера. В этом случае, прокси только собирает данные, тем самым на сервер ложится меньшая нагрузка на ЦПУ и на ввод/вывод диска. Zabbix агент – контроль локальных ресурсов и приложений (таких как жесткие диски, память, статистика процессора и т.д.) на сетевых системах, эти системы должны работать с запущенным Zabbix агентом. Агенты являются чрезвычайно эффективными из-за использования родных системных вызовов для сбора информации о статистике. Веб-интерфейс – интерфейс является частью Zabbix сервера, и, как правило (но не обязательно), запущен на одном физическом сервере, что один Zabbix сервер. Работает на PHP, требует веб сервер.
Возможности
-Распределенный мониторинг вплоть до 1000 узлов. Конфигурация младших узлов полностью контролируется старшими узлами, находящихся на более высоком уровне иерархии. -Сценарии на основе мониторинга -Автоматическое обнаружение -Централизованный мониторинг лог-файлов -Веб-интерфейс для администрирования и настройки -Отчетность и тенденции -SLA мониторинг -Поддержка высокопроизводительных агентов (zabbix-agent) практически для всех платформ -Комплексная реакция на события -Поддержка SNMP v1, 2, 3 -Расширение за счет выполнения внешних программ -Гибкая система шаблонов и групп -Возможность создавать карты сетей
Мониторинг
-Сервер и агент следят за размером наблюдаемого журнала и временем последнего изменения (для logrt) в двух счетчиках. -Агент начинает читать лог-файл с той позиции, в которой он остановился последний раз. -Количество уже проанализированных данных (счетчик размера) и время последнего изменения (счетчик времени) хранятся в базе данных Zabbix и отправляются агенту, чтобы указать ему с какой именно позиции следует начинать читать лог-файл. -Всякий раз, когда лог-файл становится меньше, чем известное агенту значение счетчика размера, счетчик обнуляется и агент начинает читать лог-файл с самого начала, принимая во внимание счетчик времени. -Все файлы, соответствующие формату имени файла в соответствующей папке, анализируются каждый цикл и агент пытается получить следующую строку из лог-файла (для logrt). -Если в папке существует несколько соответствующих файлов с тем же временем последнего изменения, то агент будет лексикографически читать наименьший из этих файлов. -Zabbix агент обрабатывает новые записи лог-файла один раз на Период обновления в секундах. -Zabbix агент отправляет не более чем maxlines записей из лог-файла в секунду. Это ограничение предотвращает перегрузку сети и ресурсов процессора и переопределяет значение по умолчанию предусмотренное параметром MaxLinesPerSecond в файле настроек агента. -Специальное примечание для разделителей пути “”: если формат файла представлен как “file.log”, тогда там не должно быть папки “file”, поскольку невозможно однозначно определить, экранируется ли это символ ”.” или это первый символ в имени файла.
Цели, установка, настройки
Итак, сымитируем ситуацию для дальнейшей установки Zabbix. Имеется компьютер с FreeBSD, на котором кроме всего прочего, развернуты Веб-сервер Apache и север баз данных MySQL. На этот компьютер будет установлена серверная часть Zabbix, состоящая из сервера, Веб-интерфейса и агента, предназначенного для наблюдения за состоянием этого сервера. Для хранения базы данных Zabbix будет использоваться сервер MySQL.
Установка и настройка сервера Zabbix
Установку сервера Zabbix необходимо выполнить из портов: -cd /usr/ports/net-mgmt/zabbix-server -make config install clean В окне конфигурации следует убрать все лишние опции. Достаточно опций [X] MYSQL Use MySQL backend и [X] FPING Use fping for pinging hosts.
После завершения установки нужно создать базу данных zabbix и пользователя zabbix для работы с этой базой данных, запустив клиент MySQL командой mysql -u -p, введя пароль и выполнив следующие команды: -CREATE DATABASE zabbix CHARACTER SET utf8; -GRANT ALL PRIVILEGES ON zabbix.
* TO zabbix@localhost IDENTIFIED BY 'zabbix'; -FLUSH PRIVILEGES; После закрытия клиента MySQL следует создать и инициализировать таблицы базы данных zabbix, выполнив следующие команды: -cd /usr/local/share/zabbix/server/create -cat schema/mysql.sql data/data.sql data/images_mysql.
sql | mysql -u -p zabbix По умолчанию конфигурация сервера Zabbix хранится в файле /usr/local/etc/zabbix/zabbix_server.conf, однако, данный файл не создается во время установки. Вместо него предлагается заготовка zabbix_server.conf.sample. Достаточно создать ее копию с именем zabbix_server.conf: -cd /usr/local/etc/zabbix -cp zabbix_server.conf.sample zabbix_server.
conf На начальном этапе настройки необходимо и достаточно задать в данном файле параметры доступа к базе данных и местонахождение утилиты fping: -DBName=zabbix -DBUser=zabbix -DBPassword=zabbix -FpingLocation=/usr/local/sbin/fping Количество poller (процесса, предназначенного для сбора значений элементов данных, полученных агентами Zabbix) и trapper (процесса, предназначенных для приема результатов активных проверок, выполняемых агентами Zabbix) зависит от количества компьютеров и сетевых устройств (точнее – от количества элементов данных, связанных с компьютерами и сетевыми устройствами), за состоянием которых предполагается наблюдать. Увеличение количества poller и trapper повышает “параллельность” взаимодействия с агентами (производительность), но требует большее количество системных ресурсов, следовательно, необходимо находиться в балансе или просто пропорционально соответствовать количеством сетевых элементов ресурсам. Для тог, чтобы сервер Zabbix запускался при запуске операционной системы, необходимо добавить в файл /etc/rc.conf следующую строку: zabbix_server_enable=”YES” На этом начальная настройка сервера Zabbix завершается. Можно запустить сервер командой /usr/local/etc/rc.d/zabbix_server start, а затем выяснить его состояние командой /usr/local/etc/rc.d/zabbix_server status. Сообщение zabbix_server is running as pid …, является признаком того, что сервер запустился и работает, а сообщение zabbix_server is not running свидетельствует о возникновении ошибок запуска сервера. К сожалению на практике пользовательского уровня с большим трудом можно оценить плюсы и различные «бонусы» сетевого мониторинга zabbix из-за множества встречающихся сложностей при установке сервера и его настройках, например, при банальном отказе запуска сервера по причине нехватки памяти и т.д. Установку Веб-интерфеса Zabbix необходимо выполнить из портов: cd /usr/ports/net-mgmt/zabbix-frontend make config install clean В окне конфигурации нужно выбрать опцию [X] MYSQL Use MySQL backend (выбрана по умолчанию). После завершения установки следует добавить в файл конфигурации нужного виртуального хоста Веб-сервера Apache следующие строки: -Alias /zabbix /usr/local/www/zabbix – -AllowOverride All -Order deny,allow -Deny from all -Allow from … -Allow from … После изменения конфигурации виртуального хоста и перезапуска Веб-сервера Apache командой apachectl graceful нужно открыть в браузере URL http://host.company.com/zabbix (однако,host.company.com, необходимо заменить на имя выбранного виртуального хоста(stason)), при этом далее произойдет переход к настройке Веб-интерфейса Zabbix. Процесс настройки состоит из 8 этапов, во время которых придется согласиться с лицензионным соглашением, установить ограничения системных ресурсов интерпретатора PHP, достаточные для работы Веб-интерфейса Zabbix, а также указать параметры доступа к базе данных zabbix и к серверу Zabbix. В конце качаем предложенный файл конфигурации zabbix.conf.php и в папку /usr/local/www/zabbix/conf. По умолчанию для входа в Веб-интерфейс Zabbix необходимо использовать Login name admin и Password. Сразу после первого входа следует настроить профиль пользователя, перейдя по ссылке Profile в правом верхнем углу страницы. На открывшейся странице USER PROFILE : Zabbix Administrator необходимо нажать кнопку Password и задать новый пароль, а также изменить Language на RU.
Настройка отправки уведомлений по Email
Zabbix позволяет уведомлять пользователей о событиях посредством отправки сообщений по Email, через Jabber и с помощью GSM-модема, а также путем запуска произвольных скриптов. Я опишу только настройку отправки уведомлений по Email, которая включает в себя три этапа: -настройку средства передачи Email; -привязку средства передачи Email к профилю пользователя; -создание действия, обеспечивающего отправку уведомлений. Для настройки средства передачи Email необходимо зайти в раздел Администрирование » Типы средств передачи, а затем перейти по ссылке Email в столбце Описание. На открывшейся станице «настройки средств передачи» следует задать SMTP сервер, SMTP приветствие (приветствие, которое будет использоваться в SMTP-команде «HI») и SMTP адрес электронной почты (почтовый адрес отправителя сообщений): Для выполнения привязки средства передачи Email к профилю пользователя необходимо перейти на страницу «профиль пользователя»: Zabbix Administrator и нажать кнопку Добавить под списком Средства Передачи. В открывшемся окне Средство передачи нужно задать почтовый адрес получателя сообщений в поле Отправлять:
Добавление узлов сети
Автоматическое добавление узлов сети Благодаря встроенному механизму обнаружения, Zabbix позволяет организовать автоматическое добавление и удаление узлов сети. Рассмотрим добавление и удаление рабочих станций с Windows, на которые установлен агент Zabbix.
Для того, чтобы сервер Zabbix каждые полчаса сканировал заданный диапазон IP-адресов на наличие таких рабочих станций, добавлял найденные рабочие станции в группу узлов сети Windows Workstations и присоединял к ним шаблон Template_Windows, а также удалял из группы узлов сети Windows Workstations рабочие станции, которые не проявляют “признаки жизни” в течении предопределенного интервала времени, необходимо создать: правило обнаружения; действие, обеспечивающее добавление узлов сети; действие, обеспечивающее удаление узлов сети. Для создания действия, обеспечивающего добавление узлов сети, необходимо зайти в раздел Настройка » Действия, выбрать в выпадающем списке Событие значение Обнаружение и нажать кнопку Создать действие. На открывшейся странице «настройка действий» следует задать в поле Имя произвольное имя действия, удалить текст, содержащийся в полях Тема по умолчанию и Сообщение по умолчанию, а также задать условия действия и выполняемые операции. Для добавления условий нужно нажимать кнопку Новый, задавать в полях ввода формы Новая операция соответствующие значения и нажимать кнопку Добавить. Для добавления операций необходимо нажимать кнопку Новый, задавать в полях формы Изменить операцию соответствующие значения и нажимать кнопку Добавить. Добавить в группу “Windows Workstations” и Соединить с шаблоном “Template_Windows”. После внесения всех изменений страница «настройка действий» выглядит примерно так:
Вывод
Исследуя Zabbix, я пришел к выводу, что это очень интересная и полезная система мониторинга, которая позволяет, не только постоянно «наблюдать» за сетью и ее пользователями, но и оперативно обнаруживать сбои в работе сетевых серверов.
Zabbix значительно упрощает работу системного администратора крупной компании, дает возможность контролировать внутренние сетевые процессы, а также быстро реагировать на возможные угрозы неисправностей.
Разумеется, я не в силах полностью изучить zabbix, потому что не имею достаточных средств и возможностей конструировать полноценную сеть, контролируемую данной системой мониторинга.
Однако имея возможность скачать виртуальную модель частично работающего zabbix`a я ознакомился с начальными опциями, настройками и экспериментировал. Я уверен, что система мониторинга необходима для полноценной и «здоровой» работы крупного предприятия или компании, Zabbix прекрасно для этого подходит.
Источник: http://anton-lebedev.blogspot.com/2011/03/zabbix_19.html
Архивы Zabbix – Администрирование
02 Ноя
Мониторить антивирус — дело хорошее, тем более когда на всё написано до нас.
Для настройки данного powershell скрипта скопируем его на сервер и в конфигурационном файле агента допишем: UserParameter=ksc[*], powershell -NoProfile -ExecutionPolicy «RemoteSigned» -File «C:pathksc.
ps1» -Username «username» -Userpass «_password_» -UserDomain «MYDOMAIN» -Action «$1» -ObjectType «$2» -Key «$3» -Id «$4» Теперь отредактируем скрипт. Ищем строчку Set-Variable […]
18 Июл
Мониторинг служб Для мониторинга служб нужно использовать две команды. service_state[MSSQLSERVER] для windows proc.num[smbd] для linux Примеры триггеров, когда не доступна служба: {service:service_state[MSSQLSERVER].last()}0 {service:proc.num[smbd].
last()}=0 Мониторинг логов Windows Получим данные eventlog[«Microsoft-Windows-Backup»,,,] весь лог Примеры триггеров {Windows AD SEC:eventlog[«Microsoft-Windows-Backup»,,,].iregexp(«завершилась сбоем»)}=1 ошибка бэкапа {Windows AD SEC:eventlog[«Microsoft-Windows-Backup»,,,].
logeventid(19)}=1 ошибка №19 (диск для копии не доступен) {Windows AD SEC:eventlog[«Microsoft-Windows-Backup»,,,].iregexp(«завершилась сбоем»)}=0 — успех
07 Апр
Для работы этих данных нужно в конфиг файл zabbix-agent добавить: UserParameter=net.if.discovery,ifconfig | awk ‘ BEGIN { print «{»data»:[» }/^[a-z0-9]+:/ { gsub(/:/,»»,$ 1); if ( $ 1 != «lo0» ) print «{ »{#IFNAME}»:»» $ 1″» },» } END { print «{ »{#IFNAME}»:»lo0»}
]}» } ‘ Теперь осталось перезагрузить zabbix-agent
23 Янв
Сегодня рассмотрим мониторинг картриджей принтера по SNMP на примере HP LaserJet CP1525N. Создадим черный картридж. Сначала создадим элемент данных как на скриншоте (нажмите для увеличения). Что же такое SNMP OID и где его взять? На сервере Zabbix введите команду: snmpwalk -v 1 -c public Где -v 1 — версия протокола. Данная команда […]
07 Ноя
Для начала сделаем бэкап старых данных. Для этого выполним команду: mysqldump —user=»имя_пользователя» —password=»пароль» zabbix | gzip > ~/zabbix.sql.gz Теперь можно приступить к установке.
На новом сервере выполним: sudo apt-get update; sudo apt-get upgrade; sudo apt-get install zabbix-frontend-php zabbix-agent zabbix-server-mysql apache2 php-mbstring libapache2-mod-php gzip php-mysql Придумываем пароль (пусть будет ‘Your.Password.
Here’) и введем его в файл /etc/zabbix/zabbix_server.conf […]
01 Сен
Автомитизируемый клиент будет состоять из zabbix агента, GSmartControl для контроля дисков и логирования установки. Скрипт установки. net use K: \192.168.XX.
XXmonitor mkdir C:zabbix mkdir C:»Program Files»GSmartControl copy K:zabbix C:zabbix copy K:GSmartControl C:»Program Files»GSmartControl echo —————————————————— >> K:install.
log set host=%COMPUTERNAME% installed, add this pc to Zabbix! echo %host% >> K:install.log set name=%COMPUTERNAME% echo Hostname=%name% >> C:zabbixzabbix_agentd.conf echo […]
24 Авг
Для мониторинга в ОС Windows нужно сделать несколько вещей. 1) Установить ПО gsmartcontrol 2) Настроить Zabbix Agent, добавив строчку в zabbix_agentd.
conf: UserParameter=HDD[*],@echo off && for /F «Tokens=10″ %A In (‘C»:Program Files (x86)GSmartControlsmartctl.
exe» -A /dev/$1 ^| find /I «$2″‘) Do echo %A 3) Перезапустить Zabbix командами: net stop «Zabbix Agent» net start «Zabbix Agent» 4) создать […]
23 Авг
В первую очередь нужно установить софт. apt-get install smarttools После установки можно посмотреть состояние диска командой: smartctl —all /dev/sda Выполнив данную команду вы увидите таблицу с параметрами.
Нам важны четыре столбца: ATTRIBUTE_NAME (Имя атрибута), VALUE (текущее значение), THRESH (критическое значение) и RAW_VALUE.
Если VALUE стало меньше THRESH в случае Pre-fail атрибута — существует большая вероятность, […]
23 Авг
В первую очередь нужно установить необходимое программное обеспечение. apt-get install lm_sensors hddtemp Измерение температуры CPU. Запустим сенсоры.
secsors-detect; systemctl start sensors Теперь можно добавить данные в Zabbix, открыв файл /etc/zabbix/zabbix_agentd.conf. В конце файла дописать строчку. UserParameter=sensor.
cpu_temp,sensors|grep ‘temp2:’|cut -c16-17 Далее в Web-Интерфейсе Zabbix нужно добавить новый «Элемент данных». Его содержимое такого: Name — CPU temp Key […]
06 Июл
Отрывка нет, потому что запись защищена.
Источник: http://antonchirkov.ru/category/zabbix/
Устанавливаем систему мониторинга zabbix
Итак, поговорив немного о возможностях системы мониторинга zabbix, приступим теперь к её установке. Как уже было сказано, есть сервер и есть агенты.
Естественно, машина-сервер может (и должна!) мониторить сама себя, поэтому с неё и начнём.КомпиляцияПоследней стабильной версией zabbix на данный момент является zabbix-1.4.
5. Скачиваем её и начинаем установку:
wget http://prdownloads.sourceforge.net/zabbix/zabbix-1.4.5.tar.gz?download
tar xfz zabbix-1.4.5.tar.gz
cd zabbix ./configure –with-mysql –without-pgsql –enable-agent –enable-server –with-libcurl –with-net-snmp make
make install
Собственно, всё. Для конфигурации необходимо разрешить сборку агента (–enable-agent), сервера (–enable-server) и выбрать используемую базу данных (для MySQL – –with-mysql –without-pgsql). Также подключаем использование библиотек curl и net-snmp. Для клиентских машин нужно будет собирать только агента (без сервера).
Для любителей собирать RPMы в исходниках в дистрибутиве zabbix есть соответствующие .spec-файлы. Их можно использовать с помощью команды
rpmbuild -ba имя_файла.spec
Начальная настройка
Для нормальной работы необходимо создать пользователя zabbix:
useradd zabbix
Домашний каталог и пароль для этого пользователя не нужен. От его имени будут работать как сервер, так агент, поэтому для осуществления некоторых проверок этому пользователю понадобятся дополнительные права. Для этого можно будет включать его в разные группы, но это на первых порах необязательно.
При необходимости, в каталоге misc дистрибутива есть примеры конфигурационных файлов, а также стартовых скриптов для запуска агента и сервера под несколько популярных операционных систем: debian, fedora, freebsd, gentoo, redhat, suse, tru64.
Начальная конфигурация сервера
Конфигурируем базу данных. Для MySQL это делается так: сначала создаём базу в phpMyAdmin или в командной строке mysql. Даём на базу необходимые права (при необходимости создаём пользователя, ну например, zabbix). Далее, необходимо заполнить базу:
cat create/schema/mysql.sql | mysql zabbix
cat create/data/data.sql | mysql zabbix
cat create/data/images_mysql.sql | mysql zabbix
Все параметры базы данных нужно записать в конфиг сервера zabbix_server.conf:
DBHost=localhost
DBName=zabbix DBUser=root
DBPassword=
Остальные параметры могут понадобиться для улучшения производительности. Для первоначальной конфигурации указанных достаточно. После этого можно начинать пытаться запустить сервер командой
zabbix_server
Как правило, сервер запускается и форкает несколько дочерних процессов. В случае неудачи стоит посмотреть лог-файл – в нём подробно будут указана причина.
Довольно часто сервер не может запуститься из-за очевидных, но регулярных “граблей”: не создан пользователь zabbix, нет прав на запись в лог-файл или в pid-файл, неправильные параметры подключения к базе данных. Думаю, их разрешение достаточно очевидно.
Начальная конфигурация агента
Агент zabbix может работать в двух режимах: обычном – как демон (zabbix_agentd) и через inetd (zabbix_agent). Конфигурация в обоих случаях одинаковая, различаются лишь конфигурационные файлы: zabbix_agentd.conf и zabbix_agent.conf.
Для работы агента необходимо всего лишь прописать в его конфигурационном файле IP-адрес сервера. По умолчанию параметр Server=127.0.0.1.
Иначе, агент не будет обслуживать запросы от “неизвестной” машины. Кроме того, необходимо убедиться, что лог-файл агента и pid-файл агента находятся в каталоге, который доступен для записи пользователю zabbix. Это может быть или каталог /tmp или /var/log/zabbix – при сборке zabbix в RPM указывается именно этот каталог.
Естественно, каталог должен быть и иметь соответствующие права.
Начальная конфигурация фронтенда
Для управления системой мониторинга и чтения данных используется PHP-фронтенд. Он может быть установлен как на той же машине, где работает zabbix-сервер, так и на другой – главное, чтобы был доступ к базе данных zabbix.
В любом случае, фронтенд требует для работы Web-сервер и интерпретатор PHP с поддержкой того типа баз данных, который вы выбрали. Фронтенд , как и сервер необходимо настроить на работу с базой данных.
Сначала нужно скопировать содержимое каталога frontends/php из дистрибутива в каталог htdocs вашего Web-сервера (или виртуального сервера).
При первом заходе на страницу запустится мастер, который шаг за шагом проверит возможности Web-сервера, инетрпретатора PHP и сконфигурирует подключение к базе данных (параметры подключения нужно указывать такие же, как у сервера zabbix). Для сохранения конфигурационного файла каталог conf и фал conf/zabbix.conf.php должны быть доступны на запись пользователю процесса Web-сервера.
После успешной установки фронтенда вы увидите экран входа в интерфейс управления системой мониторинга. Пользователь для входа по умолчанию admin без пароля. Войдя в систему, нужно сменить ему пароль, завести других пользователей и можно начать настраивать zabbix. Но об этом – уже в следующий раз.
Оригинал
Источник: http://system-administrators.info/?p=2278