Главная › Форумы › SOFTWARE › System settings › Установка Zabbix 4.2a + MySQL 8 + Apache на CentOS 7
- В этой теме 2 ответа, 2 участника, последнее обновление 5 лет, 2 месяца назад сделано E-tec.
-
АвторСообщения
-
06.12.2018 в 14:36 #440
В этой теме я расскажу как развернуть Zabbix сервер на CentOS linux. Я использую (как всегда) минимальный для установки образ, на этот раз это будет CentOS-7-x86_64-Minimal-1810, скачать можно на оф. сайте CentOS. Для начала подготовим ОС для развертывания zabbix и скачаем необходимые для удобства пакеты:
# yum update # yum install ssh mc net-tools nano wget
Первым делом нужно отключить фаервол CentOS и и убрать его с авто загрузки, можно конечно поиграть с его правилами, но проще его выключить совсем:
# systemctl stop firewalld # systemctl disable firewalld
Теперь нужно добавим репозиторий zabbix в нашу CentOS:
# rpm -Uvh http://repo.zabbix.com/zabbix/4.1/rhel/7/x86_64/zabbix-release-4.1-1.el7.noarch.rpm
Установим сервер с заббиксом
# yum install zabbix-agent zabbix-server-mysql zabbix-web-mysql
Сейчас, можно немного поправить конфиг apache (можно собственно не лезть и не менять нечего):
# nano /etc/httpd/conf.d/zabbix.conf
Нужно убрать комментарий со строки, выставить таймзону своего региона:
В этой строке прописываем свою временную зону, я вписал Asia/Yekaterinburg. Как это сделаете, нужно перезагрузить апач:
# service httpd restart
Добавим сразу демон httpd в автозагрузку, чтоб его не мучать в следующие разы:
# systemctl enable httpd
Устанавливаем mysql
# wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
После завершения скачивания вы должны увидеть, что файл .rpm был сохранён. Теперь нам нужно подготовить репозиторий, чтобы позже мы смогли установить пакет MySQL в него. Наберите:
# rpm -Uvh mysql80-community-release-el7-1.noarch.rpm
Как только 100% достигнуто, можно переходить к установке MySQL на вашем сервере.
# yum install mysql-server
Если вы увидите сообщение Complete! в конце процесса установки, это будет означать, что установка MySQL на вашем сервере прошла успешно. Теперь надо запустить sql сервер командой:
# systemctl start mysqld
Команда systemctl не показывает вывод некоторых команд. Чтобы убедиться, что демон запущен, введите:
# systemctl status mysqld
Если сервер MySQL был запущен, в выводе команды будут строки:
Примечание: Автозапуск MySQL настраивается самостоятельно во время установки. Чтобы отключить автозапуск, введите:
# systemctl disable mysqld
Во время установки MySQL генерирует временный пароль для root-пользователя. Найдите его в mysqld.log с помощью команды:
# grep 'temporary password' /var/log/mysqld.log 2016-12-01T00:22:31.416107Z 1 [Note] A temporary password is generated for root@localhost: mqRfBU_3Xk>r
Запишите пароль, чтобы пройти аутентификацию. Конечно, этот пароль нужно заменить более сложным. Стандартная политика требует, чтобы пароль состоял из 12 символов (включая буквы верхнего и нижнего регистра, цифры и специальные символы). Подключаемся к БД
# mysql -proot -p
Меняем временный пароль, на свой командой:
> ALTER USER 'root'@'localhost' IDENTIFIED BY 'PASSWORD';
Далее создаем новую базу данных и пользователя:
> create database zabbix character set utf8 collate utf8_bin; > create user zabbix@localhost identified with mysql_native_password by 'PASSWORD';
Дадим права новому пользователю и перезапустим список привилегий
> grant all privileges on zabbix.* to zabbix@localhost; > FLUSH PRIVILEGES;
Выходим из mysql командой quit.
Импортируем данные в созданную БД:
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix
Вводим пароль пользователя zabbix из mysql и ждем пока закончится импорт базы данных… (У меня импорт занял около 10 минут, набираемся терпением и ждем).Далее идем в конфигурацию zabbix-server
nano /etc/zabbix/zabbix_server.conf
ищем строки отвечающие за подключение к базе данный mysql и дописываем пароль для подключения пользователя zabbix
После того как база импортировалась запускаем zabbix # systemctl start zabbix-server # systemctl enable zabbix-server
Смотрим логи zabbix-server
# cat /var/log/zabbix/zabbix_server.log
Если есть в логе есть ошибки с строками как у меня ниже
Идем настраивать SELinux. Это нормально, сейчас настроим SELinux для нормальной работы Zabbix. Для этого устанавливаем пакет policycoreutils-python, скачиваем готовый модуль для SELinux и применяем его. # yum install policycoreutils-python # cd ~ # curl https://support.zabbix.com/secure/attachment/53320/zabbix_server_add.te > zabbix_server_add.te # checkmodule -M -m -o zabbix_server_add.mod zabbix_server_add.te # semodule_package -m zabbix_server_add.mod -o zabbix_server_add.pp # semodule -i zabbix_server_add.pp
Теперь нам надо перезапустить zabbix-server.
# systemctl restart zabbix-server
Снова проверяйте log файл. Теперь ошибок быть не должно. Как я уже сказал, если у вас отключен SELinux, то делать описанные выше манипуляции с модулем не надо.
Идем в браузер на IP адрес сервера zabbix в моем случае это 192.168.1.111
http://192.168.1.111/zabbix
начинаем установку сервера
выполняем шаги установки в веб интерфейсе по очереди, соблюдая все правила, обратить внимание на подключение к MySQL правильно введите все данные, как закончили подключаемся к zabbix серверу через web интерфейс (стандартный логин Admin пароль zabbix), если в панели управления видим надпись Zabbix сервер запущен НЕТ, выполянем следующие действия:
# nano /etc/zabbix/web/zabbix.conf.php
Ищем строки:
$ZBX_SERVER = 'Пишем IP адрес сервера вместо localhost'; $ZBX_SERVER_PORT = '10051'; $ZBX_SERVER_NAME = 'Пишем название сервера, если не указали ранее';
Перезагружаем zabbix сервер
# service zabbix-server restart
Если не помогло, копаем дальше… Проверьте, чтобы все параметры базы данных в zabbix.conf.php(/etc/zabbix/web/zabbix.conf.php) и zabbix_server.conf(/etc/zabbix/zabbix_server.conf) были правильные. В том числе: DBHost, DBName, DBUser, DBPassword.
Измените параметры SElinux:
# setsebool -P httpd_can_network_connect on # setsebool -P httpd_can_connect_zabbix 1 # setsebool -P zabbix_can_network 1
После этих команд нужно перезапустить zabbix-server и httpd сервер
# service zabbix-server restart # service httpd restart
После этого должно точно заработать, если все данные были верно введены!
На этом установка сервера завершена!
Настройку клиентов смотрим -> ТУТНаглядный пример:
01.08.2019 в 17:55 #9341.в строке yum install ssh mc net-tools nano wget
ssh не установится , видать лишнее
2. в строке yum install zabbix-agent zabbix-server-mysql zabbix-frontend-php zabbix-web-mysql
пакет zabbix-frontend-php не находит. Вроде он для Debian\Ubuntu.
3. по такому замечанию systemctl disable mysqld после перезагрузки ПК sql и следственно zabbix работать не будет. и не работало.
поставил по инструкции, кроме вышеизложеного появилась ошибка при регистрации zabbix server в вебпанели «Get value from agent failed: cannot connect to [[127.0.0.1]:10050]: [111] Connection refused
нужно запустить агента: systemctl start zabbix-agent
и в автозагрузку его вставить: systemctl enable zabbix-agent12.09.2019 в 16:22 #9661.в строке yum install ssh mc net-tools nano wget
ssh не установится , видать лишнее
Нет, не лишнее, хотя смотря какой именно дистриб Вы использовали, наглядный пример можете посмотреть, все пакеты ставятся как в мане, проверял не однократно, ман запилил
2. в строке yum install zabbix-agent zabbix-server-mysql zabbix-frontend-php zabbix-web-mysql
пакет zabbix-frontend-php не находит. Вроде он для Debian\Ubuntu.
Действительно, этот пакет есть, только в репозиториях zabbix 4.0, для 4.2 похоже он не нужен. Проверил дополнительно, пакет не найден. Спасибо за информацию удалю из мануала!
3. по такому замечанию systemctl disable mysqld после перезагрузки ПК sql и следственно zabbix работать не будет. и не работало.
Естественно, на то это и было выделено в Примечание, для тех кто хочет обновить или просто остановить демона
поставил по инструкции, кроме вышеизложеного появилась ошибка при регистрации zabbix server в вебпанели “Get value from agent failed: cannot connect to [[127.0.0.1]:10050]: [111] Connection refused
нужно запустить агента: systemctl start zabbix-agent
и в автозагрузку его вставить: systemctl enable zabbix-agentЧуть позже дополню мануал по этому поводу, т.к. инфу по настройке клиента на сервере не посчитал целесообразным описывать, если нужна информация можно было посмотреть видео в конце мануала. А по сути клиент на сервере вообще не нужен, т.к. не особо понятен смысл мониторинга самого сервера.
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.