ELK исследования был сделан вывод (б)

Во- первых, на фоне спроса
на развитие бизнеса все более крупных серверах больше и больше
различных журналов доступа, журналов приложений, журналы ошибок, все больше и больше объема, что приводит к эксплуатации и технического персонала не может быть хорошо для управления журнала
разработчиков для устранения проблемы и потребности в проверьте журнал, неудобством сервер
оперативные сотрудники нужны данные, нам необходимо проанализировать журнал эксплуатации и технического обслуживания на сервере во-
вторых, почему бы ELK
вообще нам нужно войти сценарии анализа: Grep непосредственно в файле журнала, AWK может получить , что они хотят информация о покупке. Но в более крупном масштабе этого количество бревен многих и сложных сцен, этот метод неэффективен, в том числе проблема , как архивирование журнала слишком большая, слишком медленно , как сделать поиск текста, то как многомерные запросы. Требуется централизованное управление журнала, журнал на все серверы собирают агрегат. Общие решения является создание централизованной системы сбора журналов, журналы на всех узлах в единой коллекции, управления доступом. Большие системы, как правило , размещены в распределенной архитектуре, различные сервисные модули , развернутые на другой сервере, когда возникают проблемы, в большинстве случаев необходимо выдавать критическую информацию об экспозиции, ориентированной на конкретные сервера и сервисы модуля, построить централизованная система регистрации , которая может повысить эффективность определения места повреждения. Полная централизованная система регистрации, должна включать в себя следующие основные функции:

Коллекция - возможность собирать журнальные данные из нескольких источников
передачи - чтобы иметь возможность стабилизировать данные журнала в центральную системе
памяти - как данные журнала магазина
анализ - анализ поддерживает UI
предупреждение - может предоставить отчет об ошибках, механизм мониторинга
и предоставляет набор ELK решения, и является открытым исходным кодом, используется в сочетании друг с другом, идеальное схождение, эффективно выполнить ряд случаев применения. Это система журнала мейнстрим один.

Три Введение ELK
ELK представляет собой аббревиатуру из трех программного обеспечения с открытым исходным кодом, а именно: Elasticsearch, Logstash и Kibana они являются программным обеспечением с открытым исходным кодом. Но теперь также добавил Beats, это легкий инструмент для обработки коллекции журнала (Агент), Beats небольшого размера, подходящие для передачи Logstash после сбора журнала на каждом сервере, правительство также рекомендуемый этот инструмент, в настоящее время из - за оригинальные участники ELK Stack присоединились биения инструментов , чтобы были переименован Упругий Stack.

Упругие Stack включает в себя:

Elasticsearch является открытым исходным кодом распределенной поисковой системы , которая обеспечивает сбор, анализ, хранение данных трех функций. Его функции включают в себя: распределенная, нулевой конфигурации, автоматическое обнаружение, индекс авто срезов, механизм репликации индекса, успокоительные интерфейсы типа, несколько источников данных, такие как автоматический поиск нагрузки. Подробности можно сослаться Elasticsearch Definitive Guide
Logstash используется в основном для сбора анализа лога, лог фильтрации инструменты для поддержки больших объемов режима сбора данных. Общая работа С / с архитектурой клиент установлена на стороне хоста необходимо собрать журналы, на сторону сервера отвечает за каждый узел полученного лог фильтруется, модификацию и других операции в параллельном с elasticsearch вверх.
Kibana также с открытым исходным кодом и бесплатные инструменты, вы можете анализировать Kibana дружественный веб - интерфейс и журнал Logstash ElasticSearch предоставляется помощь обобщать, анализировать и искать важные журналы данных.
Вот легкий Beats журнал коллектора, на самом деле, Beats семья состоит из шести членов, в начале ELK архитектуры с использованием Logstash собирать, синтаксический анализ журналов, но Logstash память, процессор, Ио и другое потребление ресурсов является относительно высокой. По сравнению Logstash, Beats долю системы процессора и памяти практически не заметно
(после версии 5.0) ELK Стек -> Упругие Стек == (ELK Стек + Удары). Удары в настоящее время содержит шесть из этих инструментов:

Packetbeat: сети передачи данных (собирать данные сетевого трафика)
Metricbeat: индикаторы (системы сбора, процессы и CPU файловой системы уровня и данные по использованию памяти)
Filebeat: файлы журналов (собирать данные файла)
Winlogbeat: Журнал событий Windows (для сбора журнала событий Windows данные)
Auditbeat: данные аудита (сбор журнала аудита)
Heartbeat: во время выполнения мониторинга (время сбора данных система запуска)
на х-пак инструмент:

х-пакет Elastic Stack обеспечивает безопасность, сигнализация, мониторинг, отчетность, диаграммы в одном из пакета расширения, за отдельную плату, так что это не связано с х-пак установлен
четыре, ELK Chart


Это самый простой способ ELK архитектуры. Преимущество заключается в том, чтобы построить простой, легкий в использовании. Недостаток заключается в том, что чем больше расход Logstash ресурсов процессора и памяти для запуска высокой. Далее нет буфера очереди сообщений, наличия скрытой потери данных. Эта архитектура состоит из Logstash сбора соответствующего распределения журнала, данных о каждом узле, и после анализа, он отправляется Elasticsearch фильтрованного на удаленный сервере для хранения. Elasticsearch данные в виде сжатого среза магазина и обеспечить разнообразие пользовательского API для операции запроса. Пользователи также могут настроить более интуитивный и удобный запросы Kibana веб-журналов и создания отчетов на основе данных.

 

Такая архитектура вводит механизм очереди сообщений, расположенный Logstash Agent первых данные на каждый узел / журнале передаются Кафке (или Redis), или сообщения данных в очереди и передаются косвенной фильтрации Logstash, Logstash, переносил в анализ данных после того, как Elasticsearch хранения. И, наконец, Kibana журнал и данные представляются пользователю. Кафка из-за введения (или Redis), даже если удаленный конец Logstash сервер, работающий останов из-за сбоя, данные сначала будут сохранены, чтобы избежать потери данных.

 

Такая система будет собирать конец logstash заменить удары, более гибкой и потреблять меньше ресурсов, более масштабируемых. В то же время, и может быть настроено Logstash Elasticsearch кластера для поддержки больших объемов данных работы системы кластера и журналов обслуживания мониторинга и запросов.

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

 

Комбайн (комбайн): отвечает за чтение содержимого одного файла. Каждый файл будет начать Комбайн, Комбайн для каждого файла будет читать построчно, отправить содержимое файла на развитие производства. Комбайн отвечает за открытие и закрытие файлов, что означает, когда комбайн запустить, дескриптор файла открыт, если файл переименован или удален в коллекции, Filebeat будет продолжать читать этот файл. Поэтому перед тем Комбайн закрыт, диск не будет выпущен. По умолчанию filebeat будет держать файл открытым, пока он не достигнет close_inactive (если эта опция включена, filebeat больше не будет обновляться дескриптор файла закрывается в течение указанного времени, время, чтобы прочитать время от начала харвестера последней строки. Если файл ручка после закрытия, файл изменен, он начнет новый комбайн. Закройте время дескриптора файла не зависит от времени модификации файла, если этот параметр настроен неправильно, ситуация не в режиме реального времени журнал, который может произойти, определяются параметрами scan_frequency, по умолчанию 10s .Harvester с использованием внутреннего штампа времени, чтобы записать файл был последним собранным, например: набор ого, то после того, как последняя строка файла чтения комбайна, отсчет начинается через пять минут, в течение 5 минут, если не изменить файл, закрыть дескриптор файла по умолчанию. 5й).

Геолог (Surveyor): отвечает за управление Комбайном и найти все прочитать источник.

filebeat.prospectors:
- input_type: войти
  Дорожки:
    - /apps/logs/*/info.log
Геолог найти / приложения / журналы / * info.log все файлы в каталоге, и начать Комбайн для каждого файла. Геолог проверяет каждый файл , чтобы увидеть , был ли запущен комбайн, нужно начинать, или если файл может быть проигнорирован. Если комбайн закрыт, только проверка Геолог будет осуществляться в случае изменения размера файла. обнаружить только местную газету.

Как статус Filebeat записи файла:

Записи файла состояния в файле (по умолчанию / вар / Библиотека / filebeat / реестр). Это состояние может забывает компенсировано комбайну собирать документы. Если соединение не устройство вывода, такие как ES, как, filebeat записывает последнюю строку до времени передачи может быть подключено, а затем продолжать посылать. Filebeat во время выполнения, Геолог состояние будет записано в памяти. Filebeat времени перезапуска, используя государственные записи реестра для восстановления, чтобы восстановить состояние до перезагрузки. Каждый Геолог запишет статус для каждого найденного файла, для каждого файла, Filebeat хранится ли уникальный идентификатор ранее собранные для обнаружения файла.

Как Filebeat обеспечить событие выводится по крайней мере один раз:

Filebeat удалось обеспечить событие передается в выходной конфигурации, по крайней мере один раз, никакие данные не будут потеряны, потому что filebeat статус доставки каждого события сохраняется в файле. Когда выходная сторона не была подтверждена, filebeat попытка была направлена, пока не получите ответ. Если filebeat быть закрыты во время передачи, он не будет подтвердить, что все события до этого близко. Перед filebeat близко к какому-либо подтверждению того времени, будет повторно отправлено после перезапуска filebeat. Это гарантирует, что по крайней мере один раз послал, но может быть повторено. Shutdown_timeout путем установки параметров зачесть перед ожиданием в течение времени отклика события (по умолчанию отключено).

Шесть, Logstash работает
обработчик события Logstash состоит из трех этапов: входы → Фильтры → выходы. Это прием, обработка, пересылка каротаж. Поддержка системный журнал, журналы веб - сервер, журналы ошибок, журналы приложения, в общем, может бросить , чтобы включить все типы журналов.

 

Входные данные: Входные данные в logstash.

Некоторые общие входы:
Файл: считываемые из файловой системы, похожие на хвост -f команды

системный журнал: мониторинг сообщений системного журнала на порт 514, и анализы в соответствии со стандартом RFC3164

Redis: Redis сервис чтения из

бьется: чтение из filebeat

Фильтры: данные промежуточной обработки, действуют на данных.

Некоторые общие фильтры:
Grok: разбор любых текстовых данных, Grok является наиболее важным плагин Logstash. Его основная роль заключается в формат строки текста, преобразуются в конкретные структурированные данные, с использованием регулярных выражений. Построенные более 120 грамматики синтаксического анализа. официальное выражение Grok из: https: //github.com/logstash-plugins/logstash-patterns-core/tree/master/patterns,grok онлайн отладки: https: //grokdebug.herokuapp.com/. Кроме того, на kibana также ГРКИ отладчика.

 

мутируют: преобразование поля. Например, поле удаления, замены, изменять, переименовывать и так далее.

падение: не отбрасывать часть событий обработки.

Клон: событие копирования, процесс может добавлять или удалять поля.

GeoIP: добавить географическую информацию (для использования графического дисплея передней kibana)

Выходы: выходы это оконечности сборки logstash конвейера обработки.

Событие может пройти через несколько выходов в процессе, но как только все выходы выполнены конец, это событие будет завершить жизненный цикл.

Некоторые общие выходы:

elasticsearch: данные могут быть эффективно сохранены и могут быть запрошены удобным и простым.

Файл: Сохранить данные событий в файл.

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

Кодеки: кодеки основаны на фильтре потока данных, он может быть использован в качестве ввода, вывод части конфигурации.

Кодеки могут помочь вам легко быть сериализованы данные, передаваемые по надрезу.

Некоторые распространенные кодеки:

JSON: кодирование данных / декодирование с использованием формата JSON.

многострочный: Обмен данными агрегированных на несколько событий в одной строке. Например: Java информации исключений и информация стеки.

Logstash пример:

Формат журнала

2019-07-04 14: 07: 19,916 INFO 7 --- [о-9090-Exec-843] oaimocker.controller.ApiController: [ApiMockRequest] апи: /brScorecashon/nlfc/jsonTonlfcService.do, метод: POST
自定义шаблон

LOG_TIMESTAMP 20% {ГОД} - {% MONTHNUM} - {% MONTHDAY}% {HOUR}: (? ::% {ВТОРАЯ})% {} МИНУТЫ
LOG_LEVEL ERROR | DEBUG | INFO | WARN
LOG_THREAD \ [* \.?]
LOG_MSG_SPLIT [\ s] *:
LOG_MSG [\ s \ S] *
logstash.conf

вход {
  уд {
    порт => 5044
    client_inactivity_timeout => 36000
  }
}

фильтр {
  Grok {
    patterns_dir => "/ USR / доли / logstash / конфигурации / шаблоны"
    матч => { "сообщение" => «% {LOG_TIMESTAMP: log_date}% {lOG_LEVEL: log_level}% {INT: PID} ---% {lOG_THREAD: log_thread}% {JavaClass: java_class}% {LOG_MSG_SPLIT}% {lOG_MSG: log_msg} "}
  }
  дата {
    матч => [" log_date "" YYYY-MM-DD HH: MM: СС.ссс "]
    мишень => "@timestamp"
    временная зона => "+08: 00"
  }
  мутировать {
    полоса => [" log_level "]
    переименовани => {" [хост] [ имя] "=>"хост "}
  }
}

Выход {
  elasticsearch {
    = Хозяева> [ "http://192.168.66.41:9201","http://192.168.66.41:9202","http://192.168.66.41:9203"]
    индекс => «imocker - {+ YYYY% } .MM.dd "
  }
  STDOUT {
    CODEC => rubydebug
  }
}
семь, Kibana
Kibana является открытым исходным кодом и анализ визуализации платформа, предназначенная для совместной работы и Elasticsearch. Вы можете использовать Kibana для поиска, просмотра и Elasticsearch и данные , хранящиеся в индексе , чтобы взаимодействовать. Вы можете легко выполнять расширенный анализ данных, а также значки в различных формах, таблицах и картах визуальных данных. Kibana понимать , что такое большое количество данных , становится легко. Это просто, интерфейс на базе браузера позволяет быстро создавать и делиться динамические информационные панели, отображение в реальном времени изменения Elasticsearch запроса. Kibana это веб - приложение, вы можете получить доступ к нему с помощью 5601. Например: http://192.168.66.41:5601. Перед тем , как официально использовать Kibana, необходимо , чтобы соответствовать нашему Elasticsearch индексной базы данных, потому что наш Elasticsearch может быть много индексной базы данных, Kibana к факторам производительности, мы не будем продвигать все индексы библиотек руководство приходит, мы должны с индексом , на котором руководство индекса. В соответствии со следующими этапами: управление >> Индекс Patterns >> Создание индексных рисунков , то мы можем увидеть следующий интерфейс:

 

Во входном индексной базе данных поля индекса шаблона можно использовать нечеткий соответствующий запрос, например, мы готовы к данным журнала импорт imocker, введите «imocker- *», когда найдено совпадение, ниже поля ввода будет успешное приглашение, и право Следующий шаг выйдет на кнопку, нажмите кнопку для перехода на следующий шаг, а затем нажмите кнопку Создать соответствующий индекс шаблон завершено:

 

Тогда Kibana время нам нужно выбрать поле, из - за того , что эти три показателя в соответствии с корреляцией по времени, мы выбираем поле времени @timestamp.
Итак, теперь мы должны соответствовать этим трем типам тестовых данных для Kibana в, а затем вы можете использовать Kibana.

Обнаружить

Вы можете изучить данные на странице Discover интерактивной. Вы можете получить доступ к каждому индексу с индексом выбранного по умолчанию, соответствующего каждому документу. Вы можете отправить запросы, поиск структуры фильтра, а также просматривать данные документа. Вы также можете увидеть количество документов, которые соответствуют запросу запроса, а также статистика значений поля. Если вы хотите настроить поле индексного режима времени, распределение документов по времени будет отображаться на гистограмме в верхней части страницы.

 

Поля Script

ВСЕ

Централизованный мониторинг

КАПЭ, sentinl, elastalert


----------------
Отказ от ответственности: Эта статья чашка оригинальной статьи CSDN блоггеров рому», и последующие CC 4.0 BY-SA авторского соглашения, воспроизведены, пожалуйста , приложите оригинал и ссылки это утверждение.
Оригинальная ссылка: https: //blog.csdn.net/u012562943/article/details/101060053

рекомендация

отwww.cnblogs.com/cmbk/p/11864250.html