We detected you are likely not from a Russian-speaking region. Would you like to switch to the international version of the site?

  Назад к списку статей

Построение полностью автономной системы мониторинга и алертинга в Termux с Prometheus, Alertmanager и Grafana

Создание комплексной системы мониторинга и оповещений прямо на вашем Android-устройстве с использованием Termux, Prometheus, Alertmanager и Grafana. Подробное руководство по установке, настройке и применению.

В современном мире мониторинг IT-инфраструктуры – критически важная задача. Часто требуется оперативно отслеживать состояние систем, серверов и приложений. В этой статье мы рассмотрим, как построить полностью автономную систему мониторинга и алертинга на базе Termux – эмулятора Linux для Android – используя мощные инструменты Prometheus, Alertmanager и Grafana. Данная система позволит вам контролировать различные параметры вашего устройства, а также, при необходимости, удаленных серверов (при наличии доступа). Важно! Подключение к удаленным серверам должно осуществляться строго в рамках правовых норм и с соблюдением всех необходимых разрешений.

Необходимые инструменты и подготовка

Для начала работы вам потребуется:

  • Android устройство с установленным Termux.
  • Аккаунт Termux (для установки пакетов).
  • Базовые знания Linux и командной строки.

Установите Termux из F-Droid (рекомендуемый способ, так как Play Market версия устарела). После установки запустите Termux и выполните следующие команды для обновления пакетов:

pkg update && pkg upgrade

Также установите необходимые пакеты:

pkg install proot wget curl jq vim

Установка и настройка Prometheus

Prometheus – это система мониторинга и алертинга с открытым исходным кодом. Скачиваем последнюю версию Prometheus:

wget https://github.com/prometheus/prometheus/releases/latest/download/prometheus-linux-arm64.tar.gz

Распаковываем архив:

tar -xvf prometheus-linux-arm64.tar.gz

Перемещаем исполняемый файл в директорию, доступную в PATH:

mv prometheus-linux-arm64/prometheus /data/data/com.termux/files/usr/bin/

Создаем конфигурационный файл prometheus.yml. Пример минимальной конфигурации:

cat > prometheus.yml << EOF
global:
  scrape_interval:     15s # Сканировать каждые 15 секунд.
  evaluation_interval: 15s # Оценивать правила каждые 15 секунд.

scrape_configs:
  - job_name: 'Termux'
    static_configs:
      - targets: ['localhost:9090'] # Настраиваем метрики Termux.
EOF

Запускаем Prometheus:

prometheus --config.file=/data/data/com.termux/files/home/prometheus.yml

Prometheus будет доступен по адресу http://localhost:9090.

Установка и настройка Node Exporter

Node Exporter – это экспортёр метрик системы. Скачиваем его:

wget https://github.com/prometheus/node_exporter/releases/latest/download/node_exporter-linux-arm64.tar.gz

Распаковываем и перемещаем исполняемый файл:

tar -xvf node_exporter-linux-arm64.tar.gz
mv node_exporter-linux-arm64/node_exporter /data/data/com.termux/files/usr/bin/

Запускаем Node Exporter:

node_exporter &

Node Exporter будет доступен по адресу http://localhost:9100.

Установка и настройка Grafana

Grafana – инструмент для визуализации данных. Установка Grafana в Termux требует некоторой подготовки. Мы будем использовать Docker для упрощения процесса. Сначала установим Docker:

pkg install docker

Затем запускаем Docker службу в Termux:

dockerd &

Теперь скачиваем и запускаем Grafana контейнер:

docker run -d -p 3000:3000 --name=grafana grafana/grafana

Grafana будет доступна по адресу http://localhost:3000. Логин и пароль по умолчанию: admin/admin.

В Grafana добавьте Prometheus как источник данных (Data Source), указав адрес http://localhost:9090.

Установка и настройка Alertmanager

Alertmanager обрабатывает алерты, сгенерированные Prometheus. Скачиваем Alertmanager:

wget https://github.com/prometheus/alertmanager/releases/latest/download/alertmanager-linux-arm64.tar.gz

Распаковываем и перемещаем исполняемый файл:

tar -xvf alertmanager-linux-arm64.tar.gz
mv alertmanager-linux-arm64/alertmanager /data/data/com.termux/files/usr/bin/

Создаем конфигурационный файл alertmanager.yml. Пример минимальной конфигурации:

cat > alertmanager.yml << EOF
global:
  resolve_timeout: 5m
route:
  receiver: 'slack'
receivers:
  - name: 'slack'
    slack_configs:
      - api_url: 'YOUR_SLACK_WEBHOOK_URL' # Замените на URL вашего Slack webhook.
EOF

Запускаем Alertmanager:

alertmanager --config.file=/data/data/com.termux/files/home/alertmanager.yml

Заключение

В этой статье мы рассмотрели, как построить полноценную систему мониторинга и алертинга в Termux. Это мощный инструмент для отслеживания состояния вашего устройства и, при необходимости, удаленных серверов. Не забывайте о необходимости соблюдения законодательства и получения всех необходимых разрешений при мониторинге удаленных ресурсов.

Если вам требуется помощь в настройке мониторинга, автоматизации инфраструктуры или обеспечении информационной безопасности, обратитесь к экспертам РыбинскЛАБ. Мы предлагаем широкий спектр услуг, включая разработку и внедрение систем мониторинга, аудит безопасности и консультации по оптимизации IT-инфраструктуры. Посетите наш сайт https://rybinsklab.ru для получения дополнительной информации.

* Текст статьи подготовлен и структурирован с использованием технологий искусственного интеллекта. Проверен и доработан перед публикацией.

Нужна помощь с настройкой Termux, Linux и серверов?

Я оказываю ИТ-услуги: настройка серверов, автоматизация, безопасность, помощь с Linux и инфраструктурой. Материалы сайта — только в ознакомительных и образовательных целях.

Связаться со мной
Поддержать проект