Визуализируйте и анализируйте данные из Кафки - PullRequest
0 голосов
/ 08 марта 2019

Я использую базовую настройку Kafka-Logstash для синхронизации множества различных приложений с бэкэндом. У меня есть очень простое понимание того, как это работает. В настоящее время я изучаю данные, обработанные Kafka. Я хочу использовать Kafka Connect, чтобы получить все на доске Kibana, и я очень не уверен, как справиться с этим.

Я нашел этот ресурс , который говорит следующее:

Хотя Kafka Connect является частью самого Apache Kafka, если вы хотите передавать данные из Kafka в Elasticsearch, вам понадобится Confluent Platform.

Мои вопросы:

1. Нужно ли использовать Confluent для этого?

2. Должен ли я использовать Confluent для достижения этого?

Я также смотрел на другие инструменты, такие как, например, Прометей , но, насколько я мог видеть, достичь визуализации, подобной Кибане, нелегко. Но, пожалуйста, научите меня, если я ошибаюсь!

Ответы [ 2 ]

1 голос
/ 09 марта 2019

Вы можете визуализировать и анализировать данные kafka, используя входной плагин Logstash Kafka. Ниже приведен пример конфигурации фрагмента Logstash.

input {
  kafka {
    bootstrap_servers => "localhost:9092"
    client_id => "client_id_name"  // optional 
    topics => ["topic_name"]
  }

}

//Logstash provides different filters like json,csv and etc..You can add filters based on your requirements. 

filter {
  json {
    source => "message"
    remove_field => ["message"]
  }
}

output {
    elasticsearch{
        hosts => ["http://localhost:9200/"]
        index => "index_name"
        document_type => "document_type_name"  // optional 
    }
}

Пожалуйста, обратитесь https://www.elastic.co/guide/en/logstash/current/plugins-inputs-kafka.html для получения дополнительной конфигурации входных настроек kafka

1 голос
/ 08 марта 2019

Я использовал как Logstash (с данными JSON через входной плагин tcp), так и соединитель Kafka Connect Elastic от Confluent (с данными Avro), оба с обычным Apache Kafka. Итак, ответа на у вас нет. Настройка Kafka Connect займет больше времени, так как вам придется создавать исходный код, поэтому , если вы , конечно, потому что это все тот же Apache Kafka в конце дня.

Оба будут работать с Kibana, но это, конечно, большая проблема, зависит от того, как вы управляете шаблонами индекса в Elasticsearch и какие данные вы принимаете.

Лично я нахожу Logstash немного проще, если вы ничего не знаете о настройке индикаторов Elasticsearch и отображений типов, потому что выходной плагин Logstash Elasticsearch «просто работает». Я не могу вспомнить, использовал ли я плагин ввода Kafka, но я предположил бы, что он работает аналогично любым другим входам, но могут быть проблемы с десериализаторами Kafka, если у вас есть нестандартная сериализация от ваших производителей (например, некоторые люди помещают данные Protobuf в Kafka)

Я вижу Прометея / Графану больше для метрик, а не для визуализаций.

...