Visualice los registros de Apache con la pila de alces

Visualice los registros de Apache con la pila de alces

Monitorear y analizar registros para diversas infraestructuras en tiempo real puede ser un trabajo muy tedioso. Al tratar con servicios como servidores web que registran constantemente datos, el proceso puede ser muy complejo y casi imposible.

Como tal, saber cómo usar herramientas para monitorear, visualizar y analizar registros en tiempo real puede ayudarlo a rastrear y solucionar problemas y monitorear actividades sospechosas del sistema.

Este tutorial discutirá cómo puede usar una de las mejores colecciones de registros en tiempo real y análisis de herramientas. Uso de Elk, comúnmente conocido como Elasticsearch, Logstash y Kibana, puede recopilar, registrar y analizar datos de un servidor web Apache en tiempo real.

¿Qué es la pila de alces??

Elk es un acrónimo utilizado para referirse a tres herramientas principales de código abierto: Elasticsearch, Logstash y Kibana.

Elasticsearch es una herramienta de código abierto desarrollada para encontrar coincidencias dentro de una gran colección de conjuntos de datos utilizando una selección de lenguajes y tipos de consultas. Es una herramienta ligera y rápida capaz de manejar terabytes de datos con facilidad.

Establo de registro El motor es un enlace entre el lado del servidor y elasticsearch, lo que le permite recopilar datos de una selección de fuentes a Elasticsearch. Ofrece potentes API que son integrables con aplicaciones desarrolladas en varios lenguajes de programación con facilidad.

Kibana es la pieza final de la pila de alces. Es una herramienta de visualización de datos que le permite analizar los datos visualmente y generar informes perspicaces. También ofrece gráficos y animaciones que pueden ayudarlo a interactuar con sus datos.

Elk Stack es muy poderoso y puede hacer increíbles cosas de analíticos de datos.

Aunque los diversos conceptos que discutiremos en este tutorial le darán una buena comprensión de la pila de alces, considere la documentación para obtener más información.

Elasticsearch: https: // linkfy.a/elasticsearch-reference

Establo de registro: https: // linkfy.a/logstashreference

Kibana: https: // linkfy.a/kibanaguide

Cómo instalar Apache?

Antes de comenzar a instalar Apache y todas las dependencias, es bueno tener en cuenta algunas cosas.

Probamos este tutorial sobre Debian 10.6, pero también funcionará con otras distribuciones de Linux.

Dependiendo de la configuración de su sistema, necesita permisos de sudo o raíz.

La compatibilidad y la usabilidad de los alces pueden variar según las versiones.

El primer paso es asegurarse de tener su sistema completamente actualizado:

actualización de sudo apt-get
actualización de sudo apt-get

El siguiente comando es instalar el servidor web de apache2. Si desea instalar un apache mínimo, elimine la documentación y las utilidades del comando a continuación.

sudo apt-get install apache2 apache2-utils apache2-doc -y
servicio sudo apache2 inicio

A estas alturas, debe tener un servidor Apache que se ejecute en su sistema.

Cómo instalar Elasticsearch, Logstash y Kibana?

Ahora necesitamos instalar la pila de alces. Instalaremos cada herramienta individualmente.

Elasticsearch

Comencemos por instalar Elasticsearch. Vamos a usar APT para instalarlo, pero puede obtener una versión estable de la página de descarga oficial aquí:

https: // www.elástico.CO/Descargas/Elasticsearch

Elasticsearch requiere que Java se ejecute. Afortunadamente, la última versión viene inclinada con un paquete OpenJDK, eliminando la molestia de instalarla manualmente. Si necesita hacer una instalación manual, consulte el siguiente recurso:

https: // www.elástico.CO/Guía/EN/ElasticSearch/Reference/Current/Setup.html#jvm-version

En el siguiente paso, necesitamos descargar e instalar la tecla de firma de APT elástica oficial usando el comando:

wget -qo - https: // artefactos.elástico.CO/GPG-Key-ElasticSearch | sudo apt-key agregar -

Antes de continuar, puede necesitar un paquete APT-Transport-HTTPS (requerido para paquetes atendidos a través de HTTPS) antes de continuar con la instalación.

sudo apt-get install apt-transport-https

Ahora, agregue la información de repositorio de apt a las fuentes.lista.archivo d.

Echo "Deb https: // artefactos.elástico.CO/paquetes/7.x/apt estable main ”| Sudo Tee/etc/apt/fuentes.lista.D/elástico-7.X.lista

Luego actualice la lista de paquetes en su sistema.

actualización de sudo apt-get

Instale ElasticSearch utilizando el comando a continuación:

sudo apt-get install elasticsearch

Habiendo instalado ElasticSearch, inicie y habilite un inicio en el arranque con los comandos SystemCTL:

SUDO SystemCtl-Daemon-Re-Re-Reload
sudo systemCTL habilitar elasticsearch.servicio
sudo systemctl start elasticsearch

El servicio puede tardar un tiempo en comenzar. Espere unos minutos y confirme que el servicio está en funcionamiento con el comando:

SUDO SystemCTL Status elasticsearch.servicio

Usando Curl, pruebe si la API ElasticSearch está disponible, como se muestra en la salida JSON a continuación:

curl -x get "localhost: 9200/?bonito"

"Nombre": "Debian",
"cluster_name": "elasticsearch",
"cluster_uuid": "vzhcutuqssko1ryhqmdwsg",
"versión" :
"numero 7.10.1 ",
"build_flavor": "predeterminado",
"build_type": "deb",
"Build_hash": "1C34507E66D7DB1211F66F3513706FDF548736AA",
"build_date": "2020-12-05T01: 00: 33.671820Z ",
"build_snapshot": falso,
"Lucene_version": "8.7.0 ",
"Minimum_Wire_Compatibility_Version": "6.8.0 ",
"Minimum_index_Compatibility_Version": "6.0.0-beta1 "
,
"Iglamento": "Sabes, para la búsqueda"

Cómo instalar Logstash?

Instale el paquete Logstash usando el comando:

sudo apt-get install logstash

Cómo instalar kibana?

Ingrese el comando a continuación para instalar kibana:

sudo apt-get install kibana

Cómo configurar Elasticsearch, Logstash y Kibana?

Aquí le mostramos cómo configurar la pila de alces:

Cómo configurar Elasticsearch?

En ElasticSearch, los datos se ordenan en índices. Cada uno de estos índices tiene uno o más fragmentos. Un fragmento es un motor de búsqueda autónomo utilizado para manejar y administrar índices y consultas para un subconjunto en un clúster dentro de Elasticsearch. Un fragmento funciona como una instancia de un índice de Lucene.

La instalación predeterminada de ElasticSearch crea cinco fragmentos y una réplica para cada índice. Este es un buen mecanismo cuando está en producción. Sin embargo, en este tutorial, trabajaremos con un fragmento y sin réplicas.

Comience creando una plantilla de índice en formato JSON. En el archivo, estableceremos el número de fragmentos en una y cero réplicas para los nombres de índices coincidentes (propósitos de desarrollo).

En ElasticSearch, una plantilla de índice se refiere a cómo instruye a ElasticSearch al configurar el índice durante el proceso de creación.

Dentro del archivo de plantilla JSON (index_template.JSON), ingrese las siguientes instrucciones:


"plantilla":"*",
"ajustes":
"índice":
"Number_of_shards": 1,
"Number_of_replicas": 0


Usando Curl, aplique la configuración JSON a la plantilla, que se aplicará a todos los índices creados.

curl -x pon http: // localhost: 9200/_template/defaults -h 'content -type: aplicación/json' -d @index_template.json
"reconocido": verdadero

Una vez aplicado, Elasticsearch responderá con una declaración reconocida: verdadera declaración.

Cómo configurar logstash?

Para que Logstash recopile registros de Apache, debemos configurarlo para observar cualquier cambio en los registros recopilando, procesando y luego guardando los registros a Elasticsearch. Para que eso suceda, debe configurar la ruta de registro de recopilación en logstash.

Comience mediante la creación de la configuración de Logstash en el archivo/etc/logstash/conf.d/apache.confusión

aporte
archivo
ruta => '/var/www/*/logs/access.registro'
type => "Apache"


filtro
Grok
Match => "Message" => "%combinedapachelog"


producción
Elasticsearch

Ahora asegúrese de habilitar e iniciar el servicio Logstash.

sudo systemctl habilitar logstash.servicio
sudo systemctl iniciar logstash.servicio

Cómo habilitar y configurar kibana?

Para habilitar kibana, edite el principal .Archivo de configuración YML ubicado en/etc/kibana/kibana.YML. Localice las siguientes entradas y desenchufarlas. Una vez hecho, use SystemCTL para iniciar el servicio Kibana.

servidor.Puerto: 5601
servidor.Anfitrión: "Localhost"
sudo systemctl habilita kibana.servicio && sudo systemctl iniciar kibana.servicio

Kibana crea patrones de índice basados ​​en los datos procesados. Por lo tanto, debe recopilar registros con Logstash y almacenarlos en Elasticsearch, que Kibana puede usar. Use Curl para generar registros desde Apache.

Una vez que tenga registros de Apache, inicie Kibana en su navegador utilizando la dirección http: // localhost: 5601, que iniciará la página del índice de Kibana.

En general, debe configurar el patrón de índice utilizado por Kibana para buscar registros y generar informes. Por defecto, Kibana usa el patrón de índice Logstash*, que coincide con todos los índices predeterminados generados por logstash.

Si no tiene ninguna configuración, haga clic en Crear para comenzar a ver los registros.

Cómo ver los registros de Kibana?

A medida que continúa realizando solicitudes de Apache, Logstash recopilará los registros y los agregará a Elasticsearch. Puede ver estos registros en Kibana haciendo clic en la opción Descubrir en el menú izquierdo.

La pestaña Discover le permite ver los registros a medida que el servidor los genera. Para ver los detalles de un registro, simplemente haga clic en el menú desplegable.

Leer y comprender los datos de los registros de Apache.

Cómo buscar registros?

En la interfaz Kibana, encontrará una barra de búsqueda que le permite buscar datos utilizando cadenas de consulta.

Ejemplo: Estado: Activo

Obtenga más información sobre las cuerdas de consultas de Elk aquí:

https: // www.elástico.CO/guía/en/elasticsearch/reference/5.5/QUERY-DSL-QUERTY-QUERY.html#consulta-string-syntax

Dado que estamos tratando con los registros de Apache, una posible coincidencia es un código de estado. Por lo tanto, búsqueda:

Respuesta: 200

Este código buscará registros con el código de estado de 200 (OK) y lo mostrará a Kibana.

Cómo visualizar los registros?

Puede crear paneles visuales en Kibana seleccionando la pestaña Visualizar. Seleccione el tipo de tablero para crear y seleccionar su índice de búsqueda. Puede usar el valor predeterminado para fines de prueba.

Conclusión

En esta guía, discutimos una descripción general de cómo usar la pila de Elk para administrar registros. Sin embargo, hay más en estas tecnologías que este artículo puede cubrir. Recomendamos explorar por su cuenta.