Filebeat 6.7.0 не отправляет журналы в Elasticsearch 6.7.0 после обновления

#elasticsearch #elastic-stack #filebeat

#elasticsearch #эластичный стек #filebeat

Вопрос:

Filebeat перестал работать после обновления с 6.6.2 до 6.7.0

Моя конфигурация Filebeat:

 filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/www/current/log/production.log
    - /var/www/current/log/api_v2.production.log
  multiline.pattern: '^[EIWDF], '
  multiline.negate: true
  multiline.match: after
filebeat.config.modules:
  path: ${path.config}/modules.d/*.yml
  reload.enabled: false
setup.template.settings:
  index.number_of_shards: 3
setup.kibana:
output.elasticsearch:
  hosts: ["ip:29200"]
  

Но /var/log /filebeat / filebeat показывает:

 2019-03-28T14:12:11.091Z    ERROR   pipeline/output.go:100  Failed to connect to backoff(elasticsearch(http://ip:9200)): Connection marked as failed because the onConnect callback failed: This Beat requires the default distribution of Elasticsearch. Please upgrade to the default distribution of Elasticsearch from elastic.co, or downgrade to the oss-only distribution of beats
2019-03-28T14:12:11.091Z    INFO    [publish]   pipeline/retry.go:189   retryer: send unwait-signal to consumer
2019-03-28T14:12:11.091Z    INFO    [publish]   pipeline/retry.go:191     done
2019-03-28T14:12:11.091Z    INFO    [publish]   pipeline/retry.go:166   retryer: send wait signal to consumer
2019-03-28T14:12:11.091Z    INFO    [publish]   pipeline/retry.go:168     done
2019-03-28T14:12:11.091Z    INFO    pipeline/output.go:93   Attempting to reconnect to backoff(elasticsearch(http://ip:9200)) with 5 reconnect attempt(s)
2019-03-28T14:12:11.125Z    INFO    elasticsearch/client.go:739 Attempting to connect to Elasticsearch version 6.7.0
  

Однако, когда я нажимаю curl ip:9200 , он возвращается:

 {
  "name" : "30KRsiU",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "xim_BCzFSXWrAO_kMO3TQA",
  "version" : {
    "number" : "6.7.0",
    "build_flavor" : "oss",
    "build_type" : "docker",
    "build_hash" : "8453f77",
    "build_date" : "2019-03-21T15:32:29.844721Z",
    "build_snapshot" : false,
    "lucene_version" : "7.7.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}
  

Как мне заставить это работать? У меня закончились идеи. Спасибо за любую помощь.

Ответ №1:

Если вы используете дистрибутив Elasticsearch с открытым исходным кодом «OSS», то все подключенные beats также должны быть развернуты с соответствующей версией «OSS». При использовании изображений docker добавьте -oss суффикс к имени изображения, чтобы получить правильное изображение. При загрузке файлов с веб-сайта elastic вставьте -oss перед номером версии, например https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-oss-7.0.0-linux-x86_64.tar.gz

Ответ №2:

У меня такая же проблема (с сердцебиением), и одним из предлагаемых решений является понижение версии до 6.6.2

2019-04-01T09:36:27.474 Экземпляр ОШИБКИ Z / beat.go: 802 Завершение: не удалось подключиться ни к одному из настроенных узлов Elasticsearch. Ошибки: [Ошибка подключения к Elasticsearchhttp://localhost:19200 : Соединение помечено как неудачное из-за сбоя обратного вызова OnConnect: Для этого такта требуется распределение Elasticsearch по умолчанию. Пожалуйста, обновите Elasticsearch до дистрибутива по умолчанию с elastic.co или понизьте версию beats до дистрибутива только для операционной системы]

Шаги

wget https://artifacts.elastic.co/downloads/beats/heartbeat/heartbeat-6.6.2-amd64.deb

dpkg -i heartbeat-6.6.2-amd64.deb

сердцебиение службы sudo -перезапуск elastic

Журнал теперь показывает, что он успешно подключен к ES

2019-04-01T09:42:38.061Z ИНФОРМАЦИОННЫЙ конвейер / output.go: 105 Подключение к backoff (elasticsearch(http://localhost:9200 )) установлено