Caso Práctico
Implementación y gestión de una plataforma de transmisión de datos
Industria
- Tecnología
- Empresa especializada en áreas como telecomunicaciones, automatización, digitalización, ingeniería, Inteligencia Artificial (IA), Internet de las Cosas (IoT), ciberseguridad, metaverso, transporte y edificios inteligentes
Desafíos
- Implementar y gestionar la plataforma de transmisión de datos y las herramientas relacionadas, que son utilizadas por los sistemas de gestión, ventas y fábricas del cliente en todo el mundo.
- Desarrollar y mantener pipelines para gestionar los recursos de Kafka y las aplicaciones del ecosistema de Kafka, como Kafka Connect, Schema Registry, REST Proxy o ksqlDB.
- Definir la arquitectura, implementar y automatizar soluciones para mejorar la gestión de recursos y reducir gastos.
- Implementar soluciones complementarias a la plataforma de transmisión de datos para el uso, monitoreo y gobernanza de los datos.
Solución
El equipo dedicado a este proyecto fue responsable de desarrollos como:
- Implementación de un modelo GitOps para gestionar recursos de Kafka, un repositorio con “Single Source Of Truth” (SSOT) y adopción de IaC (Infrastructure as Code).
- Creación de un nuevo clúster de Kafka en Kubernetes, usando Strimzi, migración de la carga actual, que estaba en OpenShift (local), con el objetivo de reducir costos.
- Reestructuración de aplicaciones y namespaces (Kubernetes) para reducir costos.
- Análisis y tratamiento de vulnerabilidades.
- Implementación de Conduktor (herramienta de gestión, monitoreo y gobernanza de datos para Kafka).
- Implementación de un sistema de monitoreo para clústeres de Kafka (Confluent Cloud y Strimzi), dashboards y alertas, usando Prometheus y Grafana.
- Implementación de Kafka Connect y conectores (sink/source) para la transferencia de datos entre Kafka y diferentes sistemas como SAP, Snowflake, Amazon S3 y Celonis.
- Implementación de instancias de Kafka REST Proxy para sistemas que usan Kafka, a través de REST API.
- Creación de pipelines para aplicaciones personalizadas desarrolladas internamente.
Metodologías
DevOps y GitOps.
Tecnologías
- Apache Kafka
- Kubernetes
- Terraform
- Helm
- Amazon Web Services (AWS)
- Red Hat OpenShift
- Prometheus
- Grafana
- Confluent Cloud
- GitHub Actions
- GitLab CI
- Strimzi
- Conduktor
- HashiCorp Vault
Cronograma y recursos
El proyecto comenzó en 2022 y las funcionalidades se han entregado según las necesidades de las áreas internas. El equipo actualmente trabaja en aproximadamente 15 clientes/proyectos internos.
El equipo incluye:
- 1 Product Owner
- 1 Service Owner
- 2 Ingenieros DevOps
Resultados y experiencia del cliente
Nuestro trabajo fue esencial para continuar la implementación de la solución desarrollada a principios de 2022.
Facilitamos el desarrollo de varias automatizaciones y documentación, así como la implementación de nuevas soluciones, funcionalidades y correcciones de errores.
También logramos implementar un modelo GitOps para la plataforma de transmisión de datos del cliente.
Arquitectura