Конфигурация Metricbeat-Kafka-Logstash

Я хочу отправить данные Metribeat в Kafka. И от кафки до Логсташа.

Вот мой metricbeat.yml.

metricbeat.config.modules:
  # Glob pattern for configuration loading
  path: ${path.config}/modules.d/*.yml

  # Set to true to enable config reloading
  reload.enabled: false

setup.template.settings:
  index.number_of_shards: 1
  index.codec: best_compression

setup.dashboards.enabled: false

output.kafka:

    hosts: ["kafka:9092"]   // I only have one host. 
    topic: "%{[fields.log_topic]}"   
    compression: gzip

processors:
  - add_host_metadata: ~
  - add_cloud_metadata: ~

А от Какфы до Логсташа это конфигурационный файл.

input {
    kafka {
            bootstrap_servers => "localhost:9092"
            topics => ["test"]
    }
}

output {
  elasticsearch {
    hosts => ["http://localhost:9200"]
    manage_template => false
    index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"

Из Logstash я хочу отправить данные в Elasticsearch для визуализации с помощью Kibana.

Однако я не вижу индекса в Elasticsearch.

Я делаю .\metricbeat.exe setup -e (Windows) перед запуском .\start-service metricbeat.

Сервер Elasticsearch, сервер Kibana, сервер Zookeeper, сервер Kafka работают нормально.

Мой logstash выглядит нормально. Ниже то, что я вижу из моего cmd.

[2019-05-23T17:26:51,668][INFO ][org.apache.kafka.common.utils.AppInfoParser] Kafka version : 2.1.0 [2019-05-23T17:26:51,738][INFO ][org.apache.kafka.common.utils.AppInfoParser] Kafka commitId : eec43959745f444f [2019-05-23T17:26:52,208][INFO ][org.apache.kafka.clients.Metadata] Cluster ID: eJYo7GgaTZitGoeiROlk2w [2019-05-23T17:26:52,211][INFO ][logstash.agent ] Successfully started Logstash API endpoint {:port=>9600} [2019-05-23T17:26:52,222][INFO ][org.apache.kafka.clients.consumer.internals.AbstractCoordinator] [Consumer clientId=logstash-0, groupId=logstash] Discovered group coordinator DESKTOP-MOVCIN1:9092 (id: 2147483647 rack: null) [2019-05-23T17:26:52,229][INFO ][org.apache.kafka.clients.consumer.internals.ConsumerCoordinator] [Consumer clientId=logstash-0, groupId=logstash] Revoking previously assigned partitions [] [2019-05-23T17:26:52,231][INFO ][org.apache.kafka.clients.consumer.internals.AbstractCoordinator] [Consumer clientId=logstash-0, groupId=logstash] (Re-)joining group [2019-05-23T17:26:52,274][INFO ][org.apache.kafka.clients.consumer.internals.AbstractCoordinator] [Consumer clientId=logstash-0, groupId=logstash] Successfully joined group with generation 23 [2019-05-23T17:26:52,281][INFO ][org.apache.kafka.clients.consumer.internals.ConsumerCoordinator] [Consumer clientId=logstash-0, groupId=logstash] Setting newly assigned partitions [test-0]

Может ли кто-нибудь дать мне некоторые рекомендации?

1
0
1 601
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Наконец-то мне удалось собрать системные данные с помощью Метрибит, отправить их в Логсташ через Кафка, сохранить в Эластичный поиск и увидеть в Кибана.

Это еще не идеальный ответ. Я буду обновлять его, как я понимаю лучше в будущем.

Для конфигурации metricbeat.yml,

output.kafka:
    hosts: ["localhost:9092"] 
    topic: "testkafka"    // I created this topic in Kafka earlier. 

Для конфигурации Логсташ,

input { 
    kafka { 
              bootstrap_servers => "localhost:9092"
              topics => ["testkafka"]
    }
}

output {
   elasticsearch { 
       hosts => ["localhost:9200"]
       index => "testkafka" 
   }
}

По крайней мере, с этими конфигурациями я смог интегрировать ELK с K(Kafka).

Другие вопросы по теме