Taller de Observabilidad Help

Ejecutar trabajos en nuestro nodo

El objetivo de este artículo es ejecutar una aplicación de muestra para que podamos generar datos para nuestras herramientas de observabilidad.

Contenedorizando Philosophers

Utilizaremos Docker para contenedorizar nuestra aplicación, de modo que podamos desplegar múltiples instancias de ella de manera sencilla.

  1. Primero, necesitamos crear un Dockerfile, que se utilizará para construir nuestra imagen.

    Crea un archivo llamado Dockerfile en el directorio observability-lab/utilities/philo.

    Agrega el siguiente contenido al archivo:

    FROM ubuntu:latest RUN apt-get update && apt-get install -y \ --no-install-recommends \ git \ build-essential \ ca-certificates \ pwgen \ && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* RUN git clone "https://github.com/tinitiuset/philosophers.git" /usr/local/bin/philo RUN make -C /usr/local/bin/philo/philo RUN chmod a+x /usr/local/bin/philo/philo/philo ENV PATH="/usr/local/bin/philo/philo:$PATH" ENV PHILO_ARGS="" ENTRYPOINT philo $PHILO_ARGS | tee -a /var/log/philo/philo-$(pwgen 5).log
  2. Después de crear el Dockerfile, necesitamos construir la imagen.

    Ejecuta el siguiente comando en observability-lab/utilities/philo:

    docker build -t philo .
  3. Finalmente, podríamos ejecutar la imagen que acabamos de construir.

    Ejecuta el siguiente comando en observability-lab/utilities/philo:

    docker run --rm -it -e PHILO_ARGS="5 800 200 200" philo
  4. También se proporciona un archivo docker-compose en observability-lab/utilities/philo, que se puede utilizar para ejecutar múltiples instancias de la aplicación. Los logs se escribirán en observability-lab/data/philo/ para que Promtail pueda recopilarlos.

    Ejecuta el siguiente comando en observability-lab/utilities/philo:

    docker compose up

Lo que has aprendido

Has aprendido cómo contenedorizar Philosophers y cómo ejecutar múltiples instancias simultáneamente.

Last modified: 31 January 2024