Tecnología Blockchain Aceptación Institucional

Ejecutando Apache Pinot en Fargate con almacenamiento EBS y ECS StatefulSets: Una solución avanzada para servicios stateful en AWS

Tecnología Blockchain Aceptación Institucional
Show HN: Running Apache Pinot on Fargate+EBS with ECS "StatefulSets

Explora cómo implementar Apache Pinot en AWS Fargate utilizando EBS para almacenamiento persistente y el innovador constructo ECS StatefulSets. Aprende a mantener servicios stateful eficientemente con escalabilidad, descubrimiento de servicios y administración automatizada en la nube de Amazon Web Services.

En la actualidad, muchas aplicaciones modernas requieren servicios stateful, es decir, servicios que mantienen información y estado entre sesiones o solicitudes. Implementar estos servicios sobre contenedores exige garantizar que cada instancia conserve su estado y datos, incluso si se escala o reinicia. Amazon Web Services (AWS) ha revolucionado el mundo del cómputo en la nube con sus herramientas gestionadas, y Apache Pinot, una plataforma analítica en tiempo real, se beneficia enormemente cuando se ejecuta en AWS con las configuraciones adecuadas. Un avance reciente en esta dirección es la posibilidad de ejecutar Apache Pinot en AWS Fargate apoyándose en volúmenes EBS para almacenamiento persistente mediante la constructo personalizado "StatefulSets" para ECS. Este enfoque combina la elasticidad y facilidad de Fargate con la persistencia y consistencia de EBS, solucionando, además, el desafío de ofrecer identificadores estables y escalabilidad ordenada para servicios stateful.

Tradicionalmente, la orquestación de contenedores con estado ha encontrado bastantes retos en ambientes serverless o sin gestión directa de infraestructura, como lo es Fargate. Aunque Fargate elimina la necesidad de administrar servidores y clusters subyacentes, presenta limitaciones cuando se requieren volúmenes persistentes que sobrevivan a las interrupciones o paradas de tareas. AWS no permite que Fargate adjunte directamente volúmenes EBS ya existentes a tareas o contenedores. Para superar esta barrera, se ha desarrollado una solución innovadora a través de un constructo de AWS Cloud Development Kit (CDK) denominado "StatefulSet" para ECS que replica las funcionalidades conocidas de los StatefulSets de Kubernetes, pero optimizado para Fargate y utilizando snapshots de EBS para mantener la persistencia de datos. Este constructo permite crear clusters de servicios stateful con varias réplicas, donde cada réplica cuenta con su propio volumen EBS, que es creado, protegido por snapshot y reconstruido automáticamente en caso de fallos o escalamiento hacia abajo.

Esto es vital para aplicaciones como Apache Pinot, ya que sus componentes necesitan acceder a datos persistentes en disco para ofrecer funcionalidades como almacenamiento de segmentos y metadatos. Además, el constructo StatefulSet facilita nombres DNS estables y predecibles para cada réplica, permitiendo que, por ejemplo, zk-0.svc.internal, zk-1.svc.

internal, etc., se resuelvan de manera consistente en la red privada de AWS. Esta característica es fundamental para la comunicación interna y la coordinación de servicios distribuidos donde los nodos requieren conocerse y comunicarse entre sí con rutas fijas. El ejemplo práctico más destacado de esta solución es la implementación completa de un cluster Apache Pinot corriendo sobre tareas Fargate, cada una organizada dentro del StatefulSet. Apache Pinot es una plataforma de análisis en tiempo real diseñada para realizar consultas rápidas en grandes volúmenes de datos.

Contar con una arquitectura robusta y escalable que mantenga el estado y los datos del sistema es clave para garantizar su alto rendimiento y disponibilidad. Al desplegar Pinot con esta arquitectura, cada uno de sus componentes —como controladores, servidores y brokers— está contenido en una tarea Fargate independiente pero vinculada por el constructo StatefulSet. Esto implica que cada nodo Pinot mantiene su volumen EBS individual, respaldado por snapshots automáticos para recuperación ante fallos o escalamiento dinámico, un requisito esencial que Fargate por sí solo no soportaba. El mecanismo de administración de StatefulSet emplea una función Lambda que sirve como bucle de control. Esta función se ejecuta periódicamente o ante eventos específicos definidos en EventBridge y se encarga de gestionar el ciclo de vida de las tareas, asegurar la correcta asociación de volúmenes, gestionar el registro DNS y garantizar que, en cualquier momento, el número de réplicas y la configuración sean consistentes con el estado deseado.

Esta automatización libera a los operadores de complejidad de configuración manual y reduce el riesgo de errores en producción. Desde el punto de vista de seguridad y red, el constructo también incorpora configuraciones que integran subredes, grupos de seguridad y zonas alojadas en Route 53 para registrar los nombres DNS de los servicios. Esto asegura tanto el aislamiento y la protección de las tareas como la fácil resolución y conexión entre los nodos, fundamentales para aplicaciones distribuidas y sensibles a la latencia. La experiencia de usuario mejora aún más gracias a la posibilidad de portear las conexiones al entorno local del desarrollador o administrador mediante técnicas de reenvío de puertos con AWS Systems Manager (SSM) o SSH. Esto permite acceder a las interfaces de administración como el controlador de Apache Pinot desde entornos externos a AWS, facilitando la gestión, monitoreo y diagnóstico sin requerir acceso directo a la red privada o establecer VPN.

Para desarrollar e implementar esta solución es necesario contar con conocimientos en AWS CDK y TypeScript, así como familiaridad con la arquitectura de containers y ECS. El repositorio disponible en GitHub ofrece el código base, ejemplos detallados y scripts para compilar y desplegar el stack completo mediante comandos sencillos como npx tsc y cdk deploy. Su diseño modular permite extender o adaptar la solución a otros servicios stateful más allá de Apache Pinot, como Zookeeper u otros sistemas que requieren volúmenes persistentes y administración compleja. El uso de StatefulSets en ECS Fargate con EBS representa un paso significativo para la comunidad de usuarios AWS que desean combinar la simplicidad y escalabilidad de Fargate con los requerimientos avanzados de estado y persistencia en aplicaciones críticas. Esta construcción abre nuevas puertas para arquitecturas cloud nativas que antes solo eran posibles con clusters Kubernetes o sistemas con gestión detallada de infraestructura.

Trading automático en las bolsas de criptomonedas Compra y vende tu criptomoneda al mejor precio

Siguiente paso
The Grug Brained Developer
el jueves 12 de junio de 2025 El Desarrollador Con Cerebro de Grug: Una Guía Sencilla para Evitar la Complejidad en el Desarrollo de Software

Explora la perspectiva única del desarrollador Grug sobre cómo manejar la complejidad en el código, aprender a decir no y optimizar proyectos con metodologías prácticas, evitando trampas comunes en la programación.

RedisRaider: Weaponizing misconfigured Redis to mine cryptocurrency at scale
el jueves 12 de junio de 2025 RedisRaider: La Amenaza Silenciosa que Explota Redis Mal Configurado para Minar Criptomonedas a Gran Escala

RedisRaider representa una sofisticada campaña de criptominería maliciosa que aprovecha servidores Redis mal configurados para infectar sistemas Linux y extraer Monero. Su modo de operación, técnicas de evasión y alcance global evidencian una amenaza creciente para los servicios públicos expuestos que demanda atención urgente y medidas preventivas contundentes.

Truth Lies and Automation How Language Models Could Change Disinformation (2021)
el jueves 12 de junio de 2025 Verdad, Mentiras y Automatización: Cómo los Modelos de Lenguaje Podrían Transformar la Desinformación

Explora cómo los avances en inteligencia artificial y modelos de lenguaje avanzados como GPT-3 están revolucionando la creación y propagación de desinformación, sus implicaciones para la seguridad global, y los desafíos que presentan para mitigar la difusión de noticias falsas.

 Ethereum price finally ‘breaking out,’ data suggests — Is $3K ETH next?
el jueves 12 de junio de 2025 El Precio de Ethereum Está Rompiendo Barreras: ¿Será $3,000 el Próximo Objetivo?

El precio de Ethereum experimenta un repunte significativo impulsado por la creciente actividad en la red y un aumento considerable en el valor total bloqueado. Se analizan los factores técnicos y fundamentales que podrían llevar a ETH a alcanzar la barrera psicológica de los $3,000.

BitMEX Launches Market May-hem Trading Competition with a 310,000 USDT Prize Pool
el jueves 12 de junio de 2025 BitMEX lanza la competencia Market May-hem con un premio de 310,000 USDT para traders

BitMEX, uno de los intercambios de criptomonedas más seguros y reconocidos, ha anunciado la apertura de su competencia Market May-hem, un torneo de trading que ofrece un total de 310,000 USDT en premios. Esta iniciativa busca motivar la participación de traders nuevos y experimentados, fomentando el volumen de operaciones y la mejora de resultados en un entorno competitivo y seguro.

The role of crypto wallets: navigating the digital financial landscape
el jueves 12 de junio de 2025 El papel fundamental de las carteras cripto en la navegación del panorama financiero digital

Explora cómo las carteras criptográficas se han convertido en herramientas esenciales para la gestión segura, autónoma y eficiente de activos digitales, transformando la forma en que las personas interactúan con las finanzas digitales.

Santander to shutter 18 branches in US
el jueves 12 de junio de 2025 Santander reduce su presencia física en Estados Unidos ante crecimiento de la banca digital

Banco Santander anuncia el cierre de 18 sucursales en Estados Unidos como parte de su estrategia para adaptarse a la preferencia creciente de los clientes por los servicios digitales, reforzando así su apuesta por la innovación y transformación en el sector financiero.