No es necesario volver a aprender, use Kibana para consultar/visualizar datos SLS

Autor: Jing Lei

Escenas

Ahora, gracias a la compatibilidad ES de SLS, puede utilizar Kibana fácilmente para consultar y visualizar datos de SLS. Los usuarios que migran de ES a SLS pueden seguir conservando sus hábitos de uso originales de Kibana. A continuación se muestra cómo acceder a SLS a través de Kibana.

Instrucciones

Arquitectura de implementación

Las partes azules aquí son componentes que requieren implementación del cliente.

  • Kibana se utiliza para la visualización.
  • El proxy se utiliza para distinguir las solicitudes de Kibana y reenviar las relacionadas con SLS a la interfaz compatible con ES de SLS.
  • Elasticsearch se utiliza para almacenar Meta de Kibana

Espera, ¿por qué necesitamos un ES aquí? 

La razón es que el almacén de registros de SLS no admite actualizaciones y muchos datos de metaclases no son adecuados para SLS.

Kibana tiene muchos metadatos para almacenar, como la configuración del gráfico de Kibana, la configuración del patrón de índice, etc.

Por lo tanto, necesita implementar una instancia de ES. Esta instancia de ES solo almacenará los metadatos de Kibana, por lo que su uso de recursos es muy pequeño.

Proceso de implementación

Implementar usando Docker-Compose

Preparaciones relacionadas

Después de instalar Docker y Docker Compose, los siguientes pasos también se aplican a Podman Compose.

Crear directorios relacionados

mkdir sls-kibaba # 创建一个新的目录
cd sls-kibaba # 进入
mkdir es_data # 创建一个目录用于放es的数据

Configuración

Cree el archivo docker-compose.yml en el directorio sls-kibana.

El contenido es el siguiente: (Las siguientes marcas son los lugares que deben modificarse aquí. Realice modificaciones de acuerdo con la situación real)

version: '3'
services:
  es:
    image: elasticsearch:7.17.3
    environment:
      - "discovery.type=single-node"
      - "ES_JAVA_OPTS=-Xms2G -Xmx2G"
      - ELASTIC_USERNAME=elastic
      - ELASTIC_PASSWORD=ES密码 # 此处请修改
      - xpack.security.enabled=true
    volumes:
      - ./data:/usr/share/elasticsearch/data
    networks:
      - es717net

  kproxy:
    image: sls-registry.cn-hangzhou.cr.aliyuncs.com/kproxy/kproxy:1.9d
    depends_on:
      - es
    environment:
      - ES_ENDPOINT=es:9200
      - SLS_ENDPOINT=https://etl-dev.cn-huhehaote.log.aliyuncs.com/es/ # 此处请修改,规则为 https://${project名}.${slsEnpoint名}/es/
      - SLS_PROJECT=etl-dev # 此处请修改
      - SLS_ACCESS_KEY_ID=ALIYUN_ACCESS_KEY_ID # 此处请修改, 确保有读logstore的权限
      - SLS_ACCESS_KEY_SECRET=ALIYUN_ACCESS_KEY_SECRET # 此处请修改为真实accessKeySecret
    networks:
      - es717net

  kibana:
    image: kibana:7.17.3
    depends_on:
      - kproxy
    environment:
      - ELASTICSEARCH_HOSTS=http://kproxy:9201
      - ELASTICSEARCH_USERNAME=elastic
      - ELASTICSEARCH_PASSWORD=ES密码 # 此处请修改(跟前面设置的ES密码相同)
      - XPACK_MONITORING_UI_CONTAINER_ELASTICSEARCH_ENABLED=true
    ports:
      - "5601:5601"
    networks:
      - es717net

networks:
  es717net:
    ipam:
      driver: default

Inicie el servicio local de Kibana:

docker compose up -d

Verifique el estado de inicio de Docker Compose:

docker compose ps

Visita Kibana

Acceda a http://$ ( dirección IP de implementación de Kibaba}:5601 con su navegador , ingrese su cuenta y contraseña para iniciar sesión en Kibana.

Configurar patrón de índice

Seleccione Gestión de pila:

Haga clic en la pestaña Patrón de índice. Es normal no ver datos en la lista Patrón de índice. El almacén de registros del servicio de registro está asignado a los patrones de índice en Kibana y debe crearse manualmente. Haga clic en crear un patrón de índice contra índices ocultos o del sistema en el cuadro emergente.

En la página Crear patrón de índice, el formato de Nombre es ${project}.${logstore}. Tenga en cuenta que la proporción debe completarse por completo y que * no se admite la coincidencia.

Haga clic en Crear patrón de índice para completar la creación del patrón y luego ingrese Descubrir para consultar los datos.

Almacén de registros de consultas

KQL y Lucene se pueden seleccionar en el cuadro de consulta de Kibana, y se admiten ambas interfaces compatibles con ES de SLS.

Consulta de host simple:

Se pueden realizar algunas consultas y filtros complejos.

Gráficos visuales

Entonces, además de realizar consultas, ¿se puede utilizar Kibana para visualización? ¡seguro! Seleccione Panel de control.

Después de ingresar, haga clic en Crear panel para crear un gráfico.

Al configurar los campos y los métodos estadísticos del eje horizontal y del eje vertical, puede crear fácilmente el gráfico deseado.

Por ejemplo, el histograma más simple es un histograma que cuenta el número de visitas solicitadas, con el tiempo en el eje horizontal y el número de registros en el eje vertical.

Ahora quiero ver el estado de cada columna. Puedo seleccionar el campo Desglosar por como estado.

Preguntas más frecuentes

1) ¿Por qué no puedo ver Logstore en SLS en Kibana?

El almacén de registros en SLS se consulta a través del patrón de índice de Kibana, y el almacén de registros en SLS debe crearse creando manualmente un patrón de índice.

2) Al crear un patrón de índice en Kibana, ¿por qué no aparece ningún mensaje cuando no se realiza ninguna entrada?

Esto es normal después de ingresar el ${project}.${logstore} correcto a la izquierda (donde ${project} y ${logstore} deben reemplazarse con valores reales), se mostrará lo siguiente:

3) ¿Kibana admite comodines * al crear un patrón de índice?

No se admiten comodines y ${project}.${logstore} debe completarse por completo, como etl-dev.accesslog para que coincida.

4) ¿Por qué no aparece ningún mensaje en el lado derecho al crear el patrón de índice de Logstore en Kibana?

Hay varias posibilidades:

  1. La dirección compatible con ES de SLS es incorrecta Cuando se configura en kproxy, la regla es  https://${project name}.${slsEnpoint name}/es/. Preste atención al sufijo /es/. 2. El accessKeyId y accessKeySerect correspondientes no tienen permiso para acceder a SLS Logstore (permiso de lectura).
  2. 5) Tengo varios proyectos SLS a los que quiero acceder en Kibana. ¿Se puede hacer esto?

Sí, la clave está en la configuración de kproxy. SLS_PROJECT, SLS_ENDPOINT, SLS_ACCESS_KEY_ID, SLS_ACCESS_KEY_SECRET son los nombres de las variables relacionadas con el primer proyecto. A partir del segundo proyecto, los nombres de las variables relevantes deben agregarse con sufijos numéricos, como SLS_PROJECT2, SLS_ENDPOINT2, SLS_ACCESS_KEY_ID2, SLS_ACCESS_KEY_SECRET2. Si la AccessKey de un Proyecto posterior es la misma que la del primer Proyecto, se podrá omitir la configuración de la AccessKey correspondiente al Proyecto.

Por ejemplo, suponiendo que Kibaba vaya a comprobar otro proyecto, entonces como segundo kproxy:

- SLS_ENDPOINT2=https://etl-dev2.cn-huhehaote.log.aliyuncs.com/es/
- SLS_PROJECT2=etl-dev2
- SLS_ACCESS_KEY_ID2=etl-dev2对应的accessKeyId  #如果和SLS_ACCESS_KEY_ID2一样可以不加
- SLS_ACCESS_KEY_SECRET2=etl-dev2对应的accessKeyKey #如果和SLS_ACCESS_KEY_ID2一样可以不加

resumen

Este artículo demuestra cómo usar Kibana para conectarse a la interfaz compatible con SLS ES para consultas y análisis. Las capacidades de consulta y visualización de Kibana se pueden conectar y usar normalmente. Adecuado para las dos situaciones siguientes:

  • Si su hábito de uso anterior es Kibana y los registros ya existen en Alibaba Cloud SLS, puede utilizar esta solución para conectarse.
  • Si actualmente está utilizando la solución ELK estándar pero está cansado del trabajo de mantenimiento o ajuste cuando usa ES, puede probar la solución Alibaba Cloud SLS (capa inferior de C++, sin servidor, de bajo costo, compatible con ES).

Esperamos su uso.

Documentación de referencia:

Decidí renunciar al software industrial de código abierto. Eventos importantes: se lanzó OGG 1.0, Huawei contribuyó con todo el código fuente y se lanzó oficialmente Ubuntu 24.04. El equipo de la Fundación Google Python fue despedido por la "montaña de código de mierda" . ". Se lanzó oficialmente Fedora Linux 40. Una conocida compañía de juegos lanzó Nuevas regulaciones: los obsequios de boda de los empleados no deben exceder los 100.000 yuanes. China Unicom lanza la primera versión china Llama3 8B del mundo del modelo de código abierto. Pinduoduo es sentenciado a compensar 5 millones de yuanes por competencia desleal. Método de entrada en la nube nacional: solo Huawei no tiene problemas de seguridad para cargar datos en la nube.
{{o.nombre}}
{{m.nombre}}

Supongo que te gusta

Origin my.oschina.net/u/3874284/blog/11059549
Recomendado
Clasificación