Aplicación web creada en Python/Flask.
Visualización de métricas e información en tiempo real.
Falicitar el monitoreo.
Frontend | Backend | Contenedores | ||
---|---|---|---|---|
HTML5 | CSS3 | Python | Flask | Docker Compose |
-
RECOLECCIÓN
Prometheus captura datos de rendimiento constante.
-
VISUALIZACIÓN
Gráficos de peticiones HTTP, tasa de errores, etc.
-
CONFIGURACIÓN CON ANSIBLE
- Automatización de instalación y configuración.
- Ansible se encargará de levantar y configurar el Docker Compose para orquestrar todo el despliegue.
-
CONTENERIZACIÓN CON DOCKER
- Empaquetado de aplicación y dependencias en contenedores.
-
ORQUESTRACIÓN CON DOCKER COMPOSE
- Gestión de múltiples contenedores como un servicio unificado.
-
ESCALABILIDAD SUPERIOR
- Sistema completo de monitoreo en producción.
- Despliegue automatizado y sin intervención manual.
- Visualización unificada de métricas.
-
MEJORAS FUTURAS
- Integración con OpenTelemetry para trazabilidad.
- Implementación de Dynatrace para APM (Application Performance Monitoring / Gestión del Rendimiento de Aplicaciones) avanzado.
- Infrastructura como código con Terraform.
proyectoFinalCurso/
├── app/
│ ├── app.py
│ ├── Dockerfile
│ └── requirements.txt
├── prometheus.yml
├── docker-compose.yml
└── playbook.yml
Contiene el código Python de la web, expone las rutas, genera los números aleatorios y publica las métricas para Prometheus.
Indica los paquetes que deben instalarse (por ejemplo, Flask y prometheus_client) para que la aplicación funcione correctamente.
Define cómo construir el contenedor de la app Flask (instala dependencias, copia el código, expone el puerto, etc.).
Indica a Prometheus qué endpoints debe monitorizar (scrape), con qué frecuencia y bajo qué nombre.
Define y coordina todos los servicios del proyecto: la app Flask, Prometheus, Grafana y sus volúmenes/redes.
Automatiza tareas como levantar o parar los servicios definidos en Docker Compose.
Antes de ejecutar el proyecto, se debe de tener instalado antes de ejecutar el playbook.
-
Instalar Ansible:
sudo apt update
sudo apt install ansible -y
-
Verificar la disponibilidad de
ansible-galaxy
:ansible-galaxy --help
-
Para poder iniciar todos los servicios, debemos de ejecutar:
ansible-playbook playbook.yml --tags "start"
-
Para poder detener y eliminar todos los servicios, debemos de ejecutar:
ansible-playbook playbook.yml --tags "stop"