Casos de éxito
ES EN

La importancia
de una arquitectura
eficiente.

2024

O2

¿Quieres que trabajemos juntos?

Say Hello!
 

El reto de encontrar la mejor solución

O2 es una operadora de fibra y móvil con una propuesta de valor centrada en proporcionar un servicio excelente a sus clientes a un precio muy competitivo. Perteneciente a Telefónica España, desde su presentación en 2018, esta compañía trabaja con la filosofía de ser una parte invisible en la vida de sus clientes, gracias al compromiso de ofrecer las mejores redes de fibra y móvil del mercado español, no molestar nunca con llamadas comerciales a sus clientes y proporcionar un servicio ético y sencillo. Desde Paradigma, tenemos la suerte de trabajar mano a mano con ellos para alojar la infraestructura de sus soluciones de canales de venta y contratación online.

Como operadora digital, O2 tenía el reto de facilitar al cliente la contratación de productos online de manera sencilla y proporcionando una solución con alta disponibilidad que fuese capaz de asumir las campañas de contratación de clientes aquellos periodos de más concurrencia de clientes. Para ello, O2 decidió confiar en Paradigma Digital, desde donde les acompañamos diseñando una solución en la nube orientada a sus necesidades, acompañándoles y ayudándoles a desplegar una arquitectura robusta, fiable y elástica en AWS.

Construyendo los pilares

El principal reto al que nos enfrentamos fue diseñar una infraestructura fiable con alta disponibilidad, capaz de asumir de manera elástica los picos de contratación y optimizando el consumo de los recursos al descender la actividad de contratación. Por este motivo, se decidió desplegar la infraestructura en AWS siguiendo los principios y usando algunos de los servicios referenciados en AWS Well-Architected Framework.
Paradigma y O2 analizaron las necesidades que debía cubrir la infraestructura y se acordó el stack tecnológico sobre el que desplegar la solución, poniendo foco en la excelencia operativa y la automatización del despliegue de los componentes de la solución.

Alineados con los pilares de AWS Well-Architected Framework, se propuso una solución que incluía:

  • Despliegue de la infraestructura como código.
  • Integración del código con herramientas de control de versiones.
  • Integración de los despliegues de la solución con herramientas de integración y despliegue continuo.
  • Monitorización de la infraestructura y métricas de negocio.
  • Despliegue de herramientas de seguridad de la solución.
  • Escalabilidad y alta disponibilidad de la solución.

Una solución con calidad

La solución se planteó con tres entornos diferenciados, separados de manera lógica. Existen dos entornos previos a producción, sobre los cuales se realizan los desarrollos, pruebas y despliegues de nueva funcionalidad. Previo al despliegue de cualquier funcionalidad en producción, se realiza una batería exhaustiva de pruebas y análisis de la calidad del código para asegurar que toda nueva funcionalidad está alineada con los estándares de seguridad y calidad.
Una vez analizado el componente a promocionar al entorno de producción, se realiza el despliegue de la nueva funcionalidad en producción de manera ágil y eficiente.

Detalle de implantación de la infraestructura

O2 cuenta con la infraestructura que da servicio a su plataforma desarrollada sobre AWS. Se eligió esta solución por los principios de alta disponibilidad y escalabilidad que ofrecen las infraestructuras cloud. Este tipo de modelo presenta varios servicios escalables, haciendo que el mantenimiento y la disponibilidad se vean ampliamente beneficiados en este punto.

Su infraestructura dispone de tres entornos segregados por red de manera lógica, separando el entorno productivo de los no productivos.

Los entornos preproductivos son réplicas más pequeñas del entorno de producción que cuentan con prácticamente la totalidad de los servicios desplegados a una escala menor. Este punto es clave para que el equipo de desarrollo pueda probar la nueva funcionalidad desarrollada en entornos lo más similares posible a producción.

Componentes comunes a los entornos:

  • Una red (VPC) propia aislada.
  • Un servidor de bastión, que securiza la conexión al resto de instancias del entorno.
  • Un grupo de autoescalado con servidores donde se despliega la aplicación.
  • Un balanceador de carga al cual va asociado un registro DNS gestionado en Route 53, que se presenta delante de los grupos de autoescalado.
  • Bases de datos desplegadas sobre el servicio RDS de AWS a las cuales tienen acceso los servidores del ASG.
  • Un cluster Redis gestionado desde el servicio de ElastiCache para la gestión de caché de operaciones que serán tratadas más tarde de manera asíncrona.

Medidas de seguridad sobre los elementos de la cuenta:

  • Copias de seguridad automáticas de todos los activos con información relevante (versionado de ficheros en S3, copias de discos, copias de BBDD…) usando el servicio gestionado AWS Backup.
  • Segregación y aislamiento de los servicios y recursos por entorno a nivel de red.
  • Cifrado de servicios que contienen información, mediante el uso de claves KMS.
  • Detección y bloqueo de conexiones potencialmente maliciosas mediante el uso de WAF.

Alta disponibilidad y
escalabilidad con AWS.

AWS

Alta disponibilidad y<br>escalabilidad con AWS.

Servicios AWS utilizados en la solución

  • Recursos de redes y entregas de contenidos: servicios relacionados con elementos de red, comunicaciones, acceso y publicación de recursos.
    VPC, API Gateway, Route 53, AWS WAF, Elastic Load Balancing
  • Bases de datos: servicios de configuración, operación y escalado de base de datos.
    RDS
  • Computación: servicios para ejecución de cargas de trabajo de manera segura y con capacidad ajustable.
    EC2, Auto Scaling, Lambda, ECR, ECS
  • Almacenamiento: servicios dedicados a almacenar archivos y datos necesarios para la solución.
    EFS, S3, AWS Backup
  • Seguridad: servicios dedicados a mantener la seguridad e integridad de la infraestructura.
    Certificate Manager, IAM, KMS, WAF
  • Administración y gobernanza: servicios dedicados a la administración y gobernanza de la cuenta de AWS.
    CloudTrail
  • Gestión de caché: servicios de gestión de caché y colas de eventos para su posterior tratamiento asíncrono. El principal servicio en este punto es:
    ElastiCache for Redis Service

Arquitectura confiable, resiliente, segura y eficiente en costes

Desde sus orígenes, O2 ha confiado en Paradigma Digital para el despliegue de su infraestructura y sus aplicaciones. A lo largo de estos años, se ha labrado una relación de confianza entre Paradigma y O2 evolucionando una relación de cliente proveedor a una relación de partnership.
Es gracias a este modelo de confianza que Paradigma ha podido acompañar a O2 en el proyecto del despliegue y la posterior operación de una infraestructura robusta, confiable y elástica en la nube en la que desplegar una aplicación que sigue las mismas premisas de confiabilidad y eficiencia.
Siguiendo los fundamentos de AWS Well-Architected Framework la arquitectura de O2 cumple con los estándares definidos en los pilares del citado marco de desarrollo. A continuación se citan varios ejemplos de la aplicabilidad de los pilares del marco operacional de AWS adecuados al caso concreto de O2:

Fiabilidad

La infraestructura desplegada en O2 cuenta con los siguientes puntos para asegurar una arquitectura fiable, resiliente y tolerante a fallos:

  • Recuperación automática frente a fallos: El punto clave para una correcta recuperación automática frente a fallos reside en la monitorización y la automatización de medidas de remediación. O2 cuenta con una monitorización de ciertos KPIs aplicados tanto al rendimiento del servicio como a métricas de negocio. En caso de que los umbrales definidos para dichos KPIs se superasen, la infraestructura cuenta con una serie de automatizaciones que se ejecutan para recuperar los sistemas frente a estos posibles fallos. Mediante este uso de monitorización y automatización es posible evitar y anticipar fallos antes de que ocurran.
  • Procedimientos de pruebas para la recuperación de los sistemas: En O2 se realizan pruebas de rendimiento y carga para asegurar que tanto la monitorización como las automatizaciones orientadas a responder de manera automática frente a fallos, están correctamente definidas y se adecúan a la realidad del servicio.
  • Escalado horizontal: La principal estrategia para hacer frente a los picos de carga o al aumento de solicitudes en periodos de estrés, es sin duda el escalado horizontal de recursos. La infraestructura de O2 tiene definidos varios grupos de autoescalado para los distintos componentes que alojan cada una de las piezas que conforman la solución. Estos grupos de autoescalado cuentan con máquinas con recursos ajustados a la carga habitual del sistema, y se basan en la monitorización y medición de ciertos KPIs para la ejecución de automatizaciones que permitan el escalado en el grupo de máquinas que componen cada ASG.

Seguridad

La arquitectura definida para O2 sigue con los principios básicos de seguridad definidos por AWS en AWS Well-Architected Framework. En el momento se sigue trabajando en la aplicación de medidas de seguridad en la arquitectura para adecuarse a las medidas planteados por los principales estándares de la industria.

Identidad y gestión de acceso. Un equipo de administradores se encarga de gestionar y validar todos los procesos relacionados con altas, bajas y modificaciones de usuarios. Se siguen flujos para la revisión periódica tanto de usuarios como de los permisos asignados a los mismos, siguiendo siempre el principio del mínimo privilegio.

  • Protección de la infraestructura. Todo acceso a los componentes desplegados en la infraestructura se encuentra securizado mediante el uso de distintas medidas:
    • Grupos de seguridad para restringir el acceso únicamente a rangos permitidos a los recursos.
    • Cifrado de los datos en tránsito mediante el uso de protocolos seguros y certificados en los balanceadores presentados frente a los grupos de recursos.
    • Cifrado de los datos en reposo, ya sean referentes a discos asociados a máquinas, bases de datos, o ficheros almacenados en buckets, los datos se cifran usando las claves gestionadas del servicio AWS KMS.

Detección de amenazas. La infraestructura de O2 cuenta con el servicio gestionado AWS WAF mediante el cual se detectan y bloquean intentos de acceso malicioso a los distintos recursos que O2 tiene presentados en internet.

Protección de los datos. O2 cuenta con una estrategia de backup definida para los distintos servicios de los que la infraestructura hace uso. Este punto se implementa con el uso de las estrategias definidas por el servicio AWS Backup.

Excelencia operacional

Siguiendo con las buenas prácticas definidas por el marco operacional AWS Well-Architected Framework, la infraestructura de O2 se ha definido para seguir con el pilar de excelencia operacional siguiendo los puntos a continuación:

  • Realizar operaciones como código: Toda la infraestructura de O2 se encuentra desplegada como código para asegurar la integridad y disponibilidad de los recursos en caso de ser necesario en un escenario de recuperación.
  • Refinar los procedimientos de las operaciones de manera frecuente: Los flujos de operación realizados sobre la infraestructura están en continua revisión y cambio por parte del equipo de administradores que los ejecutan. Esta es una parte - vital del servicio para asegurar la eficiencia y la adaptabilidad a las necesidades y requerimientos de la infraestructura y el cliente.
  • Anticiparse a los fallos: O2 cuenta con una monitorización bastante amplia de todos los servicios y recursos que forman parte de la infraestructura. La monitorización se revisa, refina y cambia en función de las necesidades del proyecto y - de los cambios de la infraestructura a fin de detectar y anticiparse a cualquier fallo que se pueda producir en la infraestructura.
  • Usar servicios gestionados: En la infraestructura desplegada en O2 se apuesta por el uso de servicios gestionados, y procesos automáticos siguiendo el principio de excelencia operacional. Algunos ejemplos son:
  • AWS Backup: Servicio gestionado para realización de backups y pruebas de recuperación de backup.
  • AWS WAF: Servicio gestionado de detección de vulnerabilidades y bloqueo de peticiones con origen sospechoso o malicioso.
  • AWS RDS: Servicio gestionado de base de datos en el que se ofrecen distintos motores de bases de datos en función de las necesidades del proyecto.

Arquitectura sólida, flexible y con alta disponibilidad

Siguiendo los puntos anteriores, se puede asegurar que la arquitectura desplegada para O2 es un ejemplo de robustez y resiliencia, donde la alta disponibilidad y la elasticidad de la solución se aúnan para dar servicio incluso en los momentos de más carga, haciendo que sea una solución confiable y adaptable a las distintas necesidades del proyecto en cada etapa.

Ignacio Ceña Tutor
El éxito viene del compromiso y conocimiento del equipo de Paradigma para O2, que han trabajado con nosotros como si fueran parte de nuestro equipo.

Ignacio Ceña Tutor

Gerente de Operaciones de O2 España

numbers

+40instancias desplegadas
21servicios AWS activos
⭡20%en tareas de seguridad durante el último año

Estamos comprometidos.

Tecnología, personas e impacto positivo.