Elasticsearch + Docker Compose: Parte 2 - Agente Elastic, Servidor Fleet, APM

Publicado el 22/11/2023

« Ver todas las conferencias Contáctenos
Elasticsearch + Docker Compose: Part 2 - Elastic Agent, Fleet Server, APM

Introducción

Código en Github: Elasticsearch + Docker Parte 2

Vamos a configurar Elasticsearch, Kibana, Elastic Agent, Fleet Server y APM con Docker Compose.

Este video asume que ya sabes cómo configurar Elasticsearch, Kibana, Beats y Logstash sin usar un contenedor. Si no es así, puedes...Vaya aquí configuración. Y deberías entender Agente elástico, Servidor de flotas y APM.

Requisitos

Paso 1 - Consulta el código [02:30]

Cierre los contenedores Docker que se estaban ejecutando anteriormente con el siguiente comando;

docker-compose down --remove-orphans --volumes

Crea un nuevo directorio para esta parte 2

mkdir ../es2 cd ../es2

Inicializar un nuevo repositorio git.

git init; git remote add origin https://github.com/evermight/elastic-stack-docker-part-two.git; git fetch -a; git checkout main

Enumere todos los archivos en el directorio.

ls -alh

Construya con el siguiente comando docker compose.

docker-compose up --build -d

Ejecute el siguiente comando para obtener los detalles de todos los contenedores:

docker ps -a

Obtenga la dirección IP de su servidor, ya que se utilizará como URL para los contenedores Docker.

hostname -i

Visita la página de Kibana con http://<YOUR IP ADDRESS>:5601.Luego, inicie sesión con el nombre de usuario y la contraseña elásticos que aparecen en la .env archivo

username: elastic password: changeme

alt text Página de inicio de sesión de Kibana

Paso 2: Confirmar que los servicios estén operativos [06:45]

Ir a Fleet > settings, y haga clic en el icono del lápiz EDI. Consulte la imagen a continuación.

alt text Editar la salida del servidor de flota

Para obtener la huella digital del certificado, ejecute los siguientes comandos:

docker cp es-cluster-es01-1:/usr/share/elasticsearch/config/certs/ca/ca.crt /tmp/.

y ejecute lo siguiente para obtener la huella digital del certificado.

openssl x509 -fingerprint -sha256 -noout -in /tmp/ca.crt | awk -F"=" {' print $2 '} | sed s/://g

Utilice el siguiente comando para generar el certificado;

cat /tmp/ca.crt

Una vez que tenga el texto del certificado, lo agregaremos a un formato yml e ingresaremos toda esta información en la pantalla Configuración de flota anterior.

ssl: certificate_authorities: - |

y agregue el contenido y el espacio según corresponda como se muestra en la imagen a continuación.

alt text Certificado en estilo Yml

Actualice los campos en su Kibana como se muestra en la imagen de abajo;

alt text Cambios en el servidor de flotas

Luego haga clic en Guardar y aplicar la configuración, y luego proceda a hacer clic en Guardar e implementar.Ahora regresa a la Flota > Agente y actualice la pestaña. Debería ver algo similar a la imagen de abajo, lo que indica que Elastic Agent, AM y Fleet Server están activos y en funcionamiento.

alt text Elastic Agent, APM y Fleet Server se ejecutaron correctamente

Para ver los servicios de APM vaya a Observabilidad > APM > Servicios, y deberías ver algo similar a la imagen de abajo

alt text Éxito de APM

Para ver los registros de la aplicación web de Python, utilice el siguiente comando;

docker logs es-cluster-webapp-1

Debería obtener un resultado similar a la imagen de abajo;

alt text Registros de aplicaciones web

Vaya a su navegador y ejecute la URL http://0.0.0.0:8000La aplicación web debería verse similar a la imagen de abajo;

alt text Sitio web de la aplicación web

Haz clic en los botones de generación que aparecen ahí mismo para que la aplicación web envíe un mensaje a Elastic. Ve a Observabilidad > APM > Servicios > Mi servicio de Python > Descripción general Y pulsa "Actualizar" para ver las solicitudes realizadas. A continuación, se muestra una captura de pantalla de cómo se ve.

alt text Solicitudes de my_python_service