· 13 мин чтения

OpenSearch вместо Elasticsearch для офисных логов: почему мы всем клиентам ставим форк

Меня зовут Семёнов Евгений Сергеевич, директор АйТи Фреш. Внутри компании с 2022 года у нас действует правило — новым клиентам не ставим Elasticsearch, только OpenSearch. Разница функциональная минимальна, но юридически, лицензионно и финансово это другой мир. В статье расскажу, почему мы так решили, как собрали стек у клиента — транспортной компании с 45 РМ — и что реально ловит система.

История «лицензионной драмы» Elasticsearch

Если коротко. До января 2021 года Elasticsearch был под полностью свободной лицензией Apache 2.0. Amazon в своём AWS Elasticsearch Service зарабатывал на этом большие деньги, ничего не платя Elastic. Elastic решил, что это несправедливо, и сменил лицензию на SSPL (Server Side Public License) + Elastic License 2.0. Эти лицензии несовместимы с Open Source Definition и запрещают использовать ES как managed-сервис конкурентам Elastic.

Amazon в ответ взял последнюю Apache-версию (7.10) и форкнул её под именем OpenSearch. С тех пор OpenSearch и Elasticsearch развиваются параллельно: разные разработчики, но общий API-фундамент. OpenSearch — open source под Apache 2.0 навсегда.

Для SMB это важно потому, что:

Что собирается в OpenSearch у типичного SMB-клиента

Когда мы разворачиваем стек, собираем:

ИсточникЧто даёт
Windows Event LogsСобытия входа, изменения AD, запуск служб
SysmonДетальный аудит запуска процессов, сетевых соединений
Linux syslog + journaldСистемные события на серверах
Nginx/Apache access/errorТрафик на внутренних веб-сервисах
Логи 1С (technological journal)Ошибки, медленные запросы, блокировки
Postfix/DovecotПочтовый трафик, спам, деливерабельность
Firewall (pfSense, Mikrotik)Сетевые потоки, заблокированные соединения
PostgreSQL/MSSQLМедленные запросы, dead tuples, ошибки
Audit Docker/KubernetesЗапуски контейнеров, изменения deployments

Архитектура, которую мы поставили клиенту

Клиент — транспортная компания, 45 сотрудников, 8 серверов (3 Windows для AD, 1С, файлов + 5 Linux для веба, мониторинга, 1С-базы). Собрали однонодовый кластер (для 45 РМ бессмысленно делать multi-node, hardware overhead слишком большой):

Месячная стоимость инфраструктуры — 8 400 ₽. Никаких лицензий. Никаких годовых подписок. Только аренда железа.

Что мы сразу нашли в логах

Первая пользовательская история: через 48 часов после запуска клиент увидел в логах то, о чём не подозревал 2 года. На контроллере домена обнаружили регулярные попытки подбора паролей (events 4625) с одного из рабочих мест бухгалтерии — оказалось, у сотрудницы на ноутбуке сидел подсоединённый принтер с устаревшей прошивкой, который пытался авторизоваться сохранённым 4 года назад паролем.

Второе открытие: логи 1С показали, что один конкретный отчёт «Остатки склада на дату» выполняется по 40 секунд из-за отсутствия индекса — об этом никто не задумывался, пока логи не показали 38 таких запросов в час от одного сотрудника. Починили SQL-индекс за 15 минут, отчёт начал открываться за 0,8 секунды.

Третье — nginx на внутреннем портале компании показывал ежедневно 3–4 тысячи попыток обратиться к несуществующим путям /.env, /admin.php, /wp-login.php. Это были сканы ботов из интернета. Хотя этот портал был для своих, он торчал в интернет и его никто не защищал. Поставили ограничение по IP через nginx + fail2ban.

Дашборды, которые получил директор

Через неделю мы собрали в Dashboards три ключевых панели для руководства:

Теперь директор каждый понедельник утром смотрит эту страницу и задаёт нам вопросы по недельным аномалиям. В 80% случаев аномалии — это реальные проблемы, которые без OpenSearch остались бы незамеченными.

Оповещения и алерты

OpenSearch Alerting — отдельный плагин в комплекте. Настроили правила:

В среднем в Telegram падает 2–4 алерта в сутки. Это много для автоматизации (часть можно автодопустить или автоподавить), но они почти все содержат реальную полезную информацию.

Что делает OpenSearch, а что не делает

OpenSearch — это не мониторинг в классическом смысле (Zabbix/Prometheus), а хранилище для поиска и аналитики по логам. Ключевое отличие:

Обычно оба нужны. В нашем кейсе Zabbix уже стоял, OpenSearch добавили сверху. Они не конкурируют — они дополняют друг друга.

Стоимость и сроки

ЭтапСрокСтоимость
Проектирование и подбор серверов0.5 дня8 000 ₽
Установка OpenSearch + Dashboards0.5 дня10 000 ₽
Настройка Fluent Bit/WinLogBeat на всех хостах1 день22 000 ₽
Парсеры логов 1С, Nginx, файрвола1 день22 000 ₽
Дашборды для директора + 3 для админа1 день20 000 ₽
Настройка алертов в Telegram0.5 дня10 000 ₽
Обучение и документация0.5 дня3 000 ₽
Итого5 дней95 000 ₽

Грабли, на которые наступили

Что мы ведём на абонентке

Хотите посмотреть, что происходит в ваших логах?

Поставлю бесплатный тестовый OpenSearch на 7 дней к вам — посмотрим, что реально творится в инфраструктуре. Часто в первые 2–3 дня находится 3–5 серьёзных проблем. Аудит — по Москве и МО.

Телефон: +7 903 729-62-41
Telegram: @ITfresh_Boss
Семёнов Евгений Сергеевич, директор АйТи Фреш

FAQ

Чем OpenSearch отличается от Elasticsearch?
OpenSearch — форк Elasticsearch 7.10, поддерживаемый Amazon и сообществом. Функционально идентичен ES 7.10, плюс Security, Alerting, Anomaly Detection бесплатно.
Почему не ставить свежий Elasticsearch?
С 7.11 Elasticsearch под SSPL/Elastic License. Платная подписка от $16 за узел в час. Для SMB — бессмысленно.
Сколько места нужно под логи офиса на 45 человек?
Около 4 ГБ/день в индексе с репликой. За 90 дней — ~360 ГБ. Укладывается в 500 ГБ NVMe.
Сколько стоит проект в АйТи Фреш?
Базовое внедрение на 45 РМ и 8 серверов — 95 000 ₽, срок 4–5 дней. Сопровождение на абонентке.