Clopstech

Avances de Junio y Julio

Este informe detalla los avances y las tareas realizadas por Clopstech durante los meses de Junio y Julio en la optimización y soporte de la infraestructura de Git Operador. Nos enfocamos en la estabilización de los pipelines de despliegue y en brindar soporte crítico para asegurar la continuidad operativa.

Junio: Estabilización y Planificación 🗓️

1. Avance del Relevamiento de Infraestructura

Dada la criticidad y a la urgencia de las tareas no programadas, decidimos darle enfoque a esas tareas y no se pudo avanzar en el relevamiento, por lo que seguimos en un 30%.

Estado Actual del Relevamiento

30%

Avance del Relevamiento Completado

Además, se avanzó en la planificación y propuesta de acciones futuras en base a lo conversado en las reuniones con el equipo:

  • Planificación de apagado de EC2 con VPN "vieja": Lo cual va a reflejar una reduccion aproximada de 8 usd.
  • Propuesta de correcciones en los pipelines aplicando Buildkit de Docker: Lo cual podría generar una reducción de tiempo sustancial en los pipelines (reducción de por lo menos el 50% de demora en la ejecución). Esto se podría realizar con una prueba prototipo sobre alguna de las APIs menos crítica.

2. Tareas Planificadas: Correcciones y Optimización de Pipelines

Durante el mes de Junio, se configuraron y aplicaron correcciones significativas en los pipelines de los siguientes componentes, los cuales ya se encuentran listos y operativos en el entorno de desarrollo (Dev).

Componentes con Pipeline Corregido y Listo en Dev

APIs (Backend)

👤

API USERS

🏨

API HOTELS

✈️

API FLIGHTS

💳

API PAYMENTS

📜

API RULES

Frontends

🌐

White-Brand

🖥️

Frontend Backoffice

Correcciones aplicadas a los pipelines (común a todos los componentes del back):

  • Nuevo stage `build docker` incorporado: Se añadió una etapa dedicada a la construcción de imágenes Docker, optimizando el proceso.
  • Se elimina la doble ejecución del stage `tag`: Se corrigió un error que causaba la doble ejecución de la etapa de etiquetado, mejorando la eficiencia.
  • Se quita el `needs: [build]` del stage `create_tag`: Como parte de una mejora crítica para evitar fallos que logramos identificar en base a las pruebas realizadas en el análisis de los fallos.
  • Actualización del script `git_create_tag.py`:
    • El archivo fue modificado en dev para todos los componentes.
    • En el caso de las APIs (backend): este archivo está ignorado por Git, por lo tanto, deberá ser copiado manualmente al resto de los entornos (no se aplicará automáticamente con los merges).
    • En el caso de los Front (Backoffice y Whitebrand): sí se verá reflejado con los merges, ya que no tienen restricciones por `.gitignore`.

3. Soportes Operativos

Se brindó soporte en línea, por fallos de despliegues en Producción de las 5 APIs, se hicieron correcciones y se acompañó en cada uno de los despliegues validando correcto funcionamiento.

🛠️

Correcciones en Despliegues

Identificación y aplicación de soluciones para fallos en producción.

🤝

Acompañamiento en Despliegues

Soporte y validación en cada despliegue de las APIs.

Validación de Funcionamiento

Confirmación del correcto funcionamiento post-despliegue.

4. Integraciones con Servicios de Terceros

En cuanto a las integraciones, es crucial enfocarse en la EC2 Proxy (Nginx). Se debe identificar a fondo la configuración actual del proxy para luego planificar una actualización controlada. Este proceso incluirá la realización de un backup completo de la instancia EC2, un backup detallado de su configuración, y todas las consideraciones asociadas al mantenimiento de un servidor que no ha sido reiniciado en varios años, asegurando la estabilidad y continuidad del servicio.


Julio: Soporte Crítico

Tareas de Soporte en Julio

Durante el mes, se brindó un soporte intensivo en situaciones operativas críticas, asegurando la continuidad del servicio.

  • Fallas en despliegue de API Payment: Intervención de urgencia para corregir fallos que impedían el despliegue de la API. Se acompañó el proceso completo para asegurar su correcto funcionamiento.
  • Caída de VPN por expiración de certificados: Se trató un tema crítico que dejó sin acceso al equipo a la infraestructura de AWS. Se trabajó rápidamente para generar y aplicar nuevos certificados y crear nuevos usuarios.
  • Fallas en el runner que impedían la ejecución de los pipelines: Se identificaron y corrigieron fallas en el "runner" que bloqueaban la ejecución de los pipelines, esenciales para los despliegues. Se realizaron los ajustes necesarios para normalizar la operación.

Nuestro Roadmap: Las Próximas Fases

Nuestro plan de trabajo es claro y transparente. Así es como continuaremos aportando valor a la operación a través de fases clave.

Fase 1: Diagnóstico y Planificación Detallada

Completar el relevamiento integral de todos los servicios restantes (S3, CloudFront, Lambda, DNS, etc.) para obtener un diagnóstico completo. Esto incluirá la priorización de la propuesta de Buildkit y la planificación del apagado de la EC2 identificada.

Fase 2: Implementación de Correcciones y Estabilización

Implementar las correcciones necesarias basadas en el diagnóstico para estabilizar la infraestructura, optimizar el rendimiento y resolver vulnerabilidades. Aquí se incluirá la ejecución de la prueba prototipo con Buildkit en una API.

Fase 3: Mantenimiento Proactivo y Mejora Continua

  • Implementación de soluciones de monitoreo avanzadas.
  • Revisiones periódicas de la infraestructura.
  • Gestión de capacidades.
  • Optimización de recursos existentes.
  • Análisis y planificación de la réplica controlada de las integraciones con servicios de terceros.

Fase 4: Optimización Avanzada

  • Optimización de costos en la nube.
  • Mejora continua de la escalabilidad.
  • Implementación de WAF para reforzar seguridad.
  • Integración de escaneo de vulnerabilidades en el proceso de construcción de imágenes Docker.
  • Reforzamiento de la seguridad general.