Установка и настройка Zabbix Frontend
Веб-интерфейс Zabbix написан на PHP и позволяет нам настраивать сервер, просматривать собранные данные и добавлять хосты, которые мы хотим отслеживать.
Перед тем как начать пользоваться веб-интерфейсом, нам необходимо его установить.
Откройте свой любимый браузер и введите доменное имя или общедоступный IP-адрес вашего сервера, а затем :
На первом экране вы увидите приветственное сообщение. Щелкните чтобы продолжить.
Затем вы увидите следующую информационную страницу, на которой перечислены все предварительные требования PHP, необходимые для запуска Zabbix Frontend. Все значения в этой таблице должны быть в Прокрутите вниз, чтобы убедиться, что все настроено правильно. После проверки нажмите « чтобы продолжить.
На следующем экране мастер настройки попросит вас ввести данные подключения к базе данных. Введите данные пользователя MySQL и базы данных, которые вы создали ранее.
Ввод имени сервера необязательно. Введите его, если у вас более одного сервера мониторинга Zabbix. Если предоставлено, оно будет отображаться в строке меню и заголовках страниц.
Щелкните чтобы продолжить.
На следующем экране вам будет показана сводка до установки.
Нажмите и после завершения установки вы попадете на страницу, информирующую вас о том, что веб-интерфейс Zabbix установлен. Чтобы получить доступ к странице входа в Zabbix, нажмите кнопку .
Пользователь по умолчанию — «Admin», а пароль — «zabbix». Введите имя пользователя и пароль и нажмите кнопку « .
После входа в систему вы будете перенаправлены на панель администрирования Zabbix.
Отсюда вы можете начать настраивать установку Zabbix и добавлять новые хосты. Вашим первым шагом должно быть изменение текущего пароля. Для этого перейдите на страницу профиля пользователя, щелкнув значок профиля в верхней части навигации.
Установка Zabbix Agent на Linux
Если вы хотите установить zabbix-agent на сам сервер мониторинга, то ничего делать не надо, кроме самой установки. Для других систем необходимо подключить репозитории заббикса, которые мы использовали во время установки сервера. Можете посмотреть их в соответствующих разделах для своей системы.
Установка zabbix agent в Centos:
# yum install zabbix-agent
Тоже самое в Ubuntu/Debian:
# apt install zabbix-agent
Для работы с сервером, который установлен локально на этой же машине, больше никаких настроек не надо делать. Если же вы будете устанавливать zabbix agent на другую машину, то в файле конфигурации агента /etc/zabbix/zabbix_agentd.conf нужно будет задать следующие параметры:
# mcedit /etc/zabbix/zabbix_agentd.conf
Server=192.168.13.117 ServerActive=192.168.13.117 Hostname=srv10 # имя вашего узла мониторинга, которое будет указано на сервере zabbix, Zabbix server если это сам сервер заббикса
Запускаем агент и добавляем в автозагрузку:
# systemctl start zabbix-agent # systemctl enable zabbix-agent
Проверяем лог файл.
# cat /var/log/zabbix/zabbix_agentd.log 14154:20181004:201307.800 Starting Zabbix Agent . Zabbix 4.0.0 (revision 85308). 14154:20181004:201307.800 **** Enabled features **** 14154:20181004:201307.800 IPv6 support: YES 14154:20181004:201307.800 TLS support: YES 14154:20181004:201307.800 ************************** 14154:20181004:201307.800 using configuration file: /etc/zabbix/zabbix_agentd.conf 14154:20181004:201307.800 agent #0 started 14157:20181004:201307.801 agent #3 started 14159:20181004:201307.802 agent #5 started 14155:20181004:201307.804 agent #1 started 14158:20181004:201307.806 agent #4 started 14156:20181004:201307.810 agent #2 started
Все в порядке. Идем в веб интерфейс и проверяем поступление данных. Для этого идем в раздел Мониторинг -> Последние данные. Указываем в разделе Узлы сети Zabbix Server и ждем поступления первых данных. Они должны пойти через 2-3 минуты после запуска агента.
Теперь попробуем остановить агент и проверить, придет ли уведомление на почту. Идем в консоль и выключаем агента:
# systemctl stop zabbix-agent
Ждем минимум 5 минут. Именно такой интервал указан по-умолчанию для срабатывания триггера на недоступность агента. После этого проверяем главную панель, виджет Проблемы.
Troubleshooting Proxy Setup
Double check notes above.
Check the output of
1 |
Check the output of
1 |
Note
A common problem is the name of your proxy in the Zabbix User Interface, should be the same as your Hostname setting in the Zabbix proxy config in
Debian/Ubuntu/Raspbian
For more information about installing on Debian/Ubuntu/Raspbian visit,
https://www.zabbix.com/documentation/current/manual/installation/install_from_packages/debian_ubuntu
Red Hat/Centos
For more information about installing on Red Hat/Centos visit,
https://www.zabbix.com/documentation/current/manual/installation/install_from_packages/rhel_centos
PSK Encryption between the Proxy and Server
Later on, you may be tempted to add PSK encryption between your Zabbix server and the Proxy. PSK is discussed more later on in the course.
You may see an error in the Proxy logs, «cannot send proxy data to server at «zabbix.your-domain.tld»: connection of type «TLS with PSK» is not allowed for proxy «your-proxy»
When setting up PSK encryption for communications specifically between the Proxy and Server, you should add the PSK Identity and Secret to Administration—>Proxies—>—>Encryption and also adjust the settings inside the file /etc/zabbix/zabbix_proxy.conf
If you also want Encryption between your Proxy and its local Agent, then create another secret for the agent, set its PSK settings in the Proxy Agents Host configuration at Configuration—>Hosts—>—>Encryption, and modify the settings in the file /etc/zabbix/zabbix_agentd.conf
Understand that the Proxy process, and the Proxies own Agent process are two different things with there own configurations. The proxies own agent is discussed in the next section.
Step 12: Learn about common Zabbix Proxy errors
No data in items because Zabbix proxy time differs from Zabbix server time
Starting from version 4.0 Zabbix server will no longer adjust value timestamps in cases when proxy time differs from Zabbix server time. This problem is easy to detect because server-proxy communication will work but there will be no data in the items.
Adjust Zabbix server and the proxy to use the same time server (NTP) or set the time manually.
Communication between Proxy and Server is not working
Zabbix proxy is using port 10051 to communicate with the Zabbix server so make sure that you permit traffic coming from port 10051 in your network.
Note that Zabbix is using compression for communication with Proxies. Compression improves performance because it drastically reduces network traffic.
However, this may cause some problems in environments that have security devices (IDS/IPS or NGFW) installed as they can drop network packets if they detect compression in the network stream. To avoid that problem, make sure the application definitions on the security devices are up-to-date, and if you have any problems, contact your device vendor.
Checking logs on the Proxy server
If you experience a problem with the proxy you can check last 500 lines of the log with the command:
Thank you for reading.
Дополнительные материалы по Zabbix
Онлайн курс Infrastructure as a code
Если у вас есть желание научиться автоматизировать свою работу, избавить себя и команду от рутины, рекомендую пройти онлайн курс Infrastructure as a code. в OTUS. Обучение длится 4 месяца.
Что даст вам этот курс:
- Познакомитесь с Terraform.
- Изучите систему управления конфигурацией Ansible.
- Познакомитесь с другими системами управления конфигурацией — Chef, Puppet, SaltStack.
- Узнаете, чем отличается изменяемая инфраструктура от неизменяемой, а также научитесь выбирать и управлять ей.
- В заключительном модуле изучите инструменты CI/CD: это GitLab и Jenkins
Смотрите подробнее программу по .
Рекомендую полезные материалы по Zabbix: |
Настройки системы |
---|
Видео и подробное описание установки и настройки Zabbix 4.0, а также установка агентов на linux и windows и подключение их к мониторингу. Подробное описание обновления системы мониторинга zabbix версии 3.4 до новой версии 4.0. Пошаговая процедура обновления сервера мониторинга zabbix 2.4 до 3.0. Подробное описание каждого шага с пояснениями и рекомендациями. Подробное описание установки и настройки zabbix proxy для организации распределенной системы мониторинга. Все показано на примерах. Подробное описание установки системы мониторинга Zabbix на веб сервер на базе nginx + php-fpm. |
Мониторинг служб и сервисов |
Мониторинг температуры процессора с помощью zabbix на Windows сервере с использованием пользовательских скриптов. Настройка полноценного мониторинга web сервера nginx и php-fpm в zabbix с помощью скриптов и пользовательских параметров. Мониторинг репликации mysql с помощью Zabbix. Подробный разбор методики и тестирование работы. Описание настройки мониторинга tcp служб с помощью zabbix и его инструмента простых проверок (simple checks) Настройка мониторинга рейда mdadm с помощью zabbix. Подробное пояснение принципа работы и пошаговая инструкция. Подробное описание мониторинга регистраций транков (trunk) в asterisk с помощью сервера мониторинга zabbix. Подробная инструкция со скриншотами по настройке мониторинга по snmp дискового хранилища synology с помощью сервера мониторинга zabbix. |
Мониторинг различных значений |
Настройка мониторинга web сайта в zabbix. Параметры для наблюдения — доступность сайта, время отклика, скорость доступа к сайту. Один из способов мониторинга бэкапов с помощью zabbix через проверку даты последнего изменения файла из архивной копии с помощью vfs.file.time. Подробное описание настройки мониторинга размера бэкапов в Zabbix с помощью внешних скриптов. Пример настройки мониторинга за временем делегирования домена с помощью Zabbix и внешнего скрипта. Все скрипты и готовый шаблон представлены. Пример распознавания и мониторинга за изменением значений в обычных текстовых файлах с помощью zabbix. Описание мониторинга лог файлов в zabbix на примере анализа лога программы apcupsd. Отправка оповещений по событиям из лога. |
Установка Zabbix proxy
Перед установкой добавлю еще пару слов о работе proxy. Прокси серверу нужна отдельная локальная база данных, которая никак не связана с базой основного сервера мониторинга. Я для простоты в качестве такой базы использую sqlite. Для proxy этого вполне достаточно. Так что наша установка будет разделена на этапы:
- Непосредственно установка zabbix proxy.
- Создание базы данных.
- Подключение к основному серверу мониторинга.
- Подключение zabbix agent через zabbix proxy.
Приступаем к установке. Подключаем репозиторий заббикса:
# rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
Устанавливаем прокси и агента. Агент, кстати, ставить не обязательно, но я обычно ставлю, чтобы мониторить сам сервер.
# yum install –y zabbix-agent zabbix-proxy-sqlite3
Распаковываем файл со схемой базы:
# gunzip /usr/share/doc/zabbix-proxy-sqlite3-3.0.4/schema.sql.gz
Обращаю внимание на выделенную часть пути. Когда вы будете устанавливать zabbix proxy, версия может быть уже другой, а соответственно и путь к папке
Не забудьте его изменить на актуальный.
Создаем папку для базы данных и саму базу:
# mkdir /var/lib/sqlite # sqlite3 /var/lib/sqlite/zabbix.db < /usr/share/doc/zabbix-proxy-sqlite3-3.0.4/schema.sql
Устанавливаем владельцем базы заббикс:
# chown -R zabbix. /var/lib/sqlite
На этом установка заббикс прокси закончена. Мы все подготовили, теперь ее надо правильно настроить и подключить к серверу. Займемся этим.
Зачем нужен Zabbix proxy
Расскажу своими словами что такое zabbix proxy и зачем он нужен. Допустим у вас есть распределенная сеть, где отдельные сегменты никак не связаны друг с другом. То есть условно, у вас 5 разных сетей с адресацией 192.168.0.0/24. Вам нужно настроить мониторинг узлов в этих сетях. Сети ничего не знаю друг о друге, у них нет прямого IP, только доступ в интернет.
В таком случае вы устанавливаете zabbix сервер на внешний ip адрес, в каждом сегменте сети настраиваете прокси, который будет собирать данные с узлов в этом сегменте и отправлять их на основной сервер мониторинга. Все управление при этом происходит на основном сервере, достаточно только один раз подключить прокси к основному серверу. Схематично подобная схема изображена в документации с официального сайта:
Если у вас полностью связаная сеть, в которой каждый узел имеет прямой доступ к серверу мониторинга, proxy сервера имеет смысл устанавливать и использовать для распределения нагрузки. 100 узлов, отправляющиие данные напрямую на сервер мониторинга, нагружают его сильнее, чем прокси, который собирает данные с этих 100 узлов и отправляяет их на основной сервер.
Вроде понятно и доступно объяснил. Приступим теперь к установке zabbix proxy. Устанавливать будем на сервер под управлением CentOS 7. Если у вас его еще нет, то читайте об установке centos 7 и его первоначальной настройке. Требования к железу зависят от нагрузки на прокси, но в общем случае они будут не высоки. Для мониторинга 20-30 узлов я использовал виртуальную машину с 512 мб оперативной памяти и 10 гб диском. Сама прокси почти ничего не хранит, отправялет данные на сервер.
В качестве основного сервера мониторинга у нас будет выступать Zabbix 3. Если вы его еще не настроили, то рекомендую мою подробную статью с видео по установке и настройке zabbix. Дальше я буду считать, что у вас уже настроен сервер мониторинга, к которму мы будем подключать proxy и добавлять новые узлы из подключенного сегмента сети.
Installation and Configure Zabbix Proxy
For example, we’ll installed for Ubuntu 18.04 Bionic.
Install Package
Shell
# wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-2+bionic_all.deb
# dpkg -i zabbix-release_4.0-2+bionic_all.deb
# apt update
1 |
# wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-2+bionic_all.deb # dpkg -i zabbix-release_4.0-2+bionic_all.deb # apt update |
To install Zabbix proxy with MySQL support:
Shell
# apt install zabbix-proxy-mysql
1 | # apt install zabbix-proxy-mysql |
Creating database
I using local mysql.
Shell
# mysql -uroot -p<password>
mysql> create database zabbix_proxy character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix_proxy.* to zabbix@localhost identified by ‘<password>’;
mysql> quit;
1 |
# mysql -uroot -p<password> mysql>create database zabbix_proxy character set utf8 collate utf8_bin; mysql>grant all privileges on zabbix_proxy.*tozabbix@localhost identified by’<password>’; mysql>quit; |
Import schema.sql.gz for database “zabbix_proxy”
Shell
# zcat /usr/share/doc/zabbix-proxy-mysql/schema.sql.gz | mysql -uzabbix -p zabbix_proxy
1 | # zcat /usr/share/doc/zabbix-proxy-mysql/schema.sql.gz | mysql -uzabbix -p zabbix_proxy |
Configure database and node for Zabbix Proxy
Edit zabbix_proxy.conf to use their respective databases. For example:
Shell
# vi /etc/zabbix/zabbix_proxy.conf
Server=zabbix-node.domain.local
HostnameItem=system.hostname
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=<password>
1 |
# vi /etc/zabbix/zabbix_proxy.conf Server=zabbix-node.domain.local HostnameItem=system.hostname DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=<password> |
Starting Zabbix Proxy process
It’s time to start Zabbix server process and make it start at system boot:
Shell
# service zabbix-proxy start
# update-rc.d zabbix-proxy enable
1 |
# service zabbix-proxy start # update-rc.d zabbix-proxy enable |
Другие варианты обучения
Кроме также существуют несколько других вариантов прохождения курса Zabbix профессионал:
1
Вариант 2
Обучение с выездом на место
Самый простой и наиболее комфортный способ посещения курса профессионального обучения. Если у вас есть по крайней мере 5 человек для посещения курса и комната с проектором для проведения обучения, Вы можете заказать обучение, состоящее из одного или обоих курсов.
- Основные преимущества:
- по запросу стандартное содержание программ обучения можно скорректировать в соответствие Вашей инфраструктуре
- все участники из одной компании – таким образом можно обсуждать специфичные темы или темы связанные с безопасностью, которые в другом месте невозможно обсудить
- обучение в Вашем собственном помещении экономит время и деньги, а также появляется возможность выбора наиболее подходящего времени проведения курсов
Заказать этот вид курсов
2
Вариант 2
Организация обучения
Если у Вас есть 2 и более участника на посещение обоих курсов и комната для совещаний, которая сможет вместить до 15 слушателей, Вы можете провести курс обучения в Вашем помещении. Вы заведуете мероприятием, мы приглашаем участников из других компаний и предоставляем профессионального тренера. Это ведь очень просто. И чтобы стало заманчивее, Вы получаете одно бесплатное место на каждый курс или два бесплатных места на один курс.
Заказать этот вид курсов
Step 12: Learn about common Zabbix Proxy errors
No data in items because Zabbix proxy time differs from Zabbix server time
Starting from version 4.0 Zabbix server will no longer adjust value timestamps in cases when proxy time differs from Zabbix server time. This problem is easy to detect because server-proxy communication will work but there will be no data in the items.
Adjust Zabbix server and the proxy to use the same time server (NTP) or set the time manually.
Communication between Proxy and Server is not working
Zabbix proxy is using port 10051 to communicate with the Zabbix server so make sure that you permit traffic coming from port 10051 in your network.
Note that Zabbix is using compression for communication with Proxies. Compression improves performance because it drastically reduces network traffic.
However, this may cause some problems in environments that have security devices (IDS/IPS or NGFW) installed as they can drop network packets if they detect compression in the network stream. To avoid that problem, make sure the application definitions on the security devices are up-to-date, and if you have any problems, contact your device vendor.
Checking logs on the Proxy server
If you experience a problem with the proxy you can check last 500 lines of the log with the command:
Thank you for reading.
Step 5: Zabbix Proxy configuration
In my setup, I will name proxy as Zabbix proxy 01 and configure it to communicate with the Zabbix that has IP address 10.7.44.235 – please change those accordingly to match your environment.
Open file with the command: “” and add database password and configuration frequency in this format anywhere in the file:
“” parameter defines how often proxy retrieves configuration data from the Zabbix server in seconds. You can read more about proxy configuration parameters in the official documentation.
Don’t close the file yet! Now, you need to change the current ““, ““, ““, and “” parameter values to something like this:
Save and exit file (ctrl+x, followed by y and enter).
Подготовка сервера к установке
Если вы еще не подготовили сервер CentOS 7 рекомендую познакомиться с моими материалами на эту тему — установка и настройка centos. Заббикс для своей работы использует web сервер и базу данных. Я рекомендую их установить отдельно и настроить, прежде чем ставить сам мониторинг. Нам понадобится apache, php и mysql. Можете посмотреть подробное руководство по настройке веб сервера, здесь же я просто приведу команды на исполнение.
Устанавливаем apache и добавляем его в автозагрузку:
# yum install -y httpd # systemctl enable httpd
Устанавливаем php и необходимые компоненты для zabbix:
# yum -y install php php-bcmath php-cli php-common php-gd php-mbstring php-mysql php-pdo php-xml
Устанавливаем mysql и добавляем в автозапуск:
# yum install -y mariadb mariadb-server # systemctl enable mariadb.service
Запускаем mysql и выполняем предварительную настройку:
# systemctl start mariadb # /usr/bin/mysql_secure_installation
Отключаем selinux:
# mcedit /etc/sysconfig/selinux
Редактируем строку:
SELINUX=disabled
и после этого перезагружаемся.
Дальше нам нужно будет подключить репозиторий заббикса:
# rpm -Uvh http://repo.zabbix.com/zabbix/2.4/rhel/7/x86_64/zabbix-release-2.4-1.el7.noarch.rpm
Подготовку закончили, не забудьте настроить iptables, если используете firewall.
Zabbix Proxy Configuration
We are going to configure zabbix proxy configurations now, to do so let’s open up the zabbix proxy conf file placed in «/etc/zabbix/» directory with your file editor.
Now configure it with following options.
Put the IP of your Zabbix Server here, if its running on another machine.
Mention the hostname here that you like to configure it here.
Give the database name, its user and password, that we had created above in zabbix database proxy settings.
Now save the changes to the zabbix configurations file and close it with «wq!».
Start Zabbix Proxy Services
Run the «zabbix_proxy» command to start its service and then confirm its process with «ps» or «netstat » commands to confirm if its processes are running.
Here is the snapshot of all the running processes under zabbix_proxy on port «10051».
You can also check the zabbix proxy logs by opening up its logs file zabbix_proxy.log created in «/var/log/zabbix/» directory.
Here can see its logs about successfully services start up in below image.
Установка и настройка веб-интерфейса Zabbix
Веб-интерфейс Zabbix написан на PHP и позволяет нам настраивать сервер, просматривать собранные данные и добавлять хосты, которые мы хотим отслеживать.
Прежде чем начать использовать веб-интерфейс, нам нужно его установить.
Откройте ваш любимый браузер и введите доменное имя вашего сервера или публичный IP-адрес, а затем :
На первом экране вам будет представлено приветственное сообщение. Нажмите, чтобы продолжить.
Далее вы увидите следующую информационную страницу, где перечислены все предварительные условия PHP, необходимые для запуска веб-интерфейса Zabbix. Все значения в этой таблице следует прокрутить вниз, чтобы убедиться, что все настроено правильно. После подтверждения нажмите, чтобы продолжить.
На следующем экране мастер установки попросит вас ввести данные для подключения к вашей базе данных. Введите данные о пользователе и базе данных MySQL, которые вы ранее создали.
Ввод имени для сервера не является обязательным. Введите его, если у вас более одного сервера мониторинга Zabbix. Если предусмотрено, оно будет отображаться в строке меню и заголовках страниц.
Нажмите, чтобы продолжить.
На следующем экране вам будет показана сводная информация перед установкой.
Нажмите и после завершения установки вы попадете на страницу, сообщающую, что веб-интерфейс Zabbix установлен. Для доступа к странице входа в Zabbix нажмите на кнопку.
Пользователь по умолчанию — «Администратор», а пароль — «Zabbix». Введите имя пользователя и пароль и нажмите на кнопку.
После входа вы будете перенаправлены на панель администрирования Zabbix.
Отсюда вы можете начать настройку Zabbix и добавлять новые хосты. Ваш первый шаг должен изменить текущий пароль. Для этого перейдите на страницу профиля пользователя, нажав на значок профиля в верхней части навигации.