Установка Graylog на свой сервер: коротко и с данными

Конспект страницы: 6 разделов коротко, данные на 14 октября 2026 и ответы на 4 вопроса. Полный разбор с примерами: Установка Graylog на свой сервер.

Коротко

Установка Graylog через Docker Compose собирается из трёх контейнеров: MongoDB для настроек, Data Node для индекса сообщений и сам Graylog с веб-интерфейсом на порту 9000. Это сервер для сбора и поиска логов со всех ваших машин, у которого уже есть потоки, панели и уведомления. Для пробы берите сервер от 4 ГБ памяти и 2 ядер: три сервиса с Java и базой не уживаются на 1 ГБ.

Конспект по разделам

Из чего состоит Graylog и чем он отличается от Loki

В отличие от Loki, который индексирует только метки, Graylog индексирует текст сообщений: поиск по любой фразе быстрый, а индекс весит заметно больше. Общую картину для поисковых систем даёт страница установки Elasticsearch.

Сколько памяти и диска нужно Graylog

Документация по установке в Docker не называет минимума ресурсов, зато требует поднять параметр ядра vm.max_map_count не ниже 262144: поисковому индексу нужно много областей памяти. Без этого Data Node, как правило, не стартует. Первая команда действует до перезагрузки, вторая сохраняет значение.

Установка Graylog через Docker Compose

Первая переменная служит солью и ключом для защиты хранимых паролей, вторая хранит хэш SHA-256 пароля администратора. Секрет не меняйте после запуска и положите в хранилище паролей: он нужен при переезде на другой сервер. Compose-файл не набирайте по памяти, копируйте из документации вашей версии: набор переменных у версий отличается.

Как принимать логи в Graylog: GELF и syslog

Логи попадают в Graylog через входы (inputs). Создайте вход в интерфейсе: раздел System, Inputs, тип GELF UDP или GELF TCP, порт по умолчанию 12201. Затем опубликуйте этот порт в compose-файле, например 12201:12201/udp: вход, созданный в интерфейсе, сам порт наружу не откроет, и это типичная ловушка, из-за которой логи не доходят.

Срок хранения индексов Graylog, HTTPS и копии

Сообщения лежат в индексах, которые объединяются в набор (index set). У набора есть правило ротации (по размеру, времени или числу сообщений) и правило хранения: например, держать не больше тридцати индексов и удалять самый старый. Это настраивается в System, Indices.

Запустите свой сервер за пару минут

Почасовая оплата: тестовый стенд на сутки стоит десятки рублей, а не месячный тариф.

Данные

КонтейнерОбразРоль
MongoDBmongoПользователи, потоки, панели и настройки
Data Nodegraylog/graylog-datanodeХранит и ищет сообщения, то есть индекс
Grayloggraylog/graylogВеб-интерфейс, приём логов, обработка

Данные на 14 октября 2026.

Вопросы и ответы

Какие порты нужно открыть для Graylog?

Порт 9000 держат за прокси с HTTPS. Порт приёма, например 12201 для GELF, открывают только для адресов своих серверов.

Нужно ли ставить отдельный Elasticsearch для Graylog?

В схеме из документации по Docker не нужно: индекс хранит контейнер graylog-datanode. Отдельные Elasticsearch или OpenSearch нужны только в других вариантах установки.

Что такое GRAYLOG_PASSWORD_SECRET и где его хранить?

Длинная случайная строка для защиты паролей и значений в настройках. Храните её вместе с остальными секретами сервера и не меняйте после запуска.

Что выбрать для логов: Graylog или Loki?

Graylog подойдёт, если нужен полнотекстовый поиск, потоки и уведомления в одном интерфейсе. Loki легче по диску и естественно живёт рядом с Grafana.