...

Elastic stack что это за программа

Что такое ELK?

ELK – это аббревиатура, используемая для описания стека из трех популярных проектов: Elasticsearch, Logstash и Kibana. Стек ELK, зачастую именуемый Elasticsearch, предоставляет возможность собирать журналы всех ваших систем и приложений, анализировать их и создавать визуализации, чтобы мониторить приложения и инфраструктуры, быстрее устранять неполадки, анализировать систему безопасности и многое другое.

E = Elasticsearch
Elasticsearch – это распределенный поисковый и аналитический движок на базе Apache Lucene. Он становится идеальным инструментом для различных примеров использования аналитики журналов и поиска благодаря поддержке различных языков, высокой производительности и документам JSON без схем. Подробнее »

21 января 2021 года Elastic NV объявила об изменении стратегии лицензирования программного обеспечения и о том, что новые версии Elasticsearch и Kibana под разрешительной лицензией Apache версии 2.0 (ALv2) выходить не будут. Вместо них предложены новые версии программного обеспечения по лицензии Elastic, а исходный код доступен по лицензии Elastic или SSPL. Эти лицензии не являются открытыми исходными кодами и не дают пользователям ту же свободу. Для безопасного высококачественного поиска и аналитики с полностью открытым исходным кодом, мы создали проект OpenSearch – развиваемую сообществом ветвь открытого исходного кода Elasticsearch и Kibana с лицензией ALv2.

L = Logstash
Logstash – это предназначенный для приема данных инструмент с открытым исходным кодом, который позволяет собирать данные из различных источников, преобразовывать их и отправлять в нужное место назначения. Благодаря встроенным фильтрам и поддержке более 200 подключаемых модулей Logstash обеспечивает пользователям простой доступ к данным независимо от их источника или типа. Подробнее »

K = Kibana
Kibana – это инструмент визуализации и изучения данных для просмотра журналов и событий. Kibana предлагает простые в использовании интерактивные диаграммы, встроенные агрегаторы и фильтры, а также геопространственную поддержку, благодаря чему является предпочтительным выбором для визуализации данных, хранящихся в Elasticsearch. Подробнее »

Как работает стек ELK?

  1. Logstash собирает, преобразует и отправляет данные в нужный пункт назначения.
  2. Elasticsearch индексирует и анализирует собранные данные и производит поиск в них.
  3. Kibana предоставляет визуализацию результатов анализа.

Почему стек ELK настолько важен?

Стек ELK удовлетворяет потребности в сфере аналитики журналов. Когда большая часть ИТ-инфраструктуры перемещается в публичные облака, вам требуется решение для аналитики и управления журналами, которое позволит мониторить эту инфраструктуру, а также обрабатывать любые журналы серверов или приложений и данные навигации. Стек ELK дает простое, но надежное решение по анализу журналов для разработчиков и инженеров DevOps, которое позволяет получить полезные выводы из диагностики сбоев, производительности приложений и мониторинга инфраструктуры – за небольшую плату.

Как выбрать подходящее решение для стека ELK?

Вы можете развернуть стек ELK и управлять им с помощью версий Elasticsearch и Kibana (до 7.10.2) под лицензией Apache 2.0 или самостоятельно управляемой альтернативой стека ELK с открытым исходным кодом через OpenSearch, OpenSearch Dashboards и Logstash. Вы предпочтете, чтобы разработчики или инженеры DevOps тратили время на создание инновационных приложений или управление операционными задачами, такими как развертывание, обновление, установка и исправление программного обеспечения, резервное копирование и мониторинг? Кроме того, вертикальное масштабирование в соответствии с нуждами вашего бизнеса или обеспечение безопасности и соответствия требованиям – это сложная задача при самостоятельном управлении.

Какие продукты предлагает AWS для стека ELK?

В Amazon OpenSearch Service включены последние версии OpenSearch, поддержка 19 версий Elasticsearch (от версии 1.5 до 7.10) и возможности визуализации на базе панелей OpenSearch и Kibana (версии от 1.5 до 7.10). Сервис интегрируется с Logstash, а также с другими сервисами AWS, такими как Amazon Kinesis Data Firehose, Amazon CloudWatch Logs и AWS IoT, чтобы предоставить вам свободу выбора инструмента для получения данных, соответствующего потребностям примера использования.

1.Elastic stack: анализ security логов. Введение

В связи окончанием продаж в России системы логирования и аналитики Splunk, возник вопрос, чем это решение можно заменить? Потратив время на ознакомление с разными решениями, я остановился на решении для настоящего мужика — «ELK stack». Эта система требует времени на ее настройку, но в результате можно получить очень мощную систему по анализу состояния и оперативного реагирования на инциденты информационной безопасности в организации. В этом цикле статей мы рассмотрим базовые (а может и нет) возможности стека ELK, рассмотрим каким образом можно парсить логи, как строить графики и дашбоарды, и какие интересные функции можно сделать на примере логов с межсетевого экрана Check Point или сканера безопасности OpenVas. Для начала, рассмотрим, что же это такое — стек ELK, и из каких компонентов состоит.

«ELK stack» — это сокращение от трех проектов с открытым исходным кодом: Elasticsearch, Logstash и Kibana. Разрабатывается компанией Elastic вместе со всеми связанными проектами. Elasticsearch — это ядро всей системы, которая сочетает в себе функции базы данных, поисковой и аналитической системы. Logstash — это конвейер обработки данных на стороне сервера, который получает данные из нескольких источников одновременно, парсит лог, а затем отправляет в базу данных Elasticsearch. Kibana позволяет пользователям визуализировать данные с помощью диаграмм и графиков в Elasticsearch. Также через Kibana можно администрировать базу данных. Далее более детально рассмотрим каждую систему отдельно.

Logstash

Logstash – это утилита для обработки лог событий из различных источников, с помощью которой можно выделить поля и их значения в сообщении, также можно настроить фильтрацию и редактирование данных. После всех манипуляций Logstash перенаправляет события в конечное хранилище данных. Утилита настраивается только через конфигурационные файлы.
Типичная конфигурация logstash представляет из себя файл(ы) состоящий из нескольких входящих потоков информации (input), несколько фильтров для этой информации (filter) и несколько исходящих потоков (output). Выглядит это как один или несколько конфигурационных файлов, которые в простейшем варианте (который не делает вообще ничего) выглядит вот так:

input < >filter < >output

В INPUT мы настраиваем на какой порт будут приходить логи и по какому протоколу, либо из какой папки читать новые или постоянно дозаписывающиеся файлы. В FILTER мы настраиваем парсер логов: разбор полей, редактирование значений, добавление новых параметров или удаление. FILTER это поле для управления сообщением которое приходит на Logstash с массой вариантов редактирования. В output мы настраиваем куда отправляем уже разобранный лог, в случае если это elasticsearch отправляется JSON запрос, в котором отправляются поля со значениями, либо же в рамках дебага можно выводить в stdout или записывать в файл.

ElasticSearch

Изначально, Elasticsearch – это решение для полнотекстового поиска, но с дополнительными удобствами, типа легкого масштабирования, репликации и прочего, что сделало продукт очень удобным и хорошим решением для высоконагруженных проектов с большими объемами данных. Elasticsearch является нереляционным хранилищем(NoSQL) документов в формате JSON, и поисковой системой на базе полнотекстового поиска Lucene. Аппаратная платформа — Java Virtual Machine, поэтому системе требуется большое количество ресурсов процессора и оперативки для работы.
Каждое приходящее сообщение, как с Logstash или с помощью API запроса, индексируется как “документ” – аналог таблицы в реляционных SQL. Все документы хранятся в индексе – аналог базы данных в SQL.

Пример документа в базе:

Вся работа с базой данных строится на JSON запросах с помощью REST API, которые либо выдают документы по индексу, либо некую статистику в формате: вопрос — ответ. Для того чтобы все ответы на запросы визуализировать была написана Kibana, которая представляет из себя веб сервис.

Kibana

Kibana позволяет искать\брать данные и запрашивать статистику из базы данных elasticsearch, но основе ответов строятся множество красивых графиков и дашбоардов. Также система имеет функционал администрирования базы данных elasticsearch, в последующих статьях мы рассмотрим более подробно данный сервис. А сейчас покажем пример дашбоардов по межсетевому экрану Check Point и сканеру уязвимостей OpenVas, которые можно будет построить.

Пример дашбоарда для Check Point, картинка кликабельна:

Пример дашбоарда по OpenVas, картинка кликабельна:

Заключение

Мы рассмотрели из чего состоит ELK stack, немного познакомились с основными продуктами, далее в курсе отдельно будем рассматривать написание конфигурационного файла Logstash, настройку дашбоардов на Kibana, познакомимся с API запросами, автоматизацией и много чего еще!

  • elasticsearch
  • elastic stack
  • check point
  • data analysis
  • ts solution
  • анализ логов
  • security
  • Блог компании TS Solution
  • Информационная безопасность
  • Системное администрирование
  • IT-инфраструктура
  • Big Data

При подготовке материала использовались источники:
https://aws.amazon.com/ru/what-is/elk-stack/
https://habr.com/ru/company/tssolution/blog/480570/?sa=X&ved=2ahUKEwjM8qCc6rftAhWVHXcKHWuFDjMQ9QF6BAgKEAI

Добавить комментарий