Установка Zabbix на Raspberry Pi - независимо от того зачем вы это делаете. Тестов ли ради или же для продакшена, процесс разбивается на несколько этапов.
Собственно нулевым этапом можно назвать установку Raspbian 10 на саму Raspberry Pi. И активацию доступа к малине через SSH. После подключения к распберри по SSH и начинается сама установка Zabbix на Raspberry Pi
1. Устанавливаем PostgreSQL сервер
Для работы Zabbix Server нужен Сервер Управления Базами Данных (СУБД). Если у нас нету внешнего СУБД, мы ставим его локально на нашу малину
sudo apt update
sudo apt install postgresql
2. Устанавливаем веб-сервер Apache2
Apache2 нам понадобится для того чтобы запустить фронтенд. Без фронтенда заббикс не столь красочен как хотелось бы :)
sudo apt install apache2
Устанавливаем часовой пояс
Открываем на редактирование php.ini
sudo nano /etc/php/7.3/apache2/php.ini
В конце добавляем строку. Подставьте свою тайм зону в случае отличия.
date.timezone = Europe/Moscow
Устанавливаем PHP
Ещё один необходимый для работы фронтенда элемент.
sudo apt install php libapache2-mod-php
Установка Zabbix на Raspberry Pi - Устанавливаем репозиторий
Вот с этого момента и начинается непосредственно установка Zabbix на Raspberry Pi, с установки репозитория
wget https://repo.zabbix.com/zabbix/5.0/raspbian/pool/main/z/zabbix-release/zabbix-release_5.0-1+buster_all.deb
sudo dpkg -i zabbix-release_5.0-1+buster_all.deb
sudo apt update
Устанавливаем компоненты Zabbix
Помним что в качестве БД мы будем использовать PostgreSQL. Помимо самого сервера я сразу установлю агент, и фронтенд заббикса
sudo apt install zabbix-server-pgsql zabbix-frontend-php php7.3-pgsql zabbix-apache-conf zabbix-agent
Создаём БД PostgreSQL
sudo -u postgres createuser --pwprompt zabbix
sudo -u postgres createdb -O zabbix zabbix
После первой команды вам нужно будет ввести пароль который заббикс будет использовать при доступе к БД
Импортируем начальную схему
zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix
Ждём, на Raspberri Pi это процесс не быстрый
Настраиваем доступ Zabbix Server к БД
Открываем на редактирование конфиг файл сервера
sudo nano /etc/zabbix/zabbix_server.conf
В строку DBPassword вводим пароль который мы придумали на этапе 'Создаём БД PostgreSQL'. Чтобы быстрее найти нужную строку, в nano можно использовать комбинацию клавиш Ctrl+W
Включаем автозапуск и перезапускаем службы
systemctl restart zabbix-server zabbix-agent apache2
systemctl enable zabbix-server zabbix-agent apache2
Настраиваем фронтенд
Переходим в браузере по адресу http://<ip raspberry>/zabbix
- Страница Welcome
Жмём Next Step - Страница Check of pre-requisites
Если всё сделано правильно, то везде будет OK. Жмём Next step - Страница Configure DB connection
Устанавливаем в Password пароль который мы придумали на 4м этапе.
Жмём Next step - Страница Zabbix server details
Можно ничего не менять и сразу нажать Next step, или же можно задать имя сервера. Я назвал его Bonsai Raspberry - Страница Pre-installation summary
Суммарная информация о нашей установке. Прочитав жмём - Страница Install
Смотрим подтверждение установки, тут же показано где создался файл zabbix.conf.php. Жмём Finsh
Авторизуемся в веб интерфейсе Zabbix Server
Стандартные логин и пароль будут Admin \ zabbix
Радуемся
Если перейти в Monitoring > Hosts и в списке в строке Zabbix Server нажать на Graphs, мы увидим телеметрию нашей Zabbix Server. А так как Zabbix Server стоит на Raspberry Pi, это телеметрия Raspberry Pi.
Да, всё не очень то и летает. Но опять же устанавливая Zabbix Server на распберри пи, я уверен что вы отдаёте себе отчёт зачем это делается. У меня Raspberry Pi 3B с MicroSD карточкой 10й категории объёмом 16GB. Нужно понимать что непрерывная запись телеметрии в БД, хранимой на флеш карте, рано или поздно приведёт к износу этой карты и выходу всей малины из строя. Вообще я рекомендую открепить стандартный шаблон мониторинга Zabbix Server от распберри и сделать свой, куда войдёт только то что нужно. Это и сильно сократит нагрузку Zabbix Agent'а на ЦПУ малины, а так же уменьшит количество данных записываемых в БД.
Задавайте вопросы, ставьте лайки если запись вам понравилась :). Не забывайте подписываться и репостить запись :)