Compartir tecnología

Complementos de uso común e implementación ELFK del módulo de filtro logstash ELfK

2024-07-12

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

Complementos de uso común para el módulo de filtro de ELK

Complementos de uso común para el módulo de filtro logstash:

filtro: representa la capa de procesamiento de datos, incluido el formato de datos, la conversión de tipos de datos, el filtrado de datos, etc., y admite expresiones regulares

  1. grok subdivide varios campos de texto grandes en campos pequeños (?<nombre de campo>expresión regular) Nombre de campo: contenido que coincide con la expresión regular
  2. fecha unifica y formatea el formato de hora en los datos
  3. mutate puede cambiar el nombre, eliminar, reemplazar y modificar campos en eventos.Por ejemplo, elimine algunos campos inútiles o agregue campos personalizados.
  4. multilínea organiza uniformemente varias filas de datos y resume varias filas de datos en una sola fila

GROK: complemento de captura normal

Utilice la segmentación de fragmentos de texto para segmentar eventos de registro, que se dividen en reglas regulares integradas y reglas regulares personalizadas.

Llamada de expresión regular incorporada: % (expresión regular incorporada: nombre de campo)
 

Llamada de expresión regular personalizada: (?<nombre de campo>expresión regular personalizada)

         

multilínea: unifica varias filas de datos y resume varias filas de datos en una sola fila

patrón (hacer coincidir líneas mediante expresión regular)
negar (falso | verdadero, si se debe negar. Falso significa no negar, y las líneas que coinciden con la expresión regular se fusionarán de acuerdo con la configuración de lo que
verdadero significa negación, y las líneas que coincidan con la expresión regular no se fusionarán según la configuración de qué)
qué(anterior|siguiente, anterior significa fusionarse hacia arriba, siguiente significa fusionarse hacia abajo

fecha: unifique el formato de la marca de tiempo @timestamp de los eventos de registro recopilados por logstash con el tiempo de impresión real del registro.

1. Primero configure el complemento grok para separar los campos de tiempo de registro y de tiempo de impresión.
2. Utilice la coincidencia en la configuración del complemento de fecha para hacer coincidir el formato de hora del campo de hora de registro.
3. Luego use target para enviar al campo @timestamp para unificar el formato de hora.
 

Implementación de Filebeat optimizada para ELK

Dirección del servidornombreAtender
192.168.73.80es01búsqueda elástica
192.168.73.100es02búsqueda elástica
192.168.73.110es03búsqueda elástica
192.168.73.120ngixn01nginx kibana
192.168.73.130ARCHIVOarchivo ngixn beat

Instalar 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

Instalar 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

Establecer el archivo de configuración principal de filebeat

  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 和端口

Modificar la configuración de Logstash

  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 #检查文件

Iniciar configuración filebeat

192.168.73.130

Iniciar ./filebeat -e -c filebeat.yml

Iniciar logstash

192.168.73.120

Iniciar logstashlogstash -f archivobeat.conf