Вперед к мониторингу
Ранее в трех небольших публикациях мы рассмотрели процесс установки и настройки Zabbix на CentOS, диагностировали его работу и даже обновились с версии 4.0 на 5.0:
- Немного о мониторинге и простой установке Zabbix
- Диагностика работы Zabbix
- Обновляем Zabbix с 4.0 до 5.0 через грабли
С момента этих публикаций CentOS , поэтому теперь предпочитаю переориентироваться на Ubuntu. Есть даже сайт по теме прекращения поддержки CentOS.
Сегодня рассмотрим простую инструкцию по установке и настройке Zabbix, но уже на Ubuntu 20.04. Только основные шаги. Все что было в прошлых публикациях остается актуальным, просто здесь это сделано в контексте Ubuntu и в очень кратком виде.
Установка Zabbix на Ubuntu
1. Установка Zabbix
Загрузите последний пакет репозитория Zabbix с помощью следующей команды wget :
После загрузки файла добавьте репозиторий Zabbix в вашу систему Ubuntu 18.04, набрав:
Обновите индекс пакета и установите сервер Zabbix, веб-интерфейс с поддержкой базы данных MySQL и агент Zabbix:
Приведенная выше команда также установит Apache , PHP и все необходимые модули PHP.
2. Настройка PHP для веб-интерфейса Zabbix
Во время установки создается файл конфигурации Apache, содержащий все необходимые настройки Apache и PHP. Вам нужно только внести небольшое изменение и установить соответствующий часовой пояс .
/etc/apache2/conf-enabled/zabbix.conf
После этого сохраните файл конфигурации и перезапустите службу Apache, чтобы изменения вступили в силу:
3. Настройка базы данных MySQL для Zabbix сервера
Пакет установки Zabbix предоставляет файл дампа, который включает начальную схему и данные для сервера Zabbix с MySQL.
Импортируйте файл дампа MySQL, запустив:
При появлении запроса введите пароль пользователя, который вы создали ранее. В случае успеха результат не выводится.
Далее нам нужно отредактировать конфигурацию Zabbix и установить пароль базы данных.
Откройте файл конфигурации в вашем редакторе:
Найдите следующий раздел, раскомментируйте директиву и добавьте пароль базы данных.
/etc/zabbix/zabbix_server.conf
Сохраните и закройте файл.
Чтобы проверить, запущен ли Zabbix сервер, введите:
Установка windows агента
Создать папку и скопировать скаченные файлы
C:\Program Files\zabbix
Создать там же файл конфиг, лучше скопировать содержимое уже настроенного агента на сервере и чуток подредактировать
zabbix_agentd.conf
############ GENERAL PARAMETERS ################# # Разделяемый запятыми список IP-адресов (или DNS-имен) Zabbix-серверов. # Пробелы не допускаются! Первый хост в списке используется для "активных" запросов # (т.е. со стороны самого агента). Server=192.168.0.2 # Server port for sending active checks ServerPort=10051 # Уникальное имя узла. Обязательно для "активных" запросов #Hostname=ubuntu # Listen port. Default is 10050 #ListenPort=10050 # IP address to bind agent # If missing, bind to all available IPs #ListenIP=127.0.0.1 # Disable active checks. The agent will work in passive mode listening server. #DisableActive=1 # Disable passive checks. The agent will not listen to any TCP ports. # Only active checks will be processed. #DisablePassive=1 # Enable remote commands for ZABBIX agent. By default remote commands disabled. #EnableRemoteCommands=1 # Specifies debug level DebugLevel=3 # Name of log file. LogFile=C:\Program Files\zabbix\zabbix_agentd.log # Maximum size of log file in MB. Set to 0 to disable automatic log rotation. LogFileSize=50 # Spend no more than Timeout seconds on processing # Must be between 1 and 30 Timeout=3
Установка агента выполняется из командной строки
zabbix_agentd.exe --config "c:\Program Files\zabbix\zabbix_agentd.conf" --install
После этого Zabbix пропишется в службы — откуда и будет запускаться
Так же читать официальный мануал — там все написано
6: Добавление хоста на сервер Zabbix
Чтобы сервер Zabbix начал отслеживать установленный агент, нужно добавить его в список хостов через веб-интерфейс.
Откройте интерфейс Zabbix:
В верхней панели нажмите Configuration → Hosts. Затем нажмите кнопку Create host в правом верхнем углу.
На экране появится страница настройки хоста. В полях Host name и IP ADDRESS укажите имя и IP-адрес клиента. Затем выберите группу хоста; вы можете выбрать одну из существующих групп или создать свою. Один хост может входить сразу в несколько групп. Группа Linux Servers выбрана по умолчанию и подходит в большинстве случаев. Добавив группу, откройте вкладку Templates.
Введите в поле поиска Template OS Linux и нажмите Add, чтобы добавить этот шаблон.
Откройте вкладку Encryption. Выберите PSK в Connections to host и Connections from host. В PSK identity укажите имя ключа, установленное в параметре TLSPSKIdentity на агенте Zabbix (в данном случае PSK 001).
В поле PSK укажите ключ, который хранится в /etc/zabbix/zabbix_agentd.psk на агенте.
Нажмите Add, чтобы добавить хост.
Новый хост появится в списке. Через несколько секунд можно открыть Monitoring → Latest data и просмотреть данные агента.
Чтобы убедиться, что всё работает должным образом, остановите клиентский сервер. В такой ситуации сервер Zabbix должен сообщить о проблеме.
Чтобы добавить новые клиенты Zabbix, установите программное обеспечение агента Zabbix, создайте PSK, настройте агент и добавьте его в список веб-консоли.
Ubuntu 16.04Zabbix
Step 5: Configure Zabbix frontend
a. Configure PHP for Zabbix frontend
Edit file /etc/zabbix/apache.conf:
Uncomment 2 lines in apache.conf that starts with “” by removing symbol and set the right timezone for your country, for example:
Save and exit file (ctrl+x, followed by y and enter)
c. Configure web frontend
Connect to your newly installed Zabbix frontend using URL “http://server_ip_or_dns_name/zabbix” to initiate the Zabbix installation wizard.
In my case, that URL would be “http://192.168.1.161/zabbix” because I have installed Zabbix on the server with IP address 192.168.1.161 (you can find the IP address of your server by typing “” command in the terminal).
Basically, in this wizard you only need to enter a password for Zabbix DB user and just click “Next step” for everything else. In this guide, I have used a zabbixDBpass as a database password, but if you set something else, be sure to enter the correct password when prompted by the wizard.
1. Installation step: Welcome screen
2. Installation step: Pre-requisites check
3. Installation step: Configure DB connection
4. Installation step: Configure Zabbix server
5. Installation step: Pre-installation summary
6. Installation step: Finish
That’s it, you have installed Zabbix monitoring system!
Добавление нового хоста на Zabbix сервер
Процедура добавления нового хоста для мониторинга к Zabbix серверу состоит из двух шагов.
Сначала вам нужно установить агент Zabbix на удаленный хост, а затем добавить хост на сервер Zabbix через веб-интерфейс.
Установка Zabbix агента
В этом руководстве предполагается, что хост-компьютер также использует Ubuntu 18.04.
Как и при установке Zabbix сервера, выполните следующие команды, чтобы включить Zabbix репозиторий:
Обновите индекс пакета и установите пакет агента Zabbix:
Zabbix поддерживает два метода шифрования связи сервер-клиент, предварительный ключ (PSK) и шифрование на основе сертификатов. В этом руководстве мы будем использовать метод предварительных общих ключей (PSK) для защиты соединения между сервером и агентом.
Используйте следующую команду для создания общего ключа и сохранения его в файл:
Ключ PSK будет выглядеть примерно так:
Откройте файл конфигурации Zabbix агента:
Найдите IP-адрес и измените его значение по умолчанию на IP-адрес вашего Zabbix сервера:
/etc/zabbix/zabbix_agentd.conf
Затем найдите параметр, раскомментируйте его и установите для него значение :
/etc/zabbix/zabbix_agentd.conf
Найдите параметр, раскомментируйте его и установите :
/etc/zabbix/zabbix_agentd.conf
Затем найдите параметр, раскомментируйте его и установите для него значение должно быть уникальной строкой:
/etc/zabbix/zabbix_agentd.conf
Наконец, найдите параметр, раскомментируйте его и установите так, чтобы он указывал на ранее созданный общий ключ:
/etc/zabbix/zabbix_agentd.conf
После этого сохраните и закройте файл.
Запустите службу агента Zabbix и настройте ее запуск во время загрузки с помощью:
Затем вам нужно добавить правило брандмауэра, которое разрешает трафик с вашего сервера Zabbix через порт TCP .
Предполагая, что вы используете для управления своим брандмауэром и хотите разрешить доступ с IP-адреса, выполните следующую команду:
Настроить новый хост
Теперь, когда агент на удаленном хосте, который вы хотите отслеживать, установлен и настроен, следующим шагом будет регистрация хоста на сервере Zabbix.
Войдите в веб-интерфейс Zabbix Server как пользователь с правами администратора:
Оказавшись внутри, на верхней панели навигации щелкните значок , а затем
Затем нажмите синюю кнопку в правом верхнем углу экрана, и откроется страница конфигурации хоста:
Введите имя хоста и IP-адрес удаленного хост-компьютера, который вы хотите отслеживать. Добавьте узел в одну или несколько групп, выбрав группу из списка, или введите имя несуществующей группы, чтобы создать новую. Группа является хорошим выбором.
После этого щелкните вкладку. Выберите и щелкните ссылку, чтобы добавить шаблон на хост.
Затем щелкните вкладку. Выберите PSK для обоих и .
Установите значение , значение параметра Zabbix агента, которое вы настроили на предыдущем шаге.
В поле добавьте ключ, который вы сгенерировали для Zabbix агента, тот, который хранится в файле.
Наконец, чтобы добавить хост, нажмите синюю кнопку «Добавить» .
Запуск Zabbix
Откройте браузер, укажите IP-адрес сервера Zabbix и добавьте раздел /zabbix.
На экране появится страница входа. Учётные данные по умолчанию:
В верхней навигационной панели выберите Configuration → Hosts.
На экране появится таблица. Кликните по имени сервера (по умолчанию это Zabbix server), чтобы открыть страницу настройки хоста.
Отредактируйте Hostname, указав имя хоста сервера Zabbix (оно должно совпадать с именем хоста в настройках агента).
В конце страницы измените параметр Status на Monitored. Сохраните изменения.
После этого вы вернётесь на страницу Hosts configuration. Снова кликните по имени хоста и нажмите Clone.
Эти настройки нужно будет немного отредактировать, указав данные клиента. Измените hostname и IP-адрес (эти данные должны совпадать с настройками агента).
В разделе groups выберите Zabbix servers и нажмите значок со стрелкой вправо, чтобы удалить эту группу. Затем выберите Linux servers и нажмите на значок со стрелкой влево, чтобы добавить эту группу.
Кликните Save.
В течение нескольких минут обе машины должны появиться в списке Monitoring → Latest data.
Чтобы просмотреть данные о машине, кликните на стрелочку рядом с именем машины.
Чтобы просмотреть график, кликните Graph.
Ubuntu 12.04 LTSZabbixZabbix Agent
Установка сервера Zabbix 3.0
Подключаем официальный репозиторий 3.0:
# rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
Устанавливаем Zabbix сервер с веб-интерфейсом и с базой данных MySQL:
# yum install -y zabbix-server-mysql zabbix-web-mysql
Дожидаемся окончания загрузки всех зависимостей. После этого нужно создать пользователя и базу данных для мониторинга. Если вы ранее настраивали отдельно web сервер по моей статье, то можете сделать это через phpmyadmin. Если у вас его нет, то делаем все через консоль.
# mysql -uroot -ptopsecret > create database zabbix character set utf8 collate utf8_bin; > grant all privileges on zabbix.* to zabbix@localhost identified by 'zabpassword';
topsecret | пароль пользователя root mysql, это не системный root |
zabpassword | пароль пользователя zabbix, у которого полный доступ к базе mysql zabbix |
Теперь импортируем схему БД и начальные данные.
# zcat /usr/share/doc/zabbix-server-mysql-3.0.1/create.sql.gz | mysql -uroot -ptopsecret zabbix
Обращаю внимание на выделенный путь. Возможно, путь будет другой, когда вы будете устанавливать, так как выйдет новая версия
Имейте это ввиду.
Теперь редактируем файл конфигурации сервера заббикс. Прописываем данные для подключения к БД.
# mcedit /etc/zabbix/zabbix_server.conf
Изменяем строки:
DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabpassword
Этих минимальных настроек достаточно, для работы сервера. Запускаем его и добавляем в автозагрузку.
# systemctl enable zabbix-server # systemctl start zabbix-server
Проверяем лог файл на наличие ошибок.
# cat /var/log/zabbix/zabbix_server.log
Если у вас так же, значит все в порядке. Сервер штатно запустился и готов к работе.
Для продолжения настройки сервера, нам нужно зайти в web интерфейс. Перед этим отредактируем файл конфигурации web сервера. Открываем конфиг и раскомментируем одну строку, изменив ее под свой часовой пояс.
# mcedit /etc/httpd/conf.d/zabbix.conf php_value date.timezone Europe/Moscow
Сохраняем файл. Теперь запускаем httpd и добавляем его в автозагрузку.
# systemctl start httpd # systemctl enable httpd
Можно заходить на веб интерфейс по адресу http://192.168.1.25/zabbix, где 192.168.1.25 ip адрес сервера, где устанавливаем и настраиваем мониторинг.
На этом этапе важно проверить настройки firewalld. Если вы его не настраивали и не отключали, то скорее всего по указанному адресу у вас ничего не откроется
В данной статье я не буду отвлекаться на настройку фаервола, это тема отдельного разговора. Подробно вопрос настройки iptables я рассмотрел отдельно. Либо настройте firewalld, либо просто отключите. В приведенной ссылке рассказано, как это сделать.
Открываем в браузере web интерфейс zabbix. Нас встречает страница приветствия. Если у вас то же самое, вы на верном пути.
Жмем Next step и попадаем на страницу проверок. Если все делали точно по инструкции, то все проверки у вас будут пройдены.
Двигаемся дальше и указываем параметры для подключения к mysql. Данные те же, что мы указывали ранее при создании БД и пользователя.
На следующем этапе надо указать адрес сервера и порт, на котором он будет работать. Оставляем значения по-умолчанию.
Еше раз проверяем все настройки. Если все в порядке, двигаемся дальше на заключительный этап установки.
Если поучили это сообщение, то поздравляю, установка сервера мониторинга Zabbix 3.0 закончена.
Нажимаете Finish и попадаете на страницу логина в систему. Данные по умолчанию следующие:
Пользователь | Admin |
Пароль | zabbix |
Нас встречает голая панель управления, так как никаких параметров мы не наблюдаем и не имеем ни одного объекта сбора данных.
Обращаю внимание на данный скриншот. Я устанавливал и затем заходил в панель через IE 11
Здесь можно увидеть, что реально я не залогинился админом, а зашел как гость, так как нет некоторых разделов администратора. Я несколько раз перепроверил, почистил темпы, перезапустил браузер, но ничего не помогло. Я не мог войти в систему под админом, хотя использовал админскую учетку. Все стало в порядке, когда я зашел через Chrome. Имейте это ввиду. В прошлом релизе 2.4 я не мог нормально провести установку через Yandex браузер, тут же ошибка в IE, хотя я специально использовал его, так как думал, что в нем вероятность ошибки будет меньше. Я ошибся.
Сбор данных мы настроим чуть позже, установив zabbix агент на этот же сервер. А пока сделаем некоторые минимальные и необходимые настройки на сервере.
Step 8: Optimizing MySQL / MariaDB database (optional)
a. Create custom MySQL configuration file
Create file “ with “” and paste this configuration:
Save and exit the file (ctrl+x, followed by y and enter) and set the correct file permission:
Two things to remember!
Configuration parameter must be larger than the total number of all Zabbix proxy processes plus 150. You can use the command below to automatically check the number of Zabbix processes and add 150 to that number:
The second most important parameter is , which determines how much memory can MySQL get for caching InnoDB tables and index data. You should set that parameter to 70% of system memory if only database is installed on server.
However, in this case, we are sharing a server with Zabbix and Apache processes so you should set innodb_buffer_pool_size to 40% of total system memory. That would be 800 MB because my Ubuntu server has 2 GB RAM.
I didn’t have any problems with memory, but if your Zabbix proxy crashes because of lack of memory, reduce “” and restart MySQL server.
Note that if you follow this configuration, you will receive “” alarm in Zabbix frontend due to the new Zabbix configuration. It is safe to increase the trigger threshold or turn off that alarm (select “Problems” tab → left click on the alarm → select “Configuration” → remove the check from “Enabled” → hit the “Update” button)
Шаг 8 — Настройка уведомлений по электронной почте
Zabbix автоматически поддерживает несколько типов уведомлений: по электронной почте, в OTRS, Slack, Telegram, СМС и т. д. Весь список совместимости можно увидеть на веб-сайте Zabbix.
В качестве примера в этом обучающем модуле мы настроим уведомления по электронной почте.
Настройте опции SMTP в соответствии с настройками, предоставленными вашей почтовой службой. В этом обучающем модуле используются возможности SMTP почтовой службы Gmail. При необходимости дополнительной информации об этой настройке см. Использование сервера SMTP Google.
Примечание. Если вы используете двухэтапную аутентификацию для Gmail, необходимо сгенерировать пароль приложения для Zabbix. Пароль приложения вводится только один раз во время установки. Инструкции по генерированию этого пароля можно получить в Справочном центре Google.
На вкладке Message templates (Шаблоны сообщений) вы увидите список стандартных сообщений для различных типов уведомлений. Наконец, нажмите кнопку Update (Обновить) внизу формы для обновления параметров электронной почты.
Теперь вы можете протестировать отправку уведомлений. Для этого нажмите на подчеркнутую ссылку Test (Тестирование) в соответствующей строке.
Вы увидите всплывающее окно. Введите свой адрес электронной в поле Send to (Отправить) и нажмите кнопку Test Тестирование. Вы увидите сообщение об успешной отправке и получите тестовое сообщение.
Закройте всплывающее окно, нажав кнопку Cancel (Отмена).
Теперь создайте нового пользователя. Нажмите Administration (Управление), а затем Users (Пользователи) на левой панели навигации. Вы увидите список пользователей. Затем нажмите кнопку Create user (Создать пользователя) в верхнем правом углу экрана. Откроется страница настройки пользователя:
Введите новое имя пользователя в поле Alias (Псевдоним) и установите новый пароль. Затем добавьте пользователя в группу администратора. Введите в поле Groups (Группы) и выберите его из предложенного списка.
После добавления группы нажмите на вкладку Media (Средство связи) и нажмите на подчеркнутую ссылку Add (не на кнопку Add (Добавить) под ней). Вы увидите всплывающее окно.
Теперь перейдите на вкладку Permissions (Разрешения). Выберите Zabbix Super Admin (Суперадминистратор Zabbix) из выпадающего меню поля User type (Тип пользователя).
Наконец, нажмите кнопку Add (Добавить) внизу формы для создания пользователя.
Примечание. Использование пароля по умолчанию небезопасно. Чтобы изменить пароль встроенного пользователя Admin (Администратор), нажмите на псевдоним в списке пользователей. Затем нажмите Change password (Изменить пароль), введите новый пароль и подтвердите изменения, нажав на кнопку Update (Обновить).
Теперь необходимо включить уведомления. Нажмите на вкладку Configuration (Настройка), а затем Actions (Действия) на левой панели навигации. Вы увидите предварительно настроенное действие, отвечающее за отправку уведомлений всем администраторам Zabbix. Вы можете проверять и менять настройки, нажимая на названия. Для целей данного обучающего модуля используйте параметры по умолчанию. Чтобы активировать действие, нажмите на красную ссылку Disabled (Отключено) в столбце Status (Статус).
Теперь вы готовы получать оповещения. В следующем шаге вы сгенерируете одно для тестирования настройки уведомлений.
1: Установка сервера Zabbix
Перейдите на сервер, на который вы ранее установили MySQL, Apache и PHP. Эта машина будет использоваться в качестве сервера Zabbix.
Теперь нужно установить модули PHP, от которых зависит Zabbix. Обновите индекс пакетов:
Установите модули:
По умолчанию пакеты Zabbix доступны в репозитории, но они устарели. Чтобы установить последнюю стабильную версию Zabbix, добавьте официальный репозиторий. Установите конфигурационный пакет репозитория:
Обновите индекс пакетов:
Установите сервер Zabbix и фронтенд с поддержкой MySQL.
Теперь нужно установить агент Zabbix, который будет собирать данные о сервере Zabbix:
Установка Zabbix на Ubuntu
На момент написания этой статьи последней стабильной версией Zabbix была версия 4.0. Пакеты Zabbix, доступные в репозиториях Ubuntu, часто устарели, поэтому мы будем использовать официальный репозиторий Zabbix .
1. Установка Zabbix
Загрузите последний пакет репозитория Zabbix с помощью следующей команды wget :
После загрузки файла добавьте репозиторий Zabbix в вашу систему Ubuntu 18.04, набрав:
Обновите индекс пакета и установите сервер Zabbix, веб-интерфейс с поддержкой базы данных MySQL и агент Zabbix:
Приведенная выше команда также установит Apache , PHP и все необходимые модули PHP.
2. Настройка PHP для веб-интерфейса Zabbix
Во время установки создается файл конфигурации Apache, содержащий все необходимые настройки Apache и PHP. Вам нужно только внести небольшое изменение и установить соответствующий часовой пояс .
Откройте файл конфигурации, раскомментируйте строку часового пояса и измените ее на свой часовой пояс. Вы можете найти полный список часовых поясов, поддерживаемых PHP здесь .
/etc/apache2/conf-enabled/zabbix.conf
После этого сохраните файл конфигурации и перезапустите службу Apache, чтобы изменения вступили в силу:
3. Настройка базы данных MySQL для Zabbix сервера
Пакет установки Zabbix предоставляет файл дампа, который включает исходную схему и данные для сервера Zabbix с MySQL.
Импортируйте файл дампа MySQL, запустив:
При появлении запроса введите пароль пользователя, который вы создали ранее. В случае успеха результат не выводится.
Далее нам нужно отредактировать конфигурацию Zabbix и установить пароль базы данных.
Откройте файл конфигурации в вашем редакторе:
Найдите следующий раздел, раскомментируйте директиву и добавьте пароль базы данных.
/etc/zabbix/zabbix_server.conf
Сохраните и закройте файл.
Чтобы проверить, запущен ли Zabbix сервер, введите:
Шаг 4 — Настройка PHP для Zabbix
Веб-интерфейс Zabbix написан на языке PHP, и для него требуется ряд специальных настроек сервера PHP. В ходе установки Zabbix был создан файл конфигурации PHP-FPM, который содержит эти настройки. Он расположен в каталоге и загружается автоматически PHP-FPM. Вам нужно внести небольшое изменение в этот файл, поэтому откройте его следующим образом:
Файл содержит параметры PHP, соответствующие необходимым требованиям для веб-интерфейса Zabbix. Однако настройка часового пояса комментируется по умолчанию. Чтобы Zabbix использовал правильное время, необходимо установить соответствующий часовой пояс:
/etc/zabbix/php-fpm.conf
Раскомментируйте строку часового пояса, выделенную в предыдущем блоке кода, и измените ее на свой часовой пояс. Для поиска подходящего часового пояса можно воспользоваться этим списком поддерживаемых часовых поясов. Затем сохраните и закройте файл.
Теперь перезапустите PHP-FPM для применения этих новых настроек:
Теперь вы можете запустить сервер Zabbix:
Затем проверьте правильность работы сервера Zabbix:
Вы увидите следующий статус:
Наконец, включите запуск сервера в момент загрузки:
Сервер настроен и подключен к базе данных. Затем настройте веб-интерфейс.
Step 7: Optimizing Zabbix Server (optional)
Don’t bother with this optimization if you are monitoring a small number of devices, but if you are planning to monitor a large number of devices then continue with this step.
Open “” file with command: “” and add this configuration anywhere in file:
Save and exit file (ctrl+x, followed by y and enter).
This is not a perfect configuration, keep in mind that you can optimize it even more. Let’s say if you don’t use ICMP checks then set the “” parameter to 1 or if you don’t use active agents then set “” to 1 and so on. You can find out more about the parameters supported in a Zabbix server configuration file in the official documentation.
If you try to start the Zabbix server you will receive an error “” in the log “” because we are using more Zabbix server processes than MySQL can handle. We need to increase the maximum permitted number of simultaneous client connections and optimize MySQL – so move to the next step.