Данные не отображаются на вкладке «Обнаружение Кибаны» - PullRequest
4 голосов
/ 05 апреля 2020

Я использую Kibana 7.5.2 и Elastic search 7.

Мой первый подход: Я отправляю данные журнала и системные данные с использованием fluentd и metricbeat соответственно на мой сервер Kibana. Все работает нормально. Я могу видеть данные на странице обнаружения. Но у меня было большое количество данных. поэтому я добавил Кафку между серверами.

Мой второй подход: Теперь я посылаю данные журнала и системные данные в Кафку. а затем из Кафки я отправляю его на сервер Kibana. Для системных данных через metricbeat я получаю поле @ timestamp в Кибане, а для данных журнала через свободный, я не получаю @ отметка времени поле.

Если я запускаю сервер Kafka по отдельности для обоих по одному, все работает нормально. но если я запущу их обоих вместе. Системные данные не отображаются на вкладке обнаружения.

Индекс Kibana для Системные данные : metricbeat-*

Индекс Kibana для log данные : prelive-data*

Свободный конф

<match laravel.**>
  @type kafka2

  # list of seed brokers
  brokers <my-Broker-ip>:9092
  <buffer topic>
    @type file
    path /var/log/td-agent/buffer/td
    flush_interval 3s
  </buffer>

  # topic settings

  # data type settings
  <format>
    @type json
  </format>
# topic settings
  topic_key prelive-data-log
  default_topic prelive-data-log

  # producer settings
  compression_codec gzip
        # max_send_retries 1
  required_acks -1
</match>

metricbeat.yml

#----------------------------- KAFKA --------------------------------
output.kafka:
#  # initial brokers for reading cluster metadata
  hosts: ["<my-broker-ip>:9092"]
  topic: 'metricbeat-7.6.0-2020.03.25-000001'

worker.properties сервера Kafka для системных данных (metricbeat)

offset.storage.file.filename=/tmp/connectm.offsets
bootstrap.servers=:9092
offset.flush.interval.ms=10000
rest.port=10084
rest.host.name=localhost
rest.advertised.port=10085
rest.advertised.host.name=localhost
key.converter=org.apache.kafka.connect.json.JsonConverter
value.converter=org.apache.kafka.connect.json.JsonConverter
key.converter.schemas.enable=false
value.converter.schemas.enable=false
internal.key.converter.schemas.enable=false
internal.value.converter.schemas.enable=false
plugin.path=/usr/share/java

filesource.properties сервера Kafka для системных данных (metricbeat)

name=config-name
connector.class=io.confluent.connect.elasticsearch.ElasticsearchSinkConnector
tasks.max=1
topics=metricbeat-7.6.0-2020.03.25-000001
key.ignore=true
schema.ignore=true
connection.url=http://<ES-IP>:9200
connection.username=username
connection.password=password
type.name=kafka-connect
~                         

worker.properties сервера Kafka для системных данных (fluentd)

offset.storage.file.filename=/tmp/connectf.offsets
bootstrap.servers=:9092
offset.flush.interval.ms=10000
rest.port=10082
rest.host.name=localhost
rest.advertised.port=10083
rest.advertised.host.name=localhost
key.converter=org.apache.kafka.connect.json.JsonConverter
value.converter=org.apache.kafka.connect.json.JsonConverter
key.converter.schemas.enable=false
value.converter.schemas.enable=false
internal.key.converter.schemas.enable=false
internal.value.converter.schemas.enable=false
plugin.path=/usr/share/java

filesource.properties сервера kafka для системных данных (fluentd)

name=<config-name>
connector.class=io.confluent.connect.elasticsearch.ElasticsearchSinkConnector
tasks.max=2
topics=prelive-data-log
key.ignore=true
schema.ignore=true
connection.url=http://<my-ES-ip>:9200
connection.username=username
connection.password=password
type.name=kafka-connect

Я использую свой сервер Kafka /usr/bin/connect-standalone worker.properties filesource.properties

Я застрял здесь на неделю. Любая помощь будет оценена.

...