Как стать автором
Обновить

Как запустить Zabbix Proxy на Mikrotik

Уровень сложностиПростой

В RouterOS появилась поддержка контейнеров — теперь можно запускать Zabbix Proxy прямо на MikroTik. Это удобно для удалённых площадок без отдельного сервера или мини-ПК.

С выходом поддержки контейнеров в RouterOS, у пользователей появилась возможность запускать Zabbix Proxy прямо на роутерах MikroTik. Это особенно удобно для удалённых площадок, где нет отдельного сервера или мини-ПК. В данной статье я расскажу, как развернуть Zabbix Proxy на MikroTik с архитектурой ARM64, используя образ на базе SQLite3.

Требования

  1. MikroTik с архитектурой ARM64

  2. RouterOS версии 7.5 и выше

  3. Пакет container установлен и настроен

  4. Память для размещения контейнера


Шаг 1. Выделение RAM под контейнер

Для хранения данных контейнера мы будем использовать RAM-диск. MikroTik позволяет выделить часть оперативной памяти для этого. Подробности — в официальной документации MikroTik или тут

Шаг 2. Выбор Docker-образа Zabbix Proxy

Заходим на официальный сайт Zabbix:

Переходим на нужный репозиторий. В моем случае zabbix proxy sqlite3.

Далее — попадаем на страницу Docker Hub, где можно:

  • Посмотреть инструкции по запуску и настройки

  • Перейти в раздел Tags и выбрать версию и базовую ОС

Я выбрал:
Версия: 7.2.4
ОС: alpine
Команда для скачивания образа:

docker pull zabbix/zabbix-proxy-sqlite3:7.2.4-alpine

Шаг 3. Создание переменных окружения

Для настройки Zabbix Proxy необходимо задать параметры через переменные окружения. Это можно сделать в интерфейсе MikroTik или через терминал.

Пример через терминал:

/container/envs/add name="zbx-proxy-env" key="ZBX_SERVER_HOST" value="IP-ZABBIX-СЕРВЕРА"
/container/envs/add name="zbx-proxy-env" key="ZBX_HOSTNAME" value="giga-zabbix"
/container/envs/add name="zbx-proxy-env" key="ZBX_DEBUGLEVEL" value="3"

Описание переменных:

ZBX_SERVER_HOST — IP-адрес Zabbix-сервера

ZBX_HOSTNAME — имя прокси, должно совпадать с именем, которое вы укажете при добавлении прокси на сервере

ZBX_DEBUGLEVEL — уровень логирования (3 — стандартный уровень отладки)

Шаг 4. Добавление контейнера

Через GUI в RouterOS:

Remote Image: zabbix/zabbix-proxy-sqlite3:7.2.4-alpine

Interface: ваш сетевой интерфейс

Envlist: zbx-proxy-env

Hostname: zabbix-proxy (или любое имя)

Root Dir: путь к ранее созданной директории

Logging: yes

Start On Boot: yes

Через терминал:

/container/add remote-image="zabbix/zabbix-proxy-sqlite3:7.2.4-alpine"
interface=your-interface envlist="zbx-proxy-env" hostname="zabbix-proxy"
root-dir=your-root-dir logging=yes start-on-boot=yes

Нажимаем Apply — начнётся загрузка и развёртывание контейнера. После загрузки, запускаем контейнер.

Шаг 5. Проверка логов и подключение к серверу

Если всё настроено корректно, но прокси ещё не создан на сервере, в логах MikroTik появится сообщение:

cannot send proxy data to server at "IP-ZABBIX-СЕРВЕРА": proxy "ZBX_HOSTNAME" not found

Это значит, что необходимо:

  1. Зайти на Zabbix-сервер

  2. Перейти в Configuration → Proxies

  3. Добавить новый proxy с именем, указанным в ZBX_HOSTNAME

После этого в логах появится:

received configuration data from server at "IP-ZABBIX-СЕРВЕРА"

Это означает, что прокси успешно подключился и получил конфигурацию от сервера.

Заключение

Поздравляю, вы успешно развернули Zabbix Proxy в контейнере на MikroTik! Теперь можно настраивать элементы данных, хосты и наслаждаться мониторингом.

Теги:
Хабы:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.