Установка системы мониторинга Zabbix в CentOS 6

logomerge

Введение

Когда ИТ-инфраструктура организации достигает определенных масштабов, часто возникает необходимость постоянного наблюдения за работой наиболее важных узлов в сети предприятия. На сегодня существуют самые различные системы подобного класса от разных разработчиков. Об разворачивании одной из таких систем мониторинга и пойдет речь. Ниже представлена пошаговая инструкция по установке системы Zabbix на базе сервера под управлением ОС CentOS.

Текст статьи подразумевает наличие базовых знаний и навыков у читателя в области установки и работы с операционными системами семейства Linux. Ввиду этого, также опущен процесс инсталляции ОС. Отмечу лишь, что в данном примере был использован дистрибутив Centos 6.7 i386 в поставке «minimal».

Далее, применительно к описываемой системе, по тексту подразумевается следующее:

имеется предварительно настроенный доступ к сети интернет
команды в консоли выполняются пользователем root
(если не указано обратное)

Приступим к делу.


Содержание

Установка репозитория EPEL и необходимых пакетов
Настройка сервера баз данных — MySQL
Правка конфигурационных файлов служб Zabbix
Запуск и проверка сервера Zabbix
Настройка автоматического запуска служб при старте системы
Установка агента Zabbix на отслеживаемые узлы сети
Пример настройки элемента данных Простая проверка
Использованные источники

 

Установка репозитория EPEL и необходимых пакетов

Наиболее удобным и быстрым можно считать способ установки бинарных пакетов zabbix из репозитория EPEL, для чего достаточно установить релиз-пакет из CentOS Extras. Этим и займемся.

После установки системы и перед продолжением работы, рекомендуется обновить yum:

yum update yum

после чего установим релиз epel:

yum install epel-release

и наконец все пакеты, необходимые для работы сервера Zabbix:

yum install mysql-server zabbix22-server-mysql zabbix22-web-mysql zabbix22-agent

Как обычно подтверждаем все действия (клавиша «y», Enter, или добавьте в конце каждой строки ключ -y).

Здесь пока все, перейдем к серверу баз данных.

 

Настройка сервера баз данных — MySQL

Запустим сервер БД и начальную «безопасную настройку»

service mysqld start

mysql_secure_installation

Тут на одном из шагов будет запрошен пароль для пользователя root сервера MySQL — в первый раз просто нажмите enter (после уведомления: «Enter current password for root (enter for none):»).

Позже вводите внимательно ваш новый пароль и не забывайте его!

По окончании процедуры настройки (подтверждаем умолчания отмеченные как [Y/n]), входим в консоль mysql с новым паролем для root:

mysql -u root -p

в консоли mysql выполняем следующие команды
(«mysql>» — это текст заголовка, набирать его не нужно; вместо ‘password’ – ваш пароль для пользователя zabbix):

mysql> create database zabbix character set utf8;

mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'password';

mysql> flush privileges;

mysql> quit

После возврата в консоль оболочки (bash) делаем импорт начальной схемы и данных:

mysql -u zabbix -p zabbix < /usr/share/zabbix-mysql/schema.sql

mysql -u zabbix -p zabbix < /usr/share/zabbix-mysql/images.sql

mysql -u zabbix -p zabbix < /usr/share/zabbix-mysql/data.sql

 

Правка конфигурационных файлов служб Zabbix

Базовый файл конфигурации Zabbix

Выполним базовую настройку сервера Zabbix.
Откроем файл конфигурации в текстовом редакторе:

vi /etc/zabbix/zabbix_server.conf

Переведите редактор vi в режим «вставки» клавишей I.
Найдите, раскомментируйте и установите значение для поля пароль вашего пользователя zabbix:

DBPassword=password

Убедитесь также, что указанные параметры соответствуют приведенным:

ListenPort=10051
StartTrappers=5

После этого сохраните файл (Esq, Shift+:, wq).

Файл настройки PHP

Откройте конфигурационный файл

vi /etc/php.ini

и приведите указанные параметры удовлетворяющими требованиям для системы zabbix:
(удалите символ ; — знак комментария перед теми строками параметров, где они встретятся)

max_execution_time = 300
max_input_time = 300
post_max_size = 18M
date.timezone = Europe/Moscow
memory_limit = 128M
upload_max_filesize = 2M

Сохраните изменения.

Правила для сетевого экрана IPTABLES

Установим правило, разрешающее входящие соединения на порт нашего web-сервера:

iptables -I INPUT -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT

сохраним новое правило для постоянного использования в iptables:

service iptables save

Параметры системы безопасности SeLinux

Данный компонент системы, по-умолчанию задействованный в системах на базе RedHat, как правило включен в свой максимально «секьюрный» режим, что может при такой конфигурации помешать работе собственного агента сервера, служащего для само-мониторинга в web-панели.

Для деактивации данной системы необходимо выполнить следующие действия.

vi /etc/selinux/config

исправьте параметр на значение указанное ниже:

SELINUX=permissive

Сохраните файл.

Такая настройка отключит блокировку процессов в Selinux — это, конечно не самый безопасный способ для некоторых критичных систем, но при этом самый быстрый. Для описания более тонкой «настройки» Selinux требуется отдельная статья, выходящая за рамки текущего текста.

Для временного отключения блокировок в текущем сеансе, можно выполнить еще одно действие:

echo 0 >/selinux/enforce

Хочу добавить еще одно небольшое дополнение, которое может пригодиться, если вы захотите задействовать в дальнейшем такой инструментарий в администрировании средств наблюдения, как встроенные функции так называемой «Простой проверки» — icmpping и аналогичные ей.

Чтобы иметь возможность «пинговать» серверы, на которые у вас нет возможности/прав устанавливать собственные программы (агенты), на сервер Zabbix должна быть установлена небольшая программа fping. В моем случае она уже была в системе, поэтому дальше опишу некоторые настройки, необходимые для корректной работы с ней системы Zabbix.

vi /etc/zabbix/zabbix_server.conf

FpingLocation=/usr/sbin/fping

chown root:zabbixsrv /usr/sbin/fping

chmod 4710 /usr/sbin/fping

(2 эти команды выше — именно в таком порядке)

После этого приступим к проверке работы сервера.

 

Запуск и проверка сервера Zabbix

В предыдущей части мы настроили все основные параметры системы связанные с сервером zabbix и компонентами, которые обеспечивают его работу. Теперь настало время первого запуска zabbix и проверки его работоспособности.

service httpd start

service zabbix-server start

Теперь откройте в адресной строке URL с главной страницей сервера:

http://ip_zabbix_server/zabbix

Пройдите по шагам первичной настройки веб-интерфейса:

zabbix-1st-start-1

zabbix-1st-start-2

zabbix-1st-start-3

zabbix-1st-start-4

zabbix-1st-start-5

zabbix-1st-start-6

 

Теперь можно сделать свой первый вход в административную панель:

Пользователь: Admin
Пароль (по-умолчанию после установки): zabbix

Если все в порядке, то должно быть как на скриншотах ниже:

zabbix-login1

zabbix-login2

 

Если есть какие-то нестыковки, то проверяем еще раз все конфигурационные файлы и параметры в них.

 

Настройка автоматического запуска служб при старте системы

Когда все проверено и работает, необходимо «прописать» автоматический запуск всех демонов, участвующих в нашей авантюре:

chkconfig zabbix-server on

chkconfig mysqld on

chkconfig httpd on

chkconfig zabbix-agent on

После этого завешающий аккорд:

reboot

После старта, все должно быть также бодро и соответствовать вашим лучшим ожиданиям.

 

Установка агента Zabbix на отслеживаемые узлы сети

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

Для примера рассмотрим пару простых случаев на базе ОС разных семейств.

Ubuntu 14.04.3 LTS

Устанавливаем агента

wget http://repo.zabbix.com/zabbix/2.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_2.2-1+trusty_all.deb

dpkg -i zabbix-release_2.2-1+trusty_all.deb

apt-get update

apt-get install zabbix-agent

Правим конфиг

vi /etc/zabbix/zabbix_agentd.conf

Server=192.168.10.150
Hostname=fileserver

Сохраняем файл.

Добавляем агента в авто-запуск при старте сервера:

sysv-rc-conf --level 2345 zabbix-agent on

Добавляем новый агент в базу мониторинга:

zabbix-agent-setup-linux

Нажимаем кнопку «сохранить».

Windows XP

Для установки агента перейдем на страницу загрузки и скачаем нужный бинарный файл:

http://www.zabbix.com/ru/download.php

В моем случае это zabbix_agents_2.2.9.win.zip . Распаковываем его в C:\Program Files

Изменим пару параметров в файле конфигурации (для этой цели рекомендую Notepad++):

C:\Program Files\zabbix_agents_2.2.9.win\conf\zabbix_agentd.win.conf

Server=192.168.10.150
Hostname=WinXP1

Сохраням файл.

Пара слов о параметре Hostname. В том случае, если вам нужно, чтобы агент передавал «системное» hostname серверу Zabbix, то необходимо закомментировать параметр Hostname= поставив перед ним знак #.

Запускаем командную строку Windows (cmd) и переходим в каталог с исполняемыми файлами и выполняем установку агента с нашим zabbix-agentd.win.conf
(от имени администратора):

cd C:\Program Files\zabbix_agents_2.2.9.win\bin\win32\
zabbix_agentd.exe –config "C:\ProgramFiles\zabbix_agents_2.2.9.win\conf\zabbix_agentd.win.conf" --install

cmd-win

Далее добавляем исполняемый файл агента в исключения брандмауэра Windows:

firewall-win3

Запускаем службу агента через соответствующую оснастку:

sevices-win

Настало время добавить агент в базу мониторинга. Заходим в раздел «Узлы сети» и добавляем наш новый хост.

 

zabbix-agent-setup-windows-xp

Для определенных разновидностей ОС можно также добавить специальные группы. В таком случае, при добавлении нового хоста, не забудьте проверить, что в его настройках присутствует нужный шаблон, такой например, как «Template OS Windows».

host-template

Если же вам вместо подробного мониторинга параметров сервера достаточно стандартного отслеживания по ICMP-echo, то вам вполне хватит возможностей шаблона «Template ICMP Ping».

 

Пример настройки элемента данных Простая проверка

Немного ликбеза насчет метода «Простой проверки» и ее настройки для работы по протоколу ICMP.
Простая проверка, это тот способ отслеживания удаленного сервера, когда у вас отсутствует возможность установки своего ПО на стороне сервера (виртуального хостинга и т.п.), еще они называются «безагентными».

Ранее, я описал выше небольшую настройку на стороне сервера, заключавшейся в выставлении корректных прав, при которых возможно функционирование утилиты fping не от имени root (есть ограничения).
Данная утилита, не являясь компонентом сервера Zabbix, используется им при этом для выполнения «простой проверки» через функции icmpping.

Для настройки такой проверки, после создания нового «узла сети», перейдите в меню настройки «элементы данных» для текущего узла и выберите в поле «Тип» вариант «Простая проверка», а поле «ключ» внесите значение:

icmpping[,1,1000,56,500]

После этого, если все прочие параметры ниже в таблице вас устраивают, нажмите «сохранить» в этом же окне, в подвале страницы.

data-element-add2

Данные числовые значения представляют из себя аргументы для упомянутой команды fping:

sudo -u zabbixsrv fping -C 1 -p 1000 -b 56 -t 500 ya.ru

где: -C 1 = кол-во отправляемых пакетов; -p 1000 = интервал с миллисекундах; -b 56 = размер пакета в Байтах;
-t 500 = время таймаута ожидания ответа в миллисекундах.

Тут команда приведена для примера, но в случае возникновения необходимости проверки корректной работы fping, (если наблюдаются сообщения об ошибках работы функций icmpping в панели «элементы данных» – «fping failed» и т.п.), эта команда может быть запущена в консоли, на стороне сервера из под пользователя root. Приведенные значения, (кроме -C 1) предустановленные в fping по-умолчанию, отклонение от этих значений может привести к отказу запуска fping (см. man fping – restrictions). Если у вас нет времени/желания/необходимости разбираться в указанных значениях — просто задайте пустой параметр icmpping (также в одно слово без квадратных скобок).

В разделе «Мониторинг — Последние данные» вы можете увидеть график, который будет формировать только что созданный вами «элемент данных» с простой проверкой.

data-graphics

UPD1

На момент публикации данного текста, доступны более новые версии платформы Zabbix, следите за новостями компании на сайте http://www.zabbix.com/. Если вы разворачиваете новую систему «с нуля», логично делать установку последней стабильной версии продукта. В случае, если у вас в работе уже имеется сервер zabbix с устаревшей версией (< 3.0), то после окончания знакомства с данной статьей, обязательно читаем замечания к обновлениям на сайте разрабочика: требуемые шаги для успешного обновления до Zabbix 3.0.

UPD2

Доступна Статья-дополнение по установке Zabbix 3.0 на CentOS 7.

На этом пожалуй все. Удачи.

 

Использованные источники:

Installing on CentOS or RHEL
Zabbix Documentation 2.2 Установка из пакетов дистрибутивов
What is Extra Packages for Enterprise Linux (or EPEL)?
Zabbix 2.0 packages for RHEL, CentOS, SL
Zabbix server is not running
Вход и настройка пользователя
How to Disable SELinux
How to Install Zabbix Agent on Ubuntu 14.04/12.04 LTS and Debian 7/6
Установка Zabbix Windows агента
Поддерживаемые параметры в файле конфигурации Zabbix агента (Windows)
Zabbix Documentation 2.0 — Простые проверки
Вышел Zabbix 3.0

VKOdnoklassnikiFacebookTwitterBlogger PostGoogle+Поделиться
Запись опубликована в рубрике ЭВТ ИТ с метками , , , , , , , , , , , , , , . Добавьте в закладки постоянную ссылку.

1 комментарий: Установка системы мониторинга Zabbix в CentOS 6

  1. Уведомление: Установка системы мониторинга Zabbix в CentOS 7 | Wilber On-Line Room

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *