finxp logo

Transformación DevOps cloud-native de FinXP

Innowise ayudó a FinXP a modernizar su infraestructura de servicios financieros mediante la migración de las API y aplicaciones heredadas basadas en PHP a una arquitectura nativa de la nube.

11 aplicaciones

Se ha trasladado de máquinas virtuales a App Service Azure

100% 

Infraestructura como código

Transformación DevOps cloud-native de FinXP
Industria Fintech
Empleados 50+
Región Malta
Servicios Azure: consultoría de DevOps, Cloud: modernización de la infraestructura
Cliente desde 2024

Visión general del cliente

Resumir artículo con IA

FinXP es una empresa europea de tecnología financiera especializada en pagos, fundada en 2014. FinXP ayuda a las empresas a gestionar los pagos entrantes y salientes a través de cuentas IBAN, la emisión de tarjetas y el adeudo directo SEPA. Además, ofrece servicios de compensación, soluciones de pago y pasarelas de pago omnicanal.

FinXP está registrada en el Consejo Europeo de Pagos para los pagos SEPA, colabora con SWIFT y es miembro principal de Mastercard. La empresa cuenta con la autorización de la Autoridad de Servicios Financieros de Malta.

Desafío

FinXP necesitaba modernizar la infraestructura que daba soporte a sus servicios de pago, al tiempo que se mantenía la estabilidad de las operaciones en curso. El trabajo se centró principalmente en reducir las tareas manuales, mejorar la seguridad y preparar el sistema para un crecimiento nativo en la nube.

  • Los servicios financieros básicos dependían de una infraestructura difícil de ampliar y mantener.
  • Las tareas manuales relacionadas con la infraestructura hacían que las entregas fueran menos predecibles y ralentizaban los cambios.
  • La escasa documentación del proyecto dificultó la transferencia de conocimientos y el mantenimiento a largo plazo.
  • Las tareas solían discutirse verbalmente, lo que reducía la transparencia en la planificación y el establecimiento de prioridades.
  • La deficiente estructura de los procesos dificultó la gestión de la deuda técnica y los futuros trabajos de modernización.
  • Las brechas de seguridad supusieron un riesgo adicional para una empresa de tecnología financiera que opera en un entorno regulado.
  • El equipo interno necesitaba ayuda con las prácticas más recientes de DevOps, Kubernetes y las implementaciones en contenedores.
  • Las aplicaciones y las API heredadas de PHP dificultaban el mantenimiento, la ampliación y la migración del sistema.
  • Algunos componentes de la infraestructura se ejecutaban en entornos de alojamiento más antiguos y era necesario migrarlos a Azure.
  • Varios recursos en la nube estaban obsoletos, sin utilizar o mal documentados.
  • Algunos entornos se configuraron manualmente, lo que aumentó el riesgo de que se produjeran incoherencias.
  • Los procesos de implementación se basaban en acciones manuales, lo que dificultaba la reproducibilidad y el control de las versiones.
  • Algunos componentes de la infraestructura utilizaban direcciones IP públicas, lo que exigía prestar especial atención al aislamiento de la red, al control de acceso y al refuerzo de la seguridad.
  • NATS.io requirió instalación, configuración e integración con microservicios.
  • La infraestructura de Kubernetes necesitaba una configuración privada más segura antes de su uso generalizado en producción.
  • La supervisión y el registro de datos solo abarcaban una parte del sistema, lo que dificultaba la resolución de problemas.
  • Las aplicaciones PHP heredadas presentaban problemas de integración con las bases de datos Oracle en el nuevo entorno Azure.
  • La transferencia de mensajes a través de FTP y el envío de correos electrónicos de Office 365 provocaron problemas operativos que requirieron una investigación y la aplicación de soluciones.

Migración segura a la nube

Solución

Innowise se incorporó al proyecto para apoyar la modernización de la infraestructura de FinXP, mejorar las prácticas de DevOps y ayudar al cliente a avanzar hacia una arquitectura nativa de la nube más segura.

Evaluación y planificación de infraestructuras

Al principio, nuestro ingeniero de DevOps analizó la infraestructura existente de FinXP, los servicios activos, las dependencias de las aplicaciones y los resultados de las auditorías. Esto ayudó al equipo a pasar de un objetivo general de modernización a un plan práctico con prioridades, riesgos y próximos pasos bien definidos.

Para centrarse en los ámbitos que más influyeron en la estabilidad y la migración futura, nuestro especialista:

  • Se analizaron los recursos en la nube existentes, los servicios activos y las dependencias de las aplicaciones para comprender cómo interactuaban los sistemas y en qué aspectos la modernización podría suponer un riesgo.
  • Analizamos las conclusiones de la auditoría externa y las tradujimos en tareas prácticas relacionadas con la infraestructura que el equipo de ingeniería pudiera abordar paso a paso.
  • Se identificaron recursos obsoletos, en desuso o mal documentados, lo que ayudó a aclarar qué había que migrar, eliminar o mantener.
  • Apoyó la planificación de la infraestructura para servicios de pago y aplicaciones basadas en API, centrándose en el acceso seguro, la escalabilidad y un mantenimiento más sencillo.
  • Se mejoró la documentación técnica en SharePoint para que el equipo de FinXP pudiera realizar un seguimiento de las decisiones relativas a la infraestructura, transferir conocimientos y dar soporte a futuros cambios con una menor dependencia de ingenieros concretos.

Configuración de la infraestructura de Azure y Kubernetes

FinXP quería avanzar hacia una arquitectura más escalable basada en Azure. Innowise contribuyó a preparar una infraestructura de Kubernetes capaz de dar soporte a los microservicios, a la futura migración de API y a un mayor control sobre los entornos en la nube.

Para sentar unas bases sólidas para la implementación nativa en la nube, nuestro equipo:

  • Se implementó un clúster de prueba de Kubernetes Azure para que el cliente pudiera validar la arquitectura de destino antes de migrar más servicios a Kubernetes.
  • Apoyó la migración de determinados componentes de infraestructura a Azure, lo que ayudó a FinXP a reducir la fragmentación entre los distintos entornos de alojamiento.
  • Se preparó una infraestructura de Kubernetes para microservicios, lo que proporcionó al cliente una base para escalar los servicios y gestionar las implementaciones de una forma más estructurada.
  • Revisé los recursos en la nube más antiguos y ayudé a definir las prioridades de migración, para que el equipo pudiera centrarse en los sistemas más importantes para la estabilidad y la modernización.
  • Trabajé en una configuración privada de Kubernetes con controles de seguridad más estrictos, lo que contribuyó a cumplir los requisitos de tecnología financiera del cliente y a reducir la exposición innecesaria.
  • Contribuyó a reducir al mínimo la dependencia de los puntos de acceso públicos en los distintos componentes de la infraestructura, con el fin de que el entorno futuro fuera más seguro y más fácil de gestionar.

Implementación de NATS.io

FinXP eligió NATS.io para facilitar la comunicación entre microservicios. Innowise colaboró en la preparación de la infraestructura de mensajería y trabajó con los desarrolladores del cliente durante la integración.

Para ayudar al equipo a implementar y probar un enfoque más escalable de la comunicación de servicios, hemos:

  • Se ha instalado y configurado un clúster de prueba de NATS.io para proporcionar a los desarrolladores un entorno de trabajo que les permita realizar una integración temprana.
  • Creé la infraestructura de apoyo para NATS.io, de modo que la capa de mensajería pudiera integrarse en la arquitectura más amplia basada en Kubernetes.
  • Se ha preparado una configuración basada en Helm para la implementación de NATS.io, lo que facilitará la reproducción y el mantenimiento de la configuración en el futuro.
  • Ayudó a los desarrolladores a conectar sus servicios a la capa de mensajería y comprobó cómo se comportaban dichos servicios fuera de los entornos locales.
  • Se probaron los microservicios en el entorno del clúster, lo que ayudó a detectar problemas que no se habían detectado durante el desarrollo local.
  • Resolvió problemas de integración a medida que los servicios se iban migrando a Kubernetes, lo que ayudó al equipo a mantener el trabajo de modernización según lo previsto sin obstaculizar el trabajo de los desarrolladores.

Migración de aplicaciones heredadas y configuración de la aplicación web Azure

FinXP seguía dependiendo de aplicaciones PHP heredadas que daban soporte a procesos empresariales activos. Estos servicios debían mantenerse estables mientras la empresa avanzaba hacia una arquitectura moderna, por lo que la migración requería un enfoque minucioso.

Para mantener los sistemas heredados en funcionamiento mientras se adaptan a la nueva arquitectura, nuestro equipo:

  • Se ha trasladado el entorno UAT a la aplicación web Azure, lo que proporciona a FinXP una plataforma más fácil de gestionar para las pruebas de aceptación.
  • Configurar la implementación automatizada para el entorno UAT con el fin de reducir los pasos manuales del proceso de lanzamiento y mejorar la coherencia de las actualizaciones.
  • Configuré aplicaciones PHP heredadas en el nuevo entorno Azure, lo que permitió al cliente mantener operativos los servicios más antiguos durante la transición.
  • Facilitó la integración entre las aplicaciones heredadas y las bases de datos de Oracle, lo que contribuyó a garantizar la continuidad del negocio durante los cambios en la infraestructura.
  • Configuramos la conexión FTP y resolvimos los problemas de transferencia de mensajes, eliminando los obstáculos que afectaban al intercambio de datos.
  • Colaboró en la investigación de problemas de entrega de correo electrónico relacionados con Office 365, lo que permitió garantizar una comunicación estable en los flujos de trabajo relacionados con las aplicaciones.

Automatización de DevOps con Terraform, Helm y CI/CD

Los procesos de implementación del cliente seguían requiriendo trabajo manual. Innowise comenzó a introducir la automatización en toda la infraestructura y en la entrega de aplicaciones para facilitar la reproducción de los entornos y el control de las versiones.

Para sustituir con éxito las acciones manuales puntuales por prácticas de DevOps repetibles, nuestro ingeniero:

  • Empecé a desarrollar scripts de Terraform para nuevas API, sentando las bases para la infraestructura como código (IaC) en futuros entornos.
  • Prácticas de «Infraestructura como código» (IaC) preparadas para facilitar la revisión, la reproducción y el seguimiento de los cambios de configuración.
  • Creé y adapté gráficos de Helm para las cargas de trabajo de Kubernetes, con el fin de que las implementaciones siguieran una estructura más coherente.
  • Implementación planificada de la API en Kubernetes, que integra la automatización de la infraestructura con la estrategia general de modernización de la API del cliente.
  • Apoyé la transición hacia procesos de CI/CD más maduros, lo que ayudó al equipo a reducir su dependencia de los pasos de implementación manuales.
  • Se han implantado prácticas de implementación repetibles para ayudar a FinXP a ampliar su capacidad de entrega a medida que más servicios se trasladan a Kubernetes.

Mejora de la infraestructura centrada en la seguridad

La seguridad siguió siendo una prioridad fundamental, ya que FinXP opera en el sector de la tecnología financiera. Innowise facilitó los cambios en la infraestructura destinados a garantizar un acceso más seguro, un aislamiento más sólido y un mejor control sobre los recursos en la nube.

Para reforzar la seguridad y el control de acceso a nivel de infraestructura, nuestro especialista:

  • Infraestructura privada de Kubernetes planificada para respaldar un modelo más seguro de prestación de servicios financieros.
  • Facilitó el acceso a los sistemas de los clientes mediante una red privada virtual (VPN), lo que ayudó al equipo a mantener unos puntos de acceso controlados a la infraestructura.
  • Ha contribuido a mejorar el aislamiento de la red en entornos en la nube, eliminando los riesgos asociados a una exposición generalizada del sistema.
  • Se redujo la exposición pública de los componentes de la infraestructura, lo que permitió adaptar la arquitectura a unos requisitos de seguridad más estrictos.
  • Se han implantado prácticas de acceso basadas en certificados para añadir otra capa de control sobre el acceso a la infraestructura.
  • Se ha actualizado y configurado SonarQube en todos los repositorios, ampliando su uso desde una cobertura parcial hasta un control más amplio de la calidad y la seguridad del código.
  • Se ha incorporado Snyk para reforzar la detección de vulnerabilidades en todas las dependencias del proyecto y facilitar la detección precoz de problemas en el proceso de desarrollo.
  • He participado en debates sobre la supervisión de la ciberseguridad, DevSecOps y la seguridad Azure, ayudando a FinXP a definir la siguiente fase de su hoja de ruta de seguridad.

Supervisión, registro y apoyo a las auditorías

A medida que más servicios se migraban a Kubernetes, FinXP necesitaba una mayor visibilidad del comportamiento de la infraestructura. Innowise facilitó mejoras relacionadas con la auditoría y ayudó al cliente a preparar un enfoque más sólido de supervisión y registro.

Para ofrecer al cliente una visión más clara del estado de la infraestructura y facilitar futuras auditorías de seguridad, hemos:

  • Se analizaron las deficiencias en el seguimiento y el registro de datos para identificar en qué puntos la resolución de problemas podría resultar complicada.
  • Apoyé las mejoras en la infraestructura relacionada con la auditoría, ayudando al cliente a convertir las conclusiones de la evaluación en medidas técnicas concretas.
  • Se trabajó con las herramientas de supervisión ya existentes para los servicios básicos, de modo que el equipo pudiera seguir realizando un seguimiento del comportamiento de la infraestructura durante la modernización.
  • Se han configurado Log Analytics y el monitor Azure para proporcionar al equipo una mayor visibilidad de los recursos en la nube, el comportamiento de las aplicaciones y los eventos de la infraestructura.
  • Configuración de Grafana gestionado Azure con paneles de control, lo que proporciona a FinXP una forma más cómoda de supervisar el estado de los servicios y las métricas de infraestructura.
  • Se han configurado flujos de trabajo de alertas en áreas en las que las notificaciones son limitadas o inexistentes, con el fin de ayudar al equipo a responder más rápidamente a los problemas de infraestructura..
  • Apoyamos la elección de ClickHouse para la recopilación de registros, lo que proporcionó al cliente una vía para un almacenamiento y análisis de registros más estructurados.
  • Se ha preparado la infraestructura para mejorar la resolución de problemas, especialmente a medida que los servicios se trasladan de entornos antiguos a Kubernetes.
  • Contribuyó a ofrecer una visión más clara de la infraestructura de la empresa mediante diagramas de red, lo que facilitó la planificación, la comunicación y el mantenimiento futuro.

Mejora de los procesos y apoyo al equipo

Innowise también ayudó a FinXP a mejorar sus prácticas de ingeniería en el día a día. Nuestro ingeniero de DevOps prestó apoyo al equipo del cliente con recomendaciones, asesoramiento, resolución de problemas y asistencia práctica durante la integración del servicio.

Para convertir el trabajo técnico diario en un proceso de modernización más estructurado, nuestro ingeniero:

  • Participé en las reuniones técnicas diarias para coordinar las prioridades, analizar los obstáculos y garantizar que el trabajo de infraestructura estuviera en consonancia con las tareas de desarrollo.
  • Compartí recomendaciones sobre la infraestructura con los responsables técnicos, ayudándoles a optar por mejoras prácticas en lugar de soluciones a corto plazo.
  • He asesorado al ingeniero de DevOps del cliente en materia de DNS, contenedores y tareas de implementación para reforzar las competencias del equipo interno en el ámbito de las tecnologías nativas de la nube.
  • Presté apoyo a los desarrolladores durante las pruebas de la API y la integración de los servicios, ayudándoles a adaptar los servicios a la nueva infraestructura.
  • Colaboré en la creación de colecciones de Postman para las nuevas comprobaciones de la API, lo que permitió que las pruebas estuvieran mejor organizadas y fueran más fáciles de reproducir.
  • Analicé los problemas de conexión a la base de datos durante las pruebas de la API y eliminé los obstáculos antes de que pudieran ralentizar el trabajo de integración.
  • Se recomendaron mejoras en la documentación, el seguimiento de tareas y los procesos de DevOps, lo que proporcionó al cliente una forma más transparente de gestionar los cambios técnicos.

Tecnologías

Seguridad y gestión de accesos

VPN, autenticación basada en certificados, direcciones IP privadas, Darktrace

Desarrollo y modernización de la API

PHP, Go, microservicios, Postman

Contenedorización y orquestación

Docker, Kubernetes, Helm

Cloud e infraestructura

Azure, Servicio de Kubernetes Azure, Aplicación web Azure, Puerta de enlace VPN Azure, Microsoft Entra ID, máquinas virtuales

Mensajería e integración

NATS.io, FTP, Office 365, bases de datos Oracle, API REST

CI/CD y calidad del código

GitHub Actions, SonarQube

Supervisión y registro

Grafana, ClickHouse

Automatización de infraestructuras

Terraform, gráficos de Helm

Equipo

Data icon 1
Ingeniero Senior DevOps
Innowise team

Resultados

Duración del proyecto

Julio de 2024 – En curso

El proyecto aún está en marcha, pero FinXP ya ha consolidado una base más sólida para una infraestructura nativa en la nube, unas operaciones más seguras y unos procesos de DevOps más predecibles.

  • FinXP ha definido una hoja de ruta de modernización más clara para su infraestructura de API principal, en la que Kubernetes, Azure, NATS.io, Terraform y Helm constituyen la base para su crecimiento futuro.
  • El cambio de los antiguos entornos de alojamiento a Azure redujo la fragmentación de la infraestructura y facilitó la gestión de la configuración.
  • El clúster de Kubernetes de prueba Azure proporcionó al cliente una base práctica para pasar de configuraciones manuales o basadas en máquinas virtuales a un despliegue en contenedores para sus microservicios.
  • La configuración de NATS.io sentó las bases para una comunicación más fiable entre los microservicios a medida que el cliente continúa con la modernización de su API.
  • La migración de UAT a la aplicación web Azure ha aportado mayor estabilidad al entorno de pruebas y lo ha preparado para la implementación automatizada.
  • La integración de las aplicaciones PHP heredadas con las bases de datos Oracle ayudó al cliente a mantener en funcionamiento los servicios críticos para el negocio durante el proceso de modernización.
  • El cambio hacia una infraestructura privada de Kubernetes y un acceso basado en VPN redujo los riesgos de seguridad relacionados con la exposición de la infraestructura pública.
  • El trabajo con Terraform y Helm permitió al cliente pasar de realizar cambios manuales en la infraestructura a llevar a cabo implementaciones repetibles y controladas por versiones.
  • Las mejoras introducidas en la infraestructura relacionada con la supervisión, el registro y las auditorías proporcionaron al cliente una mayor visibilidad del comportamiento del sistema y de las necesidades futuras en materia de seguridad.
  • La documentación y las recomendaciones sobre los procesos facilitaron el seguimiento, el intercambio y el mantenimiento del trabajo técnico en todo el equipo del cliente.
  • La formación impartida al ingeniero de DevOps del cliente ayudó al equipo interno a gestionar con mayor seguridad las tareas relacionadas con el DNS, los contenedores y la implementación.
  • La resolución diaria de problemas relacionados con el FTP, Office 365, los certificados y el comportamiento de los clústeres contribuyó a eliminar los obstáculos operativos y a mantener el avance de los trabajos de modernización.
  • Los controles de seguridad se ampliaron y se hicieron más sistemáticos gracias a la configuración de SonarQube en todos los repositorios y al análisis de dependencias basado en Snyk.
  • La visibilidad de la infraestructura ha mejorado gracias a Log Analytics, Azure Monitor y los paneles de Grafana gestionados de Azure.
  • La respuesta ante incidentes se ha vuelto más estructurada gracias a los flujos de trabajo de alertas en ámbitos en los que antes las notificaciones eran limitadas.

Índice

Migración segura a la nube

    Contáctenos

    Reserve usted una llamada o rellene usted el siguiente formulario y nos pondremos en contacto con usted cuando hayamos procesado su solicitud.

    Envíenos un mensaje de voz
    Adjuntar documentos
    Cargar archivo

    Puede adjuntar 1 archivo de hasta 2 MB. Formatos de archivo válidos: pdf, jpg, jpeg, png.

    Al hacer clic en «Enviar», usted consiente el tratamiento de sus datos personales por parte de Innowise de conformidad con nuestra Política de privacidad para proporcionarle información relevante. Al enviar su número de teléfono, acepta que nos pongamos en contacto con usted a través de llamadas de voz, SMS y aplicaciones de mensajería. Pueden aplicarse tarifas de llamadas, mensajes y datos.

    También puede enviarnos su solicitud
    a contact@innowise.com
    ¿Qué pasa después?
    1

    Una vez recibida y procesada su solicitud, nos pondremos en contacto con usted para detallarle las necesidades de su proyecto y firmar un acuerdo de confidencialidad. Proyecto y firmaremos un acuerdo de confidencialidad.

    2

    Tras examinar sus deseos, necesidades y expectativas, nuestro equipo elaborará una propuesta de proyecto con el alcance del trabajo, el tamaño del equipo, el plazo y los costes estimados con el alcance del trabajo, el tamaño del equipo, el tiempo y las estimaciones de costes.

    3

    Concertaremos una reunión con usted para hablar de la oferta y concretar los detalles.

    4

    Por último, firmaremos un contrato y empezaremos a trabajar en su proyecto de inmediato.

    arrow