Zabbix
Zabbix — свободная система мониторинга и отслеживания статусов разнообразных сервисов компьютерной сети, серверов и сетевого оборудования, написанная Алексеем Владышевым. Для хранения данных используется MySQL, PostgreSQL, SQLite или Oracle Database, веб-интерфейс написан на PHP.
В данной ... действия будут происходить на Ubuntu 22.04. Все действия выполняются от root-пользователя
Что может Zabbix и почему он хорош?
- Можно провести абсолютный контроль сетей на тысячи, миллионы устройств. Иерархические деревья могут быть построены так, чтобы их старшие узлы определяли параметры в системе контроля младших узлов.
- Сделать мониторинг на огромный кластер не так просто. Поэтому существуют удобные группы, которые имеют способ настроить систему контроля за количеством серверов — выбрал шаблон с пометкой серверов из него или добавил в него пачку серверов, и готово все настроилось само.
- Способов опрашивать целевые машины на предмет метрик есть два: агенты рапортуют в Zabbix или Zabbix сам опрашивает агентов.
- Осуществляется контроль динамических объектов — в том случае, что есть функция контроля за состоянием файлов/соединений/папок или процессами.
- Zabbix способен оповестить о неприятностях быстро, в случае случилось что-то не так. Обычно можно получить уведомления по почте, есть также иные способы (например, по протоколу XMPP — любому администратору стоит сидеть в Jabber!).
- С помощью удаленного выполнения команд можно отремонтировать поломку. Не нужно долго вспоминать ключи доступа к сломавшемуся серверу, чтобы подцепить неисправную машину.
- В наличии имеется удобный анализ системных логов и журналов, а также возможность диагностики неисправностей. Всю важную для администратора информацию агенты всегда передадут на головную машину Zabbix.
- В систему можно добавить любые необходимые функции – есть плагины и скрипты. Удобное автоматизированное выполнение команд в консоли на серверном уровне. Не существует такой вещи, которую нельзя было бы обучить Zabbix.
- Есть API — это значит, что можно подключать к компьютеру внешние средства обработки информации и визуализатор.
Подготовка
Для начала, обновите список пакетов в репозиториях и сами пакеты:
apt update; apt upgrade -y
Установка репозитория Zabbix 6.2
Выполните команды ниже, для загрузки пакета репозитория Zabbix для Ubuntu, установки загруженного пакета и обновления списка репозиториев:
wget https://repo.zabbix.com/zabbix/6.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.2-2%2Bubuntu22.04_all.deb dpkg -i zabbix-release_6.2-2+ubuntu22.04_all.deb apt update
Установка Zabbix Server, Zabbix веб-интерфейс и Zabbix Агент
Для установки вышеперечисленных пакетов введите команду:
apt install zabbix-server-pgsql zabbix-frontend-php php8.1-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-agent
Удалите Apache (он устанавливается автоматически, однако в дальнейшем не требуется):
apt autoremove apache2 -y
Установка PostgreSQL 14
Установите репозиторий PostgreSQL, сделайте это командой:
echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list
Добавьте ключ репозитория командой:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -
И установите PostgreSQL командой:
apt update; apt -y install postgresql-14
Настройка PostgreSQL для работы с Zabbix
Создайте пользователя zabbix в PostgreSQL, выполнив команду:
sudo -u postgres createuser --pwprompt zabbix
После ввода команды у Вас попросит ввести пароль от новосозданного пользователя, в данном случае паролем будет AezaZabbixGuide
Сохраните его, он понадобится в дальнейшем
Затем, создайте базу данных zabbix с использованием пользователя zabbix командой:
sudo -u postgres createdb -O zabbix zabbix
Выполните автоматическую настройку базы данных командой:
zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix
Настройка Zabbix для работы с БД
Откройте файл конфигурации Zabbix с использованием nano:
nano /etc/zabbix/zabbix_server.conf
В любое место файла вставьте содержимое ниже, где AezaZabbixGuide - пароль от ранее созданной базы данных:
DBPassword=AezaZabbixGuide
Затем, сохраните файл, нажав комбинацию клавиш Ctrl-X, а затем подтвердите сохранение введя y и нажав Enter.
Настройка веб-интерфейса
Откройте файл конфигурации Nginx веб-интерфейса Zabbix используя nano:
nano /etc/zabbix/nginx.conf
Обязательно раскомментируйте строку 1 для работы веб-интерфейса на 8080 порту. Порт 8080 можете изменить на любой удобный вам.
Также опционально вы можете раскомментировать строку 2 для привязки веб-интерфейса к вашему домену. Смените _ на ваш домен. Привязка веб-интерфейса к вашему домену в данной ... не рассматривается.
Сохраните изменения нажав комбинацию клавиш Ctrl-X, а затем подтвердите сохранение введя y и нажав Enter.
Запуск Zabbix служб
Введите команду ниже что бы применить все изменения в конфигурациях и перезапустить все службы, необходимые для работы Zabbix:
systemctl restart zabbix-server zabbix-agent nginx php8.1-fpm
А также активируйте автозапуск служб Zabbix при запуске ОС командой:
systemctl enable zabbix-server zabbix-agent nginx php8.1-fpm
Продолжение установки в веб-интерфейсе
После запуска веб-интерфейса Zabbix откройте сам веб-интерфейс. Для этого необходимо в браузере открыть URL-адрес формата ниже:
http://IPАдресСервера:ПОРТ
Например, в данном случае, порт по умолчанию (8080) не изменялся, URL-адрес будет таким:
http://45.142.122.3:8080
Вы попадёте на страницу продолжения установки Zabbix:
Перейдите к следующему шагу и убедитесь, что все параметры работают и веб-сервер поддерживает работу с PostgreSQL
Перейдите к следующему шагу, в поле Password введите пароль от ранее созданной базы данных zabbix (В данной ... пароль от БД: AezaZabbixGuide)
Также опционально вы можете включить шифрование для БД:
Перейдите к следующему шагу, настройте часовой пояс и другие параметры:
Перейдите к последнему шагу и подтвердите, что все введенные данные верны:
Готово! Если вы видите текст, подобный тексту ниже, значит вы все сделали правильно:
Авторизация и использование веб-интерфейса
После завершения установки авторизуйтесь в веб-интерфейсе используя стандартные авторизационные данные (позже вы узнаете, как их сменить):
Готово! Вы авторизовались в веб-интерфейсе и можете полноценно использовать Zabbix
Однако крайне рекомендуется сменить пароль стандартного пользователя. Для этого в боковом меню откройте раздел User settings, пункт Profile:
Затем, в открывшемся меню нажмите кнопку Change password:
Затем. введите новый пароль и продублируйте его.