bolt Valebyte VPS от $4/мес — NVMe, запуск за 60 секунд.

Получить VPS arrow_forward

Self-hosted Sentry: error tracking без подписки $30+

calendar_month 8 мая 2026 schedule 9 мин. чтения visibility 1958 просмотров
person
Valebyte Team
Self-hosted Sentry: error tracking без подписки $30+
summarize

TL;DR

  • Self-hosted Sentry экономит от $29 в месяц и гарантирует хранение данных внутри вашего контура (152-ФЗ).
  • Минимальные требования для 10–20 проектов: 8 ГБ RAM, 4 vCPU и 80 ГБ NVMe SSD для защиты от OOM Killer.
  • Использование NVMe SSD обязательно: медленные диски вызывают задержки в работе Kafka и ClickHouse.
  • Архитектура состоит из 25+ микросервисов, поэтому запуск на серверах с 4 ГБ RAM технически невозможен.
Для стабильной работы sentry self hosted на 10-20 проектов с объемом до 50 000 событий в месяц потребуется VPS с минимум 8 GB RAM, 4 vCPU и 80 GB NVMe-диска, что позволяет полностью отказаться от подписки Sentry.io стоимостью от $29/мес и получить полный контроль над данными.

Sentry — это индустриальный стандарт для мониторинга ошибок и производительности приложений (APM). Однако ценовая политика SaaS-версии часто становится барьером для растущих команд: начальный платный тариф стартует от $29, а бизнес-план — от $249 в месяц. Переход на sentry on premise позволяет не только сэкономить бюджет, но и соблюсти требования безопасности (GDPR, 152-ФЗ), так как трейсы ошибок и данные пользователей не покидают ваш контур.

Требования к железу: почему sentry self hosted требует 8GB RAM?

Развертывание свой sentry — это не просто запуск одного контейнера. Современная архитектура Sentry состоит из 25+ микросервисов, включая такие тяжеловесные компоненты, как Kafka, ClickHouse и Snuba. Попытка запустить систему на сервере с 4 GB RAM приведет к неминуемому срабатыванию OOM Killer в первые же часы работы.

Минимальные и рекомендуемые характеристики VPS

Для комфортной работы error tracking vps должен обладать запасом ресурсов. Ниже приведены требования, основанные на реальных бенчмарках при нагрузке 10-15 событий в секунду (EPS).

Характеристика Минимум (Dev/Small) Рекомендуемо (Production) High Load (100+ EPS)
CPU (vCores) 4 Cores (2.5 GHz+) 8 Cores 16+ Cores
RAM 8 GB 16 GB 32 GB+
Disk Type NVMe SSD NVMe SSD (RAID 1) NVMe SSD (Enterprise)
Disk Space 80 GB 200 GB 500 GB+
ОС Ubuntu 22.04 LTS Debian 12 / Ubuntu 24.04 Debian 12

Важно понимать, что ClickHouse и Kafka очень чувствительны к скорости дисковой подсистемы. Использование обычных HDD или медленных сетевых дисков приведет к огромным задержкам (lag) в обработке событий. Если вы планируете хранить логи долго, ознакомьтесь с темой переезда с AWS Lightsail на выделенные серверы, чтобы получить максимальный IOPS за те же деньги.

Архитектура sentry on premise: ClickHouse, Postgres и Kafka

Современный sentry on premise отошел от простой модели "Postgres + Redis". Теперь это сложный конвейер обработки данных. Понимание его устройства критично для траблшутинга и настройки retention-политик.

Роль компонентов в стеке

  • PostgreSQL: Хранит метаданные — пользователей, настройки проектов, ключи API, структуру команд. Сами ошибки здесь не лежат.
  • Redis: Используется как брокер для Celery-задач и кэширования промежуточных данных.
  • Kafka: Выступает в роли буфера. Все входящие события сначала попадают в Kafka, что позволяет Sentry выдерживать пиковые нагрузки без потери данных.
  • ClickHouse: Главное хранилище всех событий и таймингов. Именно благодаря ему Sentry мгновенно строит графики по миллионам записей.
  • Snuba: Сервис-прослойка, которая переводит запросы Sentry в SQL-запросы для ClickHouse.
  • Symbolicator: Обрабатывает нативные стектрейсы (C++, Rust, Android) и сопоставляет их с символами отладки.

Такое разделение позволяет масштабировать error tracking vps горизонтально, но на одном сервере требует жесткого лимитирования ресурсов для каждого Docker-контейнера. Если вы строите комплексную систему мониторинга, возможно, вам также будет интересно внедрить self-hosted аналитику без Google для полной независимости стека.

Ищете надёжный сервер для ваших проектов?

VPS от $10/мес и выделенные серверы от $9/мес с NVMe, DDoS-защитой и поддержкой 24/7.

Смотреть предложения →

Пошаговая установка через sentry docker compose

Официальный способ развертывания — репозиторий getsentry/self-hosted. Это набор скриптов, которые автоматизируют настройку sentry docker окружения, создание сетей и томов.

Шаг 1: Подготовка системы

Обновите пакеты и установите необходимые зависимости. Вам понадобятся Docker и Docker Compose (плагин V2).

sudo apt update && sudo apt upgrade -y
sudo apt install -y git curl build-essential

# Установка Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

Шаг 2: Клонирование и настройка

Мы будем использовать последнюю стабильную версию. Не рекомендуется использовать ветку master для продакшена.

git clone https://github.com/getsentry/self-hosted.git
cd self-hosted

# Проверка соответствия системным требованиям
# Скрипт install.sh сам проверит RAM, но лучше убедиться заранее

Шаг 3: Запуск инсталлятора

Скрипт ./install.sh выполнит миграции базы данных, настроит Kafka топики и создаст пользователя администратора. Процесс занимает от 10 до 20 минут в зависимости от скорости диска и процессора.

./install.sh

Во время установки вас попросят создать учетную запись администратора. Обязательно сохраните эти данные. После завершения запустите контейнеры:

docker compose up -d

После запуска ваш свой sentry будет доступен по адресу http://IP_ВАШЕГО_СЕРВЕРА:9000. Для работы в продакшене крайне рекомендуется настроить Reverse Proxy (Nginx или Traefik) с поддержкой SSL. Безопасность доступа к панели управления так же важна, как и защита паролей в команде через self-hosted Vaultwarden.

Быстрый выбор
Ищете сервер, который просто работает?
Valebyte VPS — NVMe, поддержка 24/7, запуск за 60 секунд.
Тарифы VPS

Миграция с SaaS (Sentry.io) на свой VPS

Многие команды начинают с бесплатного или дешевого тарифа на Sentry.io, но со временем упираются в лимиты. Перенести данные из облака в sentry self hosted можно, но с определенными нюансами. Прямого импорта базы "одной кнопкой" не существует из-за различий в версиях API и архитектуре ClickHouse в облаке.

Экспорт через API и CLI

Основной способ миграции — использование встроенной команды export. Однако она переносит только структуру (проекты, команды, ключи), но не сами исторические события ошибок.

  1. Создайте Auth Token в панели Sentry.io с правами org:read.
  2. Используйте Docker-контейнер Sentry для выполнения экспорта:
    docker compose run --rm web export /home/sentry-export.json
  3. Для облачной версии придется использовать API для выгрузки настроек проектов и воссоздания их локально через Terraform или кастомные скрипты на Python.

Смена DSN: критический этап

После поднятия sentry on premise у вас изменятся DSN (Data Source Name) для всех проектов. Вам придется обновить конфиги во всех микросервисах и фронтенд-приложениях. Если у вас много проектов на Next.js, процесс можно автоматизировать, следуя принципам миграции Next.js на свой VPS.

Совет: Не удаляйте сразу аккаунт в Sentry.io. Оставьте его как fallback на 2 недели, пока все клиенты не обновят закэшированные DSN в своих браузерах или приложениях.

Настройка Retention: как не забить диск логами

По умолчанию sentry docker хранит события 90 дней. При большом потоке ошибок (например, зацикленный фронтенд-баг у тысяч пользователей) ClickHouse может быстро "съесть" все свободное место на NVMe.

Изменение срока хранения данных

Настройки retention задаются в файле .env или напрямую в конфигурации Snuba. Чтобы изменить срок хранения на 30 дней (оптимально для большинства), отредактируйте переменные:

# В файле .env в директории self-hosted
SENTRY_EVENT_RETENTION_DAYS=30

После изменения необходимо перезапустить контейнеры и дождаться отработки worker-ов, которые очищают старые партиции в ClickHouse.

Очистка неиспользуемых данных

Иногда Docker-тома начинают занимать слишком много места из-за логов самих контейнеров. Используйте команду для очистки:

docker system prune -a --volumes --filter "label!=com.docker.compose.project=self-hosted"

Также полезно настроить ротацию логов Docker в /etc/docker/daemon.json, чтобы один контейнер не мог создать лог-файл на 50 GB.

Оптимизация производительности и тюнинг ClickHouse

Если ваш error tracking vps начинает тормозить, первым делом проверьте потребление памяти ClickHouse. По умолчанию он пытается занять до 50% доступной RAM. В условиях 8-16 GB сервера это может привести к конфликтам с Kafka.

В файле clickhouse/config.xml можно ограничить использование ресурсов:

<max_server_memory_usage>4000000000</max_server_memory_usage>
<max_thread_pool_size>8</max_thread_pool_size>

Для разработчиков, которые активно используют AI для исправления найденных в Sentry багов, отличным дополнением станет связка Continue.dev + Ollama, развернутая на том же или соседнем сервере. Это позволяет анализировать трейсы ошибок локальной нейросетью без отправки кода во внешний мир.

Мониторинг очередей Kafka

Если ошибки появляются в интерфейсе с задержкой в несколько минут, значит Kafka не успевает обрабатывать поток. Проверить это можно командой:

docker compose run --rm kafka kafka-consumer-groups --bootstrap-server kafka:9092 --describe --group snuba-consumers

Если поле LAG растет, вам нужно либо увеличивать количество ядер CPU, либо оптимизировать количество отправляемых событий на стороне клиента (sampling).

Быстрый выбор
Ищете сервер, который просто работает?
Valebyte VPS — NVMe, поддержка 24/7, запуск за 60 секунд.
Тарифы VPS

Выводы

Self-hosted Sentry — это мощное решение, которое окупается уже в первый месяц при наличии более 3-х активных проектов, требуя лишь качественный VPS с 8-16 GB RAM. Для стабильной работы критично использовать NVMe-диски и настроить retention-политику на 14-30 дней, чтобы избежать переполнения хранилища ClickHouse. Рекомендуется разворачивать Sentry на чистой ОС Ubuntu 22.04 через официальный инсталлятор, предварительно настроив Reverse Proxy для защиты данных.

SSD NVMe
Готовы запустить свой VPS?

NVMe VPS с активацией за 60 секунд: полный root-доступ, 20+ локаций, оплата картой или криптой.

Выбрать тариф

Поделиться записью:

support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.