Дарья Санькова@DariaSoln
Observability инженер
Информация
- В рейтинге
- Не участвует
- Откуда
- Москва, Москва и Московская обл., Россия
- Работает в
- Дата рождения
- Зарегистрирована
- Активность
Специализация
DevOps-инженер, Инженер по доступности сервисов
Git
SQL
Linux
Ansible
Grafana
Zabbix
Powershell
JavaScript
ELK Stack
Agile
Привет! Спасибо за интерес к материалу и классные вопросы)
Отвечу по порядку:
1. Почему мы выбрали Logstash, а не FluentBit/Data Prepper?
Существующая инфраструктура: На момент перехода у нас уже была настроена система на основе Logstash. Это позволило быстро мигрировать на OpenSearch без существенных изменений.
Гибкость обработки данных: Logstash обладает широкими возможностями по преобразованию и обогащению данных благодаря разнообразию фильтров и плагинов. Это важно для нас, так как работаем с разными типами логов и требуется сложная обработка.
Совместимость: Logstash хорошо интегрируется с OpenSearch, мы не столкнулись с проблемами при использовании.
2. Как мы решаем проблему разных типов данных в одном поле?
Честно говоря, это наша боль 😊 Пока "серебряная пуля" не найдена. То, что делаем сейчас:
Договорённости с источниками данных: Стараемся стандартизировать форматы логов и согласовывать их с командами, отправляющими данные.
Обработка на уровне кластера: Планируем использовать ingest pipelines в OpenSearch для преобразования данных при индексации.
На текущий момент всё ещё работаем над этим вопросом и надеемся внедрить более надёжное решение в будущем. С моим коллегой Сергеем Лацыгиным и нашим архитектором обсуждаем high-availability решение с кафкой и соглашением про логи.
3. Как мы описываем кодом создание ISM, index patterns, Snapshot policy и т.п.?
В рамках подхода IaC используется API OpenSearch для автоматизации:
ISM (Index State Management): Создаём политики через API, описывая их в JSON и применяя к индексам с помощью шаблонов.
Index Patterns: Хотя OpenSearch Dashboards не имеет полного API для управления index patterns, мы автоматизируем их создание с помощью скриптов или инструментов конфигурации.
Snapshot Policy: Настраиваем репозитории и политики снапшотов через API, обеспечивая регулярное резервное копирование.
Обсужу этот момент с коллегами - возможно созреем для статьи про снапшоты и политики индексов :)
Привет! Рекомендую обратить внимание на статью Запускаем кластер OpenSearch для централизованного хранения логов. Там как раз мой коллега подробно описал процесс настройки и конфигурирования кластеров OpenSearch, включая особенности работы с Logstash и OpenSearch Dashboards, и показал примеры конфигурационных файлов. Данная статья дополняет и объясняет некоторые теоретические моменты, которые не были там затронуты :)
Или можно сразу залезть в репозиторий - https://gitlab.com/max-ch-88/opensearch_cluster