Presentado

Cómo reenviar registros a Grafana Loki usando Promtail

Cómo reenviar registros a Grafana Loki usando Promtail

Grafana Loki es una herramienta que le brinda un panel para indexar los registros de sus sistemas y visualizarlos en un tablero. Grafana Loki no indexa el contenido de los registros, solo indexa las etiquetas de los registros. Esto reduce los esfuerzos involucrados en el procesamiento y almacenamiento de registros.

Promtail, al igual que Prometheus, es un recopilador de registros para Loki que envía las etiquetas de registro a Grafana Loki para su indexación.

En esta publicación, cubriremos lo siguiente:

Comencemos rápidamente con los pasos de instalación:

Paso 1: Instale la herramienta de monitoreo de Grafana

En esta sección cubriremos la instalación de Grafana en Ubuntu. Use los enlaces a continuación que lo guiarán sobre cómo instalar Grafana en diferentes sistemas:

Cómo instalar Grafana 7 en CentOS 7

Cómo instalar Grafana en CentOS 8 / RHEL 8

Instale Grafana en Kubernetes para la supervisión de clústeres

Actualice su sistema Ubuntu y reinicie:

sudo apt-get update sudo apt-get upgrade sudo reboot

Agregue la clave GPG de Grafana y luego instale el repositorio APT de Grafana:

## Agregar clave gpg sudo apt-get install -y gnupg2 curl curl https: // paquetes.grafana.com / gpg.clave | sudo apt-key add - ## Add Grafana APT repository sudo add-apt-repository "deb https: // paquetes.grafana.com / oss / deb estable principal "

Instalar Grafana

sudo apt-get update sudo apt-get -y install grafana

Iniciar el servicio Grafana

sudo systemctl start grafana-server sudo systemctl enable grafana-server

Grafana ahora está instalado y se puede acceder a él a través de la IP del servidor y el puerto 3000. (http: // IP_servidor: 3000)

Necesita permitir el puerto 3000 a través del firewall.

Para Ubuntu:

sudo ufw permite proto tcp desde cualquier puerto 3000

Luego puede acceder al panel web de Grafana,

Paso 2: instale el sistema de agregación de registros Grafana Loki

Ahora procedemos a instalar Loki con los pasos a continuación:

  1. Vaya a la página de lanzamiento de Loki y elija la última versión de Loki
  2. Navegar a Activos y descargue el archivo zip binario de Loki en su servidor. Durante el lanzamiento de este artículo, v2.0.0 es el último.
curl -s https: // api.github.com / repos / grafana / loki / releases / latest | grep browser_download_url | cortar -d '"' -f 4 | grep loki-linux-amd64.zip | wget -i -

Instalar descomprimir

# Ubuntu / Debian $ sudo apt install unzip # CentOS / Fedora / RHEL $ sudo yum -y install unzip

3. Descomprima el archivo binario para / usr / local / bin

descomprimir loki-linux-amd64.zip sudo mv loki-linux-amd64 / usr / local / bin / loki

Confirme la versión instalada:

$ loki --version loki, versión 2.0.0 (rama: HEAD, revisión: 6978ee5d) usuario de compilación: [correo electrónico protegido] fecha de compilación: 2020-10-26T15: 54: 56Z go versión: go1.14.2 plataforma: linux / amd64

4. Cree un archivo YAML para Loki en / usr / local / bin

Cree los directorios de datos necesarios:

sudo mkdir -p / data / loki

Crear nuevo archivo de configuración.

sudo vim / etc / loki-local-config.yaml

Agregue la siguiente configuración al archivo:

auth_enabled: false servidor: http_listen_port: 3100 ingester: lifecycler: dirección: 127.0.0.1 anillo: kvstore: store: inmemory replication_factor: 1 final_sleep: 0s chunk_idle_period: 5m chunk_retain_period: 30s max_transfer_retries: 0 schema_config: configs: - desde: 2018-04-15 store: boltdb object_store: esquema de sistema de archivos: index_period índice: : 168h storage_config: boltdb: directorio: / data / loki / index filesystem: directorio: / data / loki / chunks limits_config: enforce_metric_name: false accept_old_samples: true verify_old_samples_max_age: 168h chunk_store_config: max_look_back_period_retención: 0s table_delete

5. Crear servicio Loki:

Cree el siguiente archivo en / etc / systemd / system para demonizar el servicio Loki:

sudo tee / etc / systemd / system / loki.Servicio<

6. Vuelva a cargar el demonio del sistema y luego inicie el servicio Loki:

sudo systemctl daemon-reload sudo systemctl start loki.Servicio

Puede comprobar y ver si el servicio se ha iniciado correctamente:

$ sudo systemctl status loki ● loki.service - Loki service Loaded: cargado (/ etc / systemd / system / loki.Servicio; discapacitado; preajuste del proveedor: habilitado) Activo: activo (en ejecución) desde el lunes 21 de diciembre de 2020 a las 11:49:49 UTC; Hace 2min 37s PID principal: 15223 (loki) Tareas: 7 (límite: 1137) Memoria: 13.6M CGroup: / sistema.rebanada / loki.servicio └─15223 / usr / local / bin / loki -config.archivo / etc / loki-local-config.yaml 21 de diciembre 11:49:49 ubuntu loki [15223]: nivel = información ts = 2020-12-21T11: 49: 49.330959628Z llamador = table_manager.go: 476 msg = "creando tabla" table = index_2658 21 de diciembre 11:49:49 ubuntu loki [15223]: level = info ts = 2020-12-21T11: 49: 49.331092225Z llamador = table_manager.go: 476 msg = "creando tabla" table = index_2549 21 de diciembre 11:49:49 ubuntu loki [15223]: level = info ts = 2020-12-21T11: 49: 49.331220486Z llamador = table_manager.go: 476 msg = "creando tabla" table = index_2562 21 de diciembre 11:49:49 ubuntu loki [15223]: level = info ts = 2020-12-21T11: 49: 49.331347316Z llamador = table_manager.go: 476 msg = "creando tabla" table = index_2615 21 de diciembre 11:49:49 ubuntu loki [15223]: level = info ts = 2020-12-21T11: 49: 49.331471475Z llamador = table_manager.go: 476 msg = "creando tabla" table = index_2643 21 de diciembre 11:49:49 ubuntu loki [15223]: level = info ts = 2020-12-21T11: 49: 49.327278535Z llamador = module_service.ir: 58 msg = módulo de inicialización = anillo 21 de diciembre 11:49:49 ubuntu loki [15223]: nivel = información ts = 2020-12-21T11: 49: 49.331950866Z llamador = module_service.ir: 58 msg = módulo de inicialización = distribuidor 21 de diciembre 11:49:49 ubuntu loki [15223]: nivel = información ts = 2020-12-21T11: 49: 49.332140208Z llamador = module_service.go: 58 msg = módulo de inicialización = ingester-querier 21 de diciembre 11:49:49 ubuntu loki [15223]: level = info ts = 2020-12-21T11: 49: 49.332342162Z llamador = loki.ir: 227 msg = "Loki comenzó" 21 de diciembre 11:51:49 ubuntu loki [15223]: level = info ts = 2020-12-21T11: 51: 49.311922692Z llamador = table_manager.ir: 324 msg = "sincronizar tablas" esperaba_tablas = 141

Ahora puede acceder a las métricas de Loki a través de http: // servidor-IP: 3100 / metrics

Paso 3: instalar Promtail Agent

Promtail es un agente que envía el contenido de los registros locales a una instancia privada de Loki o Grafana Cloud.

  1. Descargue el zip binario de Promtail desde la página de lanzamiento
curl -s https: // api.github.com / repos / grafana / loki / releases / latest | grep browser_download_url | cortar -d '"' -f 4 | grep promtail-linux-amd64.zip | wget -i -

Una vez descargado el archivo, extráigalo a / usr / local / bin

descomprimir promtail-linux-amd64.zip sudo mv promtail-linux-amd64 / usr / local / bin / promtail

Ver versión:

$ promtail --version promtail, versión 2.0.0 (rama: HEAD, revisión: 6978ee5d) usuario de compilación: [correo electrónico protegido] fecha de compilación: 2020-10-26T15: 54: 56Z go versión: go1.14.2 plataforma: linux / amd64

2. Cree un archivo de configuración YAML para Promtail en el / usr / local / bin directorio:

sudo vim / etc / promtail-local-config.yaml

3. Agregue el siguiente contenido al archivo:

servidor: http_listen_port: 9080 grpc_listen_port: 0 posiciones: nombre de archivo: / data / loki / posiciones.Clientes yaml: - url: http: // localhost: 3100 / loki / api / v1 / push scrape_configs: - nombre_trabajo: system static_configs: - destinos: - etiquetas de localhost: trabajo: varlogs __path__: / var / log / * log

4. Crea un servicio para Promtail:

sudo tee / etc / systemd / system / promtail.Servicio<

5. Recargue e inicie el servicio Promtail

sudo systemctl daemon-reload sudo systemctl start promtail.Servicio

Confirme si el servicio está en estado de ejecución:

$ systemctl status promtail.servicio ● promtail.servicio - Servicio Promtail Cargado: cargado (/ etc / systemd / system / promtail.Servicio; discapacitado; preajuste del proveedor: habilitado) Activo: activo (en ejecución) desde el lunes 21 de diciembre de 2020 a las 11:57:41 UTC; Hace 3s PID principal: 15381 (promtail) Tareas: 6 (límite: 1137) Memoria: 8.8M CGroup: / sistema.rebanada / cola.servicio └─15381 / usr / local / bin / promtail -config.archivo / etc / promtail-local-config.yaml 21 de diciembre 11:57:41 ubuntu systemd [1]: se inició el servicio Promtail. 21 de diciembre 11:57:41 ubuntu promtail [15381]: nivel = información ts = 2020-12-21T11: 57: 41.911186079Z llamador = servidor.ir: 225 http = [::]: 9080 grpc = [::]: 35499 msg = "servidor escuchando en> 21 de diciembre 11:57:41 ubuntu promtail [15381]: nivel = info ts = 2020-12-21T11: 57:41.911859429Z llamador = principal.go: 108 msg = "Iniciando Promtail" versión = "(versión = 2.0.0, rama = H>

En este punto, hemos instalado Grafana, Loki y Promtail.

El siguiente paso es configurar Grafana Dashboard y visualizar los registros usando Loki.

Paso 4: configurar la fuente de datos de Loki

  1. Inicie sesión en la interfaz web de Grafana y seleccione 'Explorar'. Se le pedirá que cree una fuente de datos.

2. Haga clic en Agregar fuente de datos luego seleccione Loki de las opciones disponibles:

4. Ingrese los siguientes valores para Loki:

Nombre: Loki URL: http: // 127.0.0.1: 3100

Ver la captura de pantalla a continuación.

5. Hacer clic Guardar y probar. Debería ver una notificación de que la fuente de datos se agregó correctamente.

Paso 5: Visualice los registros en Grafana con Loki

Ahora podemos visualizar registros usando Loki.

Haga clic en Explorar luego seleccione Loki en la fuente de datos

Ahora puede visualizar fácilmente los registros seleccionando el Etiquetas de registro opciones.

Conclusión

Hemos instalado con éxito Grafana Loki con Promtail y hemos podido visualizar los registros en un panel de Grafana.

Grafana Loki puede utilizar muchas más herramientas de reenvío de registros además de Promtail, e.g FluentBit. También puede usar Grafana Loki para monitorear su clúster de Kubernetes. Disfrutar!

Configurar instancia de base de datos de AWS RDS MySQL con CloudFormation
Este artículo ayuda a un usuario a crear una instancia de base de datos MYSQL utilizando el servicio de automatización de CloudFormation. RDS signific...
Cómo instalar Docker Swarm en Ubuntu 20.04
Docker Swarm es una herramienta que se utiliza para crear un clúster de hosts de Docker. Con Docker Swarm, podemos crear un clúster de alta disponibil...
Cambio del nombre de host del servidor Linux en AWS EC2 | OpenStack | DigitalOcean | Azure
¿Cómo puedo cambiar el nombre de host del servidor Linux de forma permanente en AWS EC2 / OpenStack / DigitalOcean / Azure Cloud Platform??. Cuando cr...

Sitio web dedicado a gadgets, sistemas operativos y tecnología moderna. Muchos artículos interesantes y consejos útiles