Zabbix + communigate pro: low-level discovery и мониторинг аккаунтов

Настройка zabbix server для мониторинга ssl сертификатов

На самом деле, тут вам ничего настраивать не придется, потому что я уже все настроил и предлагаю скачать готовый шаблон. Он создан и протестирован на версии сервера 3.2. Скорее всего он будет работать практически на всех версиях, так как разработчики следят и стараются поддерживать совместимость шаблонов между версиями, за что им большое спасибо.

Ссылка на скачивание шаблона — ssl_cert_expiration.xml

Импортируйте этот шаблон себе на сервер.

Прикрепляйте этот шаблон к тому хосту, где вы настраивали скрипты и zabbix-agent. Дальше вам остается только подождать примерно 5 минут. Такой интервал установлен для автообнарудения.

Если вам не нужно мониторить за smtp хостами, то можете отключить smtp автообнаружение и оставить только https. После того, как отработает автообнаружение, в списке итемов вы увидите добавленные домены.

Еще примерно через 5 минут, вы получите информацию о сроке действия сертификатов указанных доменов.

В шаблоне настроен триггер, который срабатывает, если время жизни сертификата становится меньше 30-ти дней. В принципе, этот параметр можно уменьшить и до 10-ти дней. Сейчас продлить сертификат не составляет каких-то проблем. Так что можете этот параметр настраивать по своему желанию.

Я рекомендую отдельно настроить повторяющиеся уведомления для триггеров из текущего шаблона. Сделать интервал раз в день или через день. Сразу скорее всего не будешь заниматься обновлением, так как не срочно. А то, что отложено на потом легко забыть, что со мной не раз случалось.

Настройка мониторинга за процессами

На Zabbix сервере идем в стандартный шаблон Linux и добавляем туда 2 новых айтема:

  1. Process List — список процессов, ограниченный десятью с самой высокой нагрузкой на cpu. Сюда будем записывать информацию о процессах на сервере при срабатывании триггеров на повышенную нагрузку CPU.
  2. Full Process List — полный список всех процессов. Сюда запишем полный список всех процессов, когда сработает триггер на превышение максимально допустимого количества запущенных процессов на сервере.

Так выглядит первый айтем. Второй сделайте по аналогии.

Теперь идем на сервер с агентом и пробуем отправку данных в данный айтем. Для этого нам нужен будет zabbix_sender. Если у вас его нет, то установите.

# yum install zabbix-sender

Отправку данных проверяем следующим образом:

/usr/bin/zabbix_sender -c /etc/zabbix/zabbix_agentd.conf -k process.list -o "`ps aux --sort=-pcpu,+pmem | awk 'NR<=10'`"

Я не буду подробно останавливаться на формате запросов с помощью zabbix_sender. Все это хорошо описано в документации. Теперь идем в веб интерфейс сервера и в разделе Последние данные смотрим на список процессов, который нам пришел с целевого сервера.

Ровно то, что нам было нужно. То же самое можно проверить с айтемом Full Process List, убрав в команде | awk ‘NR<=10’ в конце.

Далее нам нужно создать действие, которое будет запускать данную команду на сервере при срабатывании триггеров. Для этого идем в раздел Настройка -> Действия и добавляем новое.

Сохраняйте действие и можно проверять.

Установка обновления zabbix 5.0 до 5.2

Centos 7, 8

Для начала проверим список установленных пакетов zabbix в системе. Их название может быть разным в зависимости от используемых репозиториев. К примеру, в centos 7 у пакетов может быть дополнение в виде scl к названию пакета.

Centos 7:

# rpm -qa | grep zabbix
zabbix-web-5.0.5-1.el7.noarch
zabbix-web-mysql-scl-5.0.5-1.el7.noarch
zabbix-agent-5.0.5-1.el7.x86_64
zabbix-web-deps-scl-5.0.5-1.el7.noarch
zabbix-apache-conf-scl-5.0.5-1.el7.noarch
zabbix-release-5.2-1.el7.noarch
zabbix-server-mysql-5.0.5-1.el7.x86_64

Centos 8:

# rpm -qa | grep zabbix
zabbix-server-mysql-5.0.5-1.el8.x86_64
zabbix-web-5.0.5-1.el8.noarch
zabbix-web-mysql-5.0.5-1.el8.noarch
zabbix-web-deps-5.0.5-1.el8.x86_64
zabbix-release-5.0-1.el8.noarch
zabbix-agent-5.0.5-1.el8.x86_64

Устанавливаем обновление zabbix на сервер Centos 8, выбирая установленные у вас пакеты:

# yum upgrade zabbix-web zabbix-web-mysql zabbix-server-mysql zabbix-agent

Для centos 7 будет такой список:

# yum upgrade zabbix-web zabbix-web-mysql-scl zabbix-agent zabbix-server-mysql

Обращаю внимание, что на момент написания данной статья, пакетов 5.2 для Centos 7 в репозиториях нет. В официальных инструкциях их тоже нет и не понятно, будут ли

Как только появятся, я дополню статью.

После завершения обновления, запускаем zabbix-server.

# systemctl start zabbix-server

Проверяем лог сервера. Необходимо дождаться обновления базы данных

Важно не трогать в этот момент сервер, не прерывать обновление, не пытаться его перезапустить. Если база большая, обновление может длиться очень долго

Рекомендую сначала где-то протестировать этот процесс, прежде чем обновлять прод.

# tail -f /var/log/zabbix/zabbix_server.log

В конце должны получить сообщение:

2860543:20201029:173036.441 completed 100% of database upgrade
2860543:20201029:173036.441 database upgrade fully completed

Есть ненулевой шанс, что будет какая-то ошибка с базой. Чаще всего возникают проблемы с какой-то нестандартной записью в таблице. Туда может попасть какой-то необычный символ, или с кодировкой проблемы. В этих случаях удаляйте проблемные записи, меняйте кодировку базы zabbix.

После обновления переходите в web интерфейс и проверяйте версию Zabbix. Должна быть 5.2.

На этом обновления Zabbix до 5.2 на Centos завершено.

Debian / Ubuntu

Устанавливаем само обновление zabbix на сервер с Debian или Ubuntu следующей командой:

# apt upgrade zabbix-agent zabbix-frontend-php zabbix-nginx-conf zabbix-server-mysql

После завершения обновления, запускаем сервер:

# systemctl start zabbix-server

В момент запуска произойдет обновление базы данных. Для маленькой базы (1-2 гб) это не займет много времени. Вы можете даже не заметить процесса. Если база больше, то надо подождать, пока не закончится обновление. Следить за ним можно с помощью просмотра лог файла zabbix сервера.

# tail -f /var/log/zabbix/zabbix_server.log

После завершения обновления базы, сервер запустится. После этого можно запустить и агент.

# systemctl start zabbix-agent

В логах агента и сервера можно посмотреть версию запущенных сервисов.

Starting Zabbix Agent . Zabbix 5.2.0 (revision bcf99fb248).
Starting Zabbix Server. Zabbix 5.2.0 (revision bcf99fb248).

Теперь можно идти в веб интерфейс и смотреть на обновленную версию zabbix server. Перед этим почистите кэш браузера и удалите куки от страницы заббикса. Если этого не сделать, то могут быть проблемы и ошибки, с чем я не раз сталкивался. Если у вас в качестве веб сервера используется nginx, не забудьте поменять владельца директории /etc/zabbix/web на nginx, в том случае, если веб сервер работает от него. После обновления он будет принадлежать apache, а web интерфейс не заработает.

# chown -R nginx:nginx /etc/zabbix/web

Теперь можете лицезреть обновленную версию web интерфейса в браузере.

Меркурий 236

добрые людирешениеммодуль

UserParameter

UserParameterZabbix trapperВнешние проверки

Настроим получение наших метрик счетчика

  • Тип: Зависимый элемент данных
  • Основной элемент данных: mercury-get

jsonpath.com

  • Тип: Зависимый элемент данных
  • Основной элемент данных: mercury-get
  • будем использовать нотацию с квадратными скобками, так как в пути JSON есть дефис
  • препроцессинг может быть многошаговым, например здесь результата первого шага умножим на 1000, чтобы получить Вт*ч из кВт*ч

Что получилось

здесь

  • переиспользовали хорошую программку и не тратили время на написание своей реализации сбора данных по протоколу Меркурий
  • UserParameter остался, но схлопнулся до простого вызова. По сути можно даже использовать
  • cкрипты-обертки тоже не писали. Всё распарсили через JSON path в шаблоне
  • cчетчик не мучали сильно, один запрос – все нужные нам данные разом.

Linux

Zabbix SIA поставляет официальные RPM и DEB пакеты для Red Hat Enterprise Linux, Debian и Ubuntu LTS. Файлы пакетов доступны по адресу http://repo.zabbix.com. Репозитории yum и apt также доступны на сервере.

Для CentOS 6.7:rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
yum install zabbix-agent
cd /etc/zabbix/
cp zabbix_agentd.conf zabbix_agentd.conf.orig

Редактируем zabbix_agentd.conf:

  1. Server=zabbix.example.net # IP addresses (or hostnames) of Zabbix servers
  2. !!! Hostname=cz394 # Должно совпадать с Host name указанном на Zabbix servers. Используйте Visible name (на Zabbix server) для написания удобочитаемых названий ваших серверов.

  3. ServerActive=zabbix.example.net # IP:port (or hostname:port) pairs of Zabbix servers for active checks

Стартуем агента/etc/init.d/zabbix-agent start

Zabbix 3.0 for Debian 8:wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/
zabbix-release_3.0-1+jessie_all.deb
 
dpkg -i zabbix-release_3.0-1+jessie_all.deb
aptitude update
aptitude install zabbix-agent

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Техноарена
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: