Loki construye un sistema de recolección de registros

Loki

¿Qué es Loki?

Loki es un sistema de agregación de registros multiinquilino altamente disponible y escalable horizontalmente inspirado en Prometheus. Está diseñado para ser muy rentable y fácil de operar. No indexa el contenido del registro, pero establece un conjunto de etiquetas para cada flujo de registro.

URL del documento Loki: https://grafana.com/docs/loki/latest/

URL de descarga: https://github.com/grafana/loki/releases

Instalar loki

  • Obtenga el paquete de software
    Inserte la descripción de la imagen aquí
  • Descomprime el paquete
unzip loki-linux-amd64.zip
[root@localhost loki]# ll
-rwxr-xr-x 1 root root 88166400 May 20  2020 loki-linux-amd64
-rw-r--r-- 1 root root 26432293 Feb 22 11:26 loki-linux-amd64.zip
  • Escribir archivo de configuración
vim loki.yaml
---
auth_enabled: false

server:
  http_listen_port: 3100

ingester:
  lifecycler:
    address: 192.168.0.181
    ring:
      kvstore:
        store: inmemory
      replication_factor: 1
    final_sleep: 0s
  chunk_idle_period: 5m
  chunk_retain_period: 30s
  max_transfer_retries: 0

schema_config:
  configs:
    - from: 2020-07-01
      store: boltdb
      object_store: filesystem
      schema: v11
      index:
        prefix: index_
        period: 168h

storage_config:
  boltdb:
    directory: /loki/index

  filesystem:
    directory: /loki/chunks

limits_config:
  enforce_metric_name: false
  reject_old_samples: true
  reject_old_samples_max_age: 168h
  ingestion_rate_mb: 15

chunk_store_config:
  max_look_back_period: 0s

table_manager:
  retention_deletes_enabled: false
  retention_period: 0s
  • Empezar loki
[root@localhost loki]# nohup ./loki-linux-amd64 -config.file=./loki.yaml >./loki.log 2>&1 &
[1] 108017
[root@localhost loki]# ps -fe|grep loki
root     108017  79258  9 16:00 pts/0    00:00:00 ./loki-linux-amd64 -config.file=./loki.yaml

Instalar promtail

Promtail es responsable de la recopilación de registros, similar a logstash, filebeat, etc. en elk. Si recopila registros de contenedores de la ventana acoplable, puede usar el complemento de la ventana acoplable para recopilar registros de contenedores.

  • Obtén el paquete y descomprímelo
    Inserte la descripción de la imagen aquí
  • Configurar el archivo de configuración de pormtail
vim promtail.yaml
---
server:
  http_listen_port: 9080
  grpc_listen_port: 0

positions:
  filename: ./positions.yaml

clients:
  - url: http://192.168.0.181:3100/loki/api/v1/push

scrape_configs:
 - job_name: zzz
   static_configs:
   - labels:
      app: zzz
      host: 192.168.0.181
      env: prod
      __path__: /var/log/messages
  • Iniciar promtail
nohup ./promtail-linux-amd64 -config.file=./promtail.yaml > ./promtail.log 2>&1 &
[root@localhost loki]# ps -fe|grep promtail
root     113788  79258  1 17:00 pts/0    00:00:00 ./promtail-linux-amd64 -config.file=./promtail.yaml

Configurar grafana para mostrar registros

Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí

Recopilar registros de contenedores de Docker

  • Confirmar la versión de Docker
[root@localhost local]# docker --version
Docker version 18.09.7, build 2d0083d

Es necesario cambiar el controlador de registro de la ventana acoplable a la versión loki 13, el cambio fallará

  • Instalar complemento
docker plugin install grafana/loki-docker-driver:latest --alias loki --grant-all-permissions
[root@localhost local]# docker plugin list
ID                  NAME                DESCRIPTION           ENABLED
5df430512cf6        loki:latest         Loki Logging Driver   true
  • Iniciar la prueba del recipiente
docker run -itd -p 80:80 --log-driver=loki --log-opt loki-url="http://192.168.0.181:3100/loki/api/v1/push" --log-opt max-size=50m --log-opt max-file=10 nginx

Acceda a nginx a través del comando curl y luego véalo en grafana

Inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/qq_33235529/article/details/114873844
Recomendado
Clasificación