Skip to content

macuartin/opensearch-lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Opensearch Lab

Este proyecto contiene un entorno de contenedores para un laboratorio de prueba que incluye:

  • OpenSearch: Base de datos de búsqueda y análisis, sin seguridad habilitada.
  • OpenSearch Dashboards: Interfaz web para visualizar y consultar los datos indexados en OpenSearch.
  • Logstash: Recibe logs vía TCP y los envía a OpenSearch. Incluye un filtro para parsear ciertos campos ISO8583.
  • Servicio Python: Simulador de generación de mensajes ISO8583, enviando logs a Logstash.

Estructura de Archivos

opensearch-lab/
├── docker-compose.yml
├── README.md
├── logstash/
│   └── pipeline.conf
└── python-service/
    ├── Dockerfile
    └── iso8583_simulator.py

Pasos para Ejecutar

  1. Clonar el repositorio o copiar este contenido en un directorio local.

  2. Asegúrate de tener Docker y Docker Compose instalados.

  3. Desde la raíz del proyecto, ejecuta:

    docker-compose up -d --build

    Esto descargará/creará las imágenes y levantará los contenedores.

  4. Verifica que los servicios estén en ejecución:

    • docker-compose ps para ver el estado de los contenedores.
    • docker-compose logs -f opensearch para monitorear OpenSearch.
    • docker-compose logs -f logstash para monitorear Logstash.
    • docker-compose logs -f python-service para monitorear el simulador Python.
  5. Accede a OpenSearch Dashboards en http://localhost:5601. No se necesita usuario/contraseña.

  6. Crea un Index Pattern (si es la primera vez):

    • Usa iso8583-logs (o iso8583-logs*) como patrón.
    • Selecciona @timestamp como campo de tiempo.
  7. En la sección Discover de OpenSearch Dashboards, selecciona el index pattern y deberías ver llegar los eventos desde el simulador.

  8. Detener el entorno:

    docker-compose down

Notas

  • El pipeline de Logstash (logstash/pipeline.conf) contiene un filtro grok básico para extraer campos de los mensajes ISO8583 simulados. Se puede adaptar según tus necesidades.

  • El script Python (iso8583_simulator.py) envía un mensaje cada 1 segundo por TCP al puerto 5001 de Logstash. Ajusta ese intervalo según desees.

  • Este entorno se ejecuta sin seguridad y sin SSL, ideal para desarrollo y pruebas locales, no recomendado para producción.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published