<構成>
filebeatを利用して複数台からログ収集しています。
filebeat×約10台 => logstash => elasticsearch
logstash 6.4.2
filebeat 6.4.2
<事象>
filebeat導入サーバで大量ログ出力後に、logstashログ収集が停止しました。
※大量ログ出力したサーバ以外からのログもlogstash側への取込みが停止
<現在までの対応>
filebeat/logstashにもエラー原因となるようなログ出力が見えないため、以下を実施
- ファイルシステム確認
→ 50%以上の余裕があり問題無し。 - logstash 再起動
→ 解決しない。停止したまま - filebeat 再起動
→ 解決しない。停止したまま - filebeat registry 削除
→ 解決しない。停止したまま
https://stackoverflow.com/questions/41703689/how-do-i-force-rebuild-logs-data-in-filebeat-5/46309908 - logstash OS再起動
→ 解決しない。停止したまま - elastichsearch再起動
→ 解決しない。停止したまま
<やりたいこと>
ログ収集の再開のために、何をすればよいのかを教えていただけないでしょうか。
<参考:logstash設定>
バージョン
# /usr/share/logstash/bin/logstash --version
logstash 6.4.2
# cat /proc/version
Linux version 3.10.0-957.27.2.el7.x86_64 (mockbuild@x86-040.build.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Tue Jul 9 16:53:14 UTC 2019
#
コンフィグ
# grep -v '^\s*\|^\s*\#' /etc/logstash/logstash.yml
log.level: warn
path.logs: /var/log/logstash
\# grep -v '^\s*|^\s*#' /etc/logstash/pipelines.yml
- pipeline.id: main
path.config: "/etc/logstash/conf.d/.conf"
# grep -v '^\s\|^\s*\#' /etc/logstash/startup.options LS_HOME=/usr/share/logstash LS_SETTINGS_DIR=/etc/logstash LS_OPTS="--path.settings {LS_SETTINGS_DIR}"
LS_JAVA_OPTS=""
LS_PIDFILE=/var/run/logstash.pid
LS_USER=logstash
LS_GROUP=logstash
LS_GC_LOG_FILE=/var/log/logstash/gc.log
LS_OPEN_FILES=16384
LS_NICE=19
SERVICE_NAME="logstash"
SERVICE_DESCRIPTION="logstash"
サンプル1つ
# grep -v '^\s*\|^\s*\#' /etc/logstash/conf.d/rhel.conf filter { if "rhel" in [tags] { grok { match => { "message" => "%{SYSLOGTIMESTAMP:timestamp} (?<hostname>[0-9A-Z]{8}) %{GREEDYDATA:FACILITY}\.(?<PRIORITY>debug|info|notice|warning|err|crit|alert|emerg)\: (?<category>.+?\:%{SPACE}) %{GREEDYDATA:messages}" } } grok { match => { "source" => "/var/log/%{DATA:filename}"}
}
}
}
output {
if "rhel" in [tags] {
file {
path => "/backup/%{[host][name]}/rhel/%{+YYYYMMdd}/%{filename}"
codec => line { format => "%{message}"}
}
elasticsearch {
ssl => true
cacert => '/etc/logstash/elasticsearch.crt'
hosts => ["https://172.16.215.101:9200"]
index => "rhel-%{+YYYY.MM.dd}"
}
}
}
#
<参考:filebeat設定>
バージョン
# filebeat version
filebeat version 6.4.2 (amd64), libbeat 6.4.2 [e193f6d68b25b7ddbe3a3ed8d60bc07fea1ef800 built 2018-09-26 12:42:46 +0000 UTC]
# cat /proc/version
Linux version 3.10.0-957.el7.x86_64 (mockbuild@x86-040.build.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Thu Oct 4 20:48:51 UTC 2018
#
コンフィグ
# grep -v '^\s*\|^\s*\#' /etc/filebeat/filebeat.yml
filebeat.config.prospectors:
enabled: true
path: /etc/filebeat/conf.d/*.yml
filebeat.config.modules:
path: {path.config}/modules.d/.yml
reload.enabled: false
setup.template.settings:
index.number_of_shards: 1
output.logstash:
hosts: ["172.16.215.100:5044"]
ssl.certificate_authorities: ["/etc/pki/tls/certs/logstash.crt"]
ssl.certificate: "/etc/pki/tls/certs/logstash.crt"
ssl.key: "/etc/pki/tls/certs/logstash.key.p8"
ssl.supported_protocols: [TLSv1.2]
logging.metrics.enabled: false
#
サンプル1つ
# grep -v '^\s$|^\s*#' /etc/filebeat/conf.d/rhel.yml
- paths:
- /var/log/messages
tags: ["rhel"]
- /var/log/messages