Technologieaustausch

Häufig verwendete Plug-Ins und ELFK-Bereitstellung des ELfK-Logstash-Filtermoduls

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Häufig verwendete Plug-Ins für das Filtermodul von ELK

Häufig verwendete Plug-Ins für das Logstash-Filtermodul:

Filter: Stellt die Datenverarbeitungsschicht dar, einschließlich Datenformatierung, Datentypkonvertierung, Datenfilterung usw. und unterstützt reguläre Ausdrücke

  1. grok unterteilt mehrere große Textfelder in kleine Felder (?<Feldname>regulärer Ausdruck) Feldname: Inhalt, der mit dem regulären Ausdruck übereinstimmt
  2. Datum vereinheitlicht und formatiert das Zeitformat in den Daten
  3. mutate kann Felder in Ereignissen umbenennen, löschen, ersetzen und ändern.Entfernen Sie beispielsweise einige nutzlose Felder oder fügen Sie benutzerdefinierte Felder hinzu.
  4. Multiline ordnet mehrere Datenzeilen gleichmäßig an und fasst mehrere Datenzeilen in einer einzigen Zeile zusammen

GROK: reguläres Capture-Plug-in

Verwenden Sie die Textfragmentsegmentierung, um Protokollereignisse zu segmentieren, die in integrierte reguläre Regeln und benutzerdefinierte reguläre Regeln unterteilt sind.

Aufruf des integrierten regulären Ausdrucks: % (integrierter regulärer Ausdruck: Feldname)
 

Aufruf eines benutzerdefinierten regulären Ausdrucks: (?<Feldname>benutzerdefinierter regulärer Ausdruck)

         

mehrzeilig: Vereinen Sie mehrere Datenzeilen und fassen Sie mehrere Datenzeilen in einer einzigen Zeile zusammen

Muster (Zeilen über regulären Ausdruck abgleichen)
negate(false|true, ob negiert werden soll. False bedeutet nicht negieren, und die Zeilen, die mit dem regulären Ausdruck übereinstimmen, werden entsprechend den Einstellungen von what zusammengeführt
true bedeutet Negation, und die mit dem regulären Ausdruck übereinstimmenden Zeilen werden entsprechend der Einstellung von what nicht zusammengeführt.
what( previous|next, previous bedeutet nach oben zusammenführen, next bedeutet nach unten zusammenführen

Datum: Vereinheitlichen Sie das Format des Zeitstempels @timestamp der von logstash erfassten Protokollereignisse mit der tatsächlichen Druckzeit des Protokolls.

1. Konfigurieren Sie zunächst das Grok-Plug-In, um die Felder Protokollzeit und Druckzeit zu trennen.
2. Verwenden Sie match in der Datums-Plug-in-Konfiguration, um das Zeitformat des Protokollzeitfelds anzupassen.
3. Verwenden Sie dann das Ziel zur Ausgabe in das Feld @timestamp, um das Zeitformat zu vereinheitlichen.
 

ELK-optimierte Filebeat-Bereitstellung

Adresse des GastgebersNameAufschlag
192.168.73.80es01elastische Suche
192.168.73.100es02elastische Suche
192.168.73.110es03elastische Suche
192.168.73.120ngixn01Nginx Kibana
192.168.73.130DATEIngixn-Filebeat

Installieren Sie NGINX

  1. cd /etc/yum.repos.d/
  2. 上传nginx.repo文件
  3. yum install -y nginx
  4. systemctl enable --now nginx
  5. cd /usr/share/nginx/html
  6. #准备测试页面
  7. echo '<h1>this is web page</h1>' > test.html
  8. echo '<h1>this is web2 page</h1>' > test1.html

Installieren Sie Filebeat

  1. 上传软件包 filebeat-6.7.2-linux-x86_64.tar.gz 到/opt目录
  2. tar xf filebeat-6.7.2-linux-x86_64.tar.gz
  3. mv filebeat-6.7.2-linux-x86_64 /usr/local/filebeat

Legen Sie die Hauptkonfigurationsdatei von Filebeat fest

  1. cd /usr/local/filebeat
  2. cp filebeat.yml filebeat.yml.bak
  3. vim filebeat.yml
  4. filebeat.inputs:
  5. - type: log #指定 log 类型,从日志文件中读取消息
  6. enabled: true #24
  7. paths:
  8. - /var/log/nginx/access.log #28行指定监控的日志文件
  9. - /var/log/nginx/error.log
  10. tags: ["filebeat"] #设置索引标签
  11. fields: #46行可以使用 fields 配置选项设置一些参数字段添加到 output
  12. service_name: nginx
  13. log_from: 192.168.73.130
  14. --------------output-------------------
  15. (全部注释掉)
  16. ----------------Logstash output---------------------
  17. output.logstash: #162
  18. hosts: ["192.168.73.120:5044"] #164行指定 logstash 的 IP 和端口

Ändern Sie die Logstash-Konfiguration

  1. cd /etc/logstash/conf.d
  2. vim filebeat.conf
  3. input {
  4. beats {
  5. port => "5044"
  6. }
  7. }
  8. #filter {}
  9. output {
  10. elasticsearch {
  11. hosts => ["192.168.73.80:9200", "192.168.73.100:9200", "192.168.73.110:9200"] #集群els地址
  12. index => "nginx-%{+yyyy.MM.dd}"
  13. }
  14. }
  15. logstash -t -f filebeat.conf #检查文件

Konfigurationsfilebeat starten

192.168.73.130

Starten Sie ./filebeat -e -c filebeat.yml

Logstash starten

192.168.73.120

Logstash startenlogstash -f filebeat.conf