Установка Zabbix 4.4 на CentOS 8
Информационные технологии для экспертов
Логин: Пароль:
Войти через:
Войти как пользователь
Вы можете войти на сайт, если вы зарегистрированы на одном из этих сервисов:
СТАТЬИ     версия для печати

 
PC4XP / статьи / Установка Zabbix 4.4 на CentOS 8
Автор: Clever Dog

Родительские статьи

- Материалы по Zabbix >>>

Установка Zabbix 4.4 на CentOS 8

материал № 30

Установка Zabbix 4.4 на CentOS 8

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

- Операционная система CentOS 8, установленная на виртуальную машину, обслуживаемую Virtual Box 6.1 под хостовой ОС Windows 10.
- На виртуальную машину было выделено 4 Гб оперативной памяти, 4 процессорных потока и виртуальный диск объемом 35 Гб.

Перед установкой Zabbix потребуется установить MySQL, Nginx, PHP, PHP-FMP.


I. Установка MySQL

II. Установка NGINX

III. Установка PHP и PHP-FPM

IV. Установка Zabbix 4.4

V. Настройки и возможные проблемы

VI. Дополнительные материалы


Выполнять команды установки необходимо, авторизовавшись под суперпользователем root либо, оставаясь под текущим пользователем, ставить впереди выполняемых команд указание sudo (superuser do – выполнять под суперпользователем).

I. Установка MySQL

СУБД MySQL потребуется для хранения данных, которые Zabbix будет получать в ходе мониторинга.

1. Скачивание репозитория MySQL из Интернета:
а) Обновляем yum CentOS:

sudo yum update

YUM (Yellowdog Updater, Modified) – это программное обеспечение Linux, основанных на пакетах формата RPM (RedHat, CentOS, Fedora, Oracle Linux), которое обеспечивает скачивание, установку, обновление различных программных средств для Linux.

б) Скачивание репозитория MySQL:

sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

Ссылка в примере дана для примера и может не работать. Перед запуском команды необходимо найти последнюю, или какую-нибудь другую версию MySQL на официально сайте MySQL и проставить ссылку в данной команде. После выполнения команды и скачивания дистрибутива, система сообщит, что соответствующий RPM-файл сохранен.

в) Обновление дистрибутива:

sudo rpm -Uvh mysql80-community-release-el7-1.noarch.rpm

В качестве репозитория должен быть указан тот файл, который был получен при помощи команды wget.
-Uvh – это три необязательных параметра:
-U – указывает выполнить обновление репозитория. Если оно будет найдено, то репозиторий будет обновлен до последней версии.
v – показывать подробную информацию о процессе.
h – показывать прогресс-бар.

2. Установка MySQL:
а) Установка MySQL

yum install mysql-server

Скачивание и установка файлов MySQL

3. Запуск сервера MySQL:
а) Запуск. MySQL не запускается автоматически, поэтому запускаем его вручную:

sudo systemctl start mysqld


б) Проверка, запущен ли MySQL:

sudo systemctl status mysqld

Установка Zabbix 4.4 на CentOS 8

Если видим «Active: active (running)…», то все в порядке.

в) Стоит отметить, что после перезапуска операционной системы, mysqld автоматически не запустится. Набираем команду управления автозапуском:

chkconfig --level 345 mysqld on

3,4,5 – это уровни автозапуска программы
Установка Zabbix 4.4 на CentOS 8

Результат выполнения команды: создание символической ссылки на исполняемый файл.

Перезапустите компьютер и выполните команду sudo systemctl status mysqld, дабы убедиться, что mysqld запущен.

II. Установка NGINX

1. Инсталляция Nginx:

sudo dnf install nginx


2. Затем запускаем Nginx и добавляем его в автозагрузку:

sudo systemctl start nginx

sudo systemctl enable nginx


3. Настройка файерволла:
Устанавливаем разрешение HTTP (или HTTPS) на подключение в файерволле:

sudo firewall-cmd --add-service=http

sudo firewall-cmd --permanent --add-service=http


Добавление портов 80 (для http) и 443 (для https) в исключение:

sudo firewall-cmd --permanent --add-port=80/tcp

sudo firewall-cmd --permanent --add-port=443/tcp

Добавим и порты 10051(для Zabbix-сервера) и 10050 (для Zabbix-агента):

firewall-cmd --add-port={10051/tcp,10050/tcp} --permanent


Проверим работу веб-сервера, введя в адресной строке браузера ip-адрес сервера. В данном случае - это 127.0.0.1 (localhost).
Должна открыться начальная страница Nginx. Также стоит перезапустить операционную систему, чтобы убедиться, что nginx стартует после запуска ОС: systemctl status nginx

III. Установка PHP и PHP-FPM

PHP обеспечит интерпретацию кода веб-интерфейса Zabbix, а PHP-FPM – взаимодействие Nginx и PHP между собой.

1. Установка программ:

sudo yum install php

sudo yum install php-fpm


2. Запускаем php-fpm и добавляем его в автозагрузку:

sudo systemctl start php-fpm

sudo systemctl enable php-fpm


IV. Установка Zabbix 4.4

Инструкция по установке взята из официального сайта zabbix.com из раздела ‘download’, однако она не является полной и не раскрывает множество нюансов и проблем. Поэтому, здесь она была дополнена.

1. Установка репозитория Zabbix:

sudo rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/8/x86_64/zabbix-release-4.4-1.el8.noarch.rpm

sudo dnf clean all

Здесь необходимо использовать актуальную ссылку, которую дает сайт zabbix.com

2. Инсталляция Zabbix-сервера, web-фронтэнда (оболочки), агента и nginx-конфигурации:

sudo dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-agent

На этом шаге часто возникала ошибка загрузки одного из компонентов zabbix. Поэтому данная команда запускалась многократно и в разные моменты времени, пока скачивание не прошло полностью.

3. Создание базы данных:

sudo mysql -uroot -p

Пароль для пользователя root в MySQL по умолчанию не установлен, поэтому при его запросе достаточно нажать ‘Enter’. В командной строке MySQL после каждой команды необходимо добавлять символ ‘;’, чтобы она была выполнена.

mysql> create database zabbix character set utf8 collate utf8_bin; - создание БД с именем zabbix и кодировкой в utf8.

mysql> create user 'zabbix'@'localhost' identified by 'password'; - создание пользователя zabbix и задание ему пароля 'password'.

mysql> grant all privileges on zabbix.* to zabbix@localhost; - делегирование пользователю всех полномочий.

mysql> quit;


4. Импортирование некоторых данных Zabbix в базу данных:

zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -uzabbix -p zabbix

-u zabbix – это указание пользователя в БД – «zabbix», -p zabbix – это указание имени БД – «zabbix», которые мы создавали на 3 шаге.

V. Настройки и возможные проблемы

1. Настройки.
а) Установка пароля для пользователя zabbix базы данных zabbix:
Нужно найти и отредактировать конфигурационный файл /etc/zabbix/zabbix_server.conf
Найти в этом файле строчку DBPassword=password. Она, как правило, закомментирована. Раскомментировать и указать пароль, который вы указали на шаге 3.

б) Настройка NGINX и PHP.
В двух, ниже указанных, файлах необходимо раскомментировать указанные строки:
/etc/nginx/conf.d/zabbix.conf

listen 80;

server_name example.com;

/etc/php-fpm.d/zabbix.conf

php_value[date.timezone] = Europe/Riga


/etc/nginx/nginx.conf
root /usr/share/zabbix - в nginx.conf указываем данный путь, т.к. по нему находится веб-интерфейс Zabbix. (вместо пути /usr/share/nginx/html, который был по умолчанию)

/etc/zabbix/zabbix_agentd.conf - данный файл необходимо привести к нижеуказанному виду, открывая те параметры, которые закомментированы. Изменения, которые были сделаны в данном случае, выделены жирным:

PidFile=/var/run/zabbix/zabbix_agentd.pid

LogType=file

LogFile=/var/log/zabbix/zabbix.log

DebugLevel=3

EnableRemoteCommands=0

LogRemoteCommands=0

Server=127.0.0.1

ListenPort=10050

ListenIP=127.0.0.1

StartAgents=3

ServerActive=127.0.0.1

Hostname=localhost

RefreshActiveChecks=120

BufferSend=5

BufferSize=100

MaxLinesPerSecond=100

Timeout=3

AllowRoot=0

User=zabbix

Include=/etc/zabbix/zabbix_agentd.d

UnsafeUserParameters=1

LoadModulePath=/usr/lib/modules



/etc/nginx/conf.d/default.conf - default.conf отсутствовал и был скопирован из другой работающей системы. Его содержимое приведено ниже, а сделанные изменения отмечены жирным:
server {

listen 80;

server_name localhost;


#charset koi8-r;

#access_log /var/log/nginx/log/host.access.log main;


location / {

  root /usr/share/zabbix;

  index index.php;

}


#error_page 404 /404.html;


# redirect server error pages to the static page /50x.html

error_page 500 502 503 504 /50x.html;

location = /50x.html {

  root /usr/share/nginx/html;

}


# proxy the PHP scripts to Apache listening on 127.0.0.1:80

#location ~ \.php$ {

  # proxy_pass http://127.0.0.1;

#}


# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

location ~ \.php$ {

  root html;

  set $root_path /usr/share/nginx/html;

  fastcgi_pass 127.0.0.1:9000;

  fastcgi_index index.php;

  fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;

  include fastcgi_params;

}


# deny access to .htaccess files, if Apache's document root

# concurs with nginx's one

#location ~ /\.ht {

  # deny all;

#}

}


Перезапуск и установка автозапуска для zabbix-сервера, zabbix-агента, веб-сервера nginx и php-fpm:

systemctl restart zabbix-server zabbix-agent nginx php-fpm

systemctl enable zabbix-server zabbix-agent nginx php-fpm


2. Возможные проблемы:

а) Отсутствие файлов /etc/nginx/conf.d/zabbix.conf и /etc/php-fpm.d/zabbix.conf.

Это означает что установка компонентов Zabbix прошла некорректно и нужно ее повторить (sudo dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-agent). В данном случае помогла переустановка Zabbix и указанные файлы появились на своих местах.


б) Не стартует zabbix-agent или zabbix-server по причине отсутствия компонента zbxpcp.so. О чем можно узнать из лог-файла /var/log/zabbix/zabbix_agentd.log

zbxpcp.so является компонентом Performance Co-Pilot (PCP) - инструментария, предназначенный для мониторинга и управления производительностью на уровне системы (https://pcp.io). По умолчанию подгрузка zbxpcp.so включена в файле /etc/resolv.conf/zabbix/zabbix_agentd.d/zbxpcp.conf или /etc/zabbix/zabbix_agentd.d/zbxpcp.conf, ее можно закомментировать, либо установить Performance Co-Pilot.


в) Не стартует Zabbix-agent или zabbix-server по причине, указанной в /var/log/zabbix/zabbix_agentd.log:


listener failed: bind() for [[127.0.0.1]:10051] failed: [13] Permission denied

Zabbix Agent stopped. Zabbix 4.4.7 (revision 77fb8c7ee0).


Это означает, что запуску Zabbix-agent мешает Selinux - компонент CentOS, обеспечивающий принудительный контроль доступа. Его можно отключить до следующей перезагрузки ОС, выполнив команду: setenforce 0, либо отключить на совсем, отредактировав следующий файл: /etc/selinux/config, установив в нем следующий параметр: SELINUX=disabled


г) Zabbix-agent на клиенте с Windows не может соединиться с Zabbix-сервером. Сообщение в zabbix_agentd.log:"active check configuration update from [192.168.0.11:10051] started to fail (cannot connect to [[192.168.0.11]:10051]: (null))". Если все настройки выполнены верно, но агент все равно не может соединиться с сервером, то скорее всего не добавлены порты 10050 и 10051 в исключение в файерволл на Zabbix-сервере. Для их добавления необходимо выполнить команду:


firewall-cmd --add-port={10051/tcp,10050/tcp} --permanent

VI. Дополнительные материалы

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


1. mysqld
2. nginx
3. php-fpm
4. zabbix-server
5. zabbix-agent

Проверить работу каждого можно командой sudo systemctl status компонент

Установка Zabbix 4.4 на CentOS 8

А сам фронтэнд (веб-интерфейс) Zabbix должен открыться в браузере.

Список некоторых файлов Zabbix и пути к ним :


Файл Назначение
/var/log/zabbix/zabbix_agentd.log лог-файл Zabbix-агента
/var/log/zabbix/zabbix_server.log лог-файл Zabbix-сервера
/etc/zabbix/zabbix_agentd.d/zbxpcp.conf Конфигурационный файл, подключающий zbxpcp.so
/etc/zabbix/zabbix_agentd.conf Конфигурационный файл Zabbix-агента
/etc/zabbix/zabbix_server.conf Конфигурационный файл Zabbix-сервера
/etc/zabbix/web/maintenance.inc.php Конфигурационный файл GUI Zabbix
/etc/zabbix/web/zabbix.conf.php Конфигурационный файл GUI Zabbix, настройки БД (включая логин и пароль), настройки zabbix-сервера
/run/zabbix/zabbix_agentd.pid Файл, в котором хранится идентификатор процесса zabbix-agentd
/run/zabbix/zabbix_server.pid Файл, в котором хранится идентификатор процесса zabbix-server
/usr/share/zabbix/ Папка пользовательской оболочки Zabbix. Содержит php-файлы.
/usr/lib/systemd/system/zabbix-agent.service Модульный файл zabbix-агента. Определяет порядок его загрузки и работы.
/usr/lib/systemd/system/zabbix-server.service Модульный файл zabbix-сервера. Определяет порядок его загрузки и работы.


Благодарю за внимание! Пишите ваши вопросы и замечания в разделе "Комментарии", предварительно авторизовавшись.



Просмотров: 5046

КОММЕНТАРИИ к "Установка Zabbix 4.4 на CentOS 8"

Чтобы оставить комментарий, вам необходимо зарегистрироваться на сайте.
Комментировать

ДРУГИЕ МАТЕРИАЛЫ ПО ТЕМЕ

IT-WIKI (16)

zabbix  >>>

ID материала: 12468 / Дата публикации: 08.04.2020 / Просмотров: 2245

Каталог, хранящий лог-файлы системы мониторинга Zabbix.

zabbix  >>>

ID материала: 12460 / Дата публикации: 08.04.2020 / Просмотров: 2033

Папка с html-файлами веб-оболочки системы мониторинга Zabbix.

zabbix  >>>

ID материала: 12443 / Дата публикации: 08.04.2020 / Просмотров: 1990

Хранит файлы с идентификаторами (PID) процессов системы мониторинга Zabbix.

zabbix_agentd.d  >>>

ID материала: 12437 / Дата публикации: 08.04.2020 / Просмотров: 609

Каталог агента системы мониторинга Zabbix.

zabbix  >>>

ID материала: 12436 / Дата публикации: 08.04.2020 / Просмотров: 2215

Каталог системы мониторинга Zabbix.

zabbix-server.target  >>>

ID материала: 12415 / Дата публикации: 08.04.2020 / Просмотров: 2798

Модульный файл zabbix-сервера. Определяет порядок его загрузки и работы.

zabbix-agent.target  >>>

ID материала: 12414 / Дата публикации: 08.04.2020 / Просмотров: 2739

Модульный файл zabbix-агента. Определяет порядок его загрузки и работы.

zabbix_server.pid  >>>

ID материала: 12406 / Дата публикации: 08.04.2020 / Просмотров: 2493

Файл, в котором хранится идентификатор процесса zabbix-server.

zabbix_agentd.pid  >>>

ID материала: 12405 / Дата публикации: 08.04.2020 / Просмотров: 2371

Файл, в котором хранится идентификатор процесса zabbix-agentd.

zabbix.conf.php  >>>

ID материала: 12404 / Дата публикации: 08.04.2020 / Просмотров: 2883

Конфигурационный файл GUI Zabbix, настройки БД (включая логин и пароль), настройки zabbix-сервера.

Статьи (4)

IT4XP / статьи

Файловые системы >>>

ID материала: 12469 / Дата публикации: 01.10.2020 / Просмотров: 3347


Материалы по Zabbix >>>

ID материала: 11937 / Дата публикации: 01.10.2020 / Просмотров: 3414


Zabbix. Возможные проблемы и неисправности. >>>

ID материала: 11938 / Дата публикации: 05.05.2020 / Просмотров: 7786






НАЗНАЧЕНИЕ КОРЗИНЫ

Корзина не предназначена для покупки товаров, поскольку сайт не занимается продажами.

Функция корзины заключается всборе компьютерных комплектующих в собственную базу (требуется регистрация на сайте) и сравнении их между собой.

Сбор компьютерных комплектующих в собственную базу: Эта фанкция необходима для виртуальной сборки компьютера. Требуется регистрация на сайте.

Сравнение комплектующих: Можно сравнить только комплектующие следующих групп: 1. Жёсткие диски. 2. Твердотельные диски. 3. Оперативная память. 4. Видеокарты. 5. Центральные процессоры. 6. Материнские платы.