Установка Zabbix 4.2a + MySQL 8 + Apache на CentOS 7 - Geek-Speak

Главная Форумы SOFTWARE System settings Установка Zabbix 4.2a + MySQL 8 + Apache на CentOS 7

В этой теме 2 ответа, 2 участника, последнее обновление  Esmertec 1 месяц назад.

Просмотр 3 сообщений - с 1 по 3 (из 3 всего)
  • Автор
    Сообщения
  • #440

    Esmertec
    Хранитель

    В этой теме я расскажу как развернуть 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

    После этого должно точно заработать, если все данные были верно введены!

    На этом установка сервера завершена!

    Наглядный пример:

    • Тема изменена 10 мес., 1 неделя назад пользователем  Esmertec.
    • Тема изменена 10 мес., 1 неделя назад пользователем  Esmertec.
    • Тема изменена 10 мес., 1 неделя назад пользователем  Esmertec.
    • Тема изменена 10 мес., 1 неделя назад пользователем  Esmertec.

    Ты знаешь, что такое безумие? Безумие - это точное повторение одного и того же действия, раз за разом, в надежде на изменение.

    #934

    kramer75
    Участник

    1.в строке 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-agent

    #966

    Esmertec
    Хранитель

    1.в строке 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

    Чуть позже дополню мануал по этому поводу, т.к. инфу по настройке клиента на сервере не посчитал целесообразным описывать, если нужна информация можно было посмотреть видео в конце мануала. А по сути клиент на сервере вообще не нужен, т.к. не особо понятен смысл мониторинга самого сервера.

    Ты знаешь, что такое безумие? Безумие - это точное повторение одного и того же действия, раз за разом, в надежде на изменение.

Просмотр 3 сообщений - с 1 по 3 (из 3 всего)

Для ответа в этой теме необходимо авторизоваться.

Авторизация
*
*
Регистрация
*
*
*
Генерация пароля