Seamos sinceros S3 es barato hasta que deja de serlo. Un día revisando la factura de AWS descubrí que el almacenamiento S3 estaba consumiendo una parte notable del presupuesto. Con buckets repartidos entre equipos proyectos y experimentos olvidados tenía un problema cómo identificar qué buckets generaban más coste y cómo recibir un informe cada lunes sin ejecutar consultas Athena a mano. Así que como buen ingeniero perezoso decidí automatizarlo.
Paso 1 Inventario inventario inventario
Lo primero fue activar los reportes de S3 Inventory en formato Parquet porque JSON resulta demasiado verboso. Estos reportes contienen metadatos de objetos clases de almacenamiento y tamaños perfectos para consultar con Athena. Los informes aterrizan en un bucket dedicado y desde ahí creé tablas Athena que apuntan a esos Parquet para evitar el eterno scroll por la consola S3.
Paso 2 Consultas Athena como detective
La idea es sencilla para cada tabla de inventario calcular tamaño por prefijo y por clase de almacenamiento estimar el coste usando precios por GB y localizar los N mayores culpables. En Athena resumo por storage_class y por intelligent_tiering_access_tier sumando size y aplicando las tarifas por GB para estimar coste total. En términos prácticos pregunté a Athena qué clase de almacenamiento estaba consumiendo mis créditos y cuánto costaba.
Paso 3 Lambda y Boto3 automatizan el proceso
La magia llegó al empaquetar todo en una función Lambda que hace lo siguiente por cada tabla de inventario ejecuta una consulta SQL que devuelve métricas por prefijo y por clase de almacenamiento como object_count total_size bytes y estimated_cost_usd. Utiliza la API de Athena para lanzar la consulta espera su finalización con polling obtiene el CSV resultado en S3 y agrega filas en una estructura Python agrupada por tabla y prefijo sumando objetos bytes y coste estimado. Después calcula el coste total por prefijo ordena de mayor a menor y selecciona los top N configurable luego genera un CSV detallado con una fila resumen por prefijo y filas de desglose por clase y sube ese CSV a S3 para versionado y fácil compartición. Finalmente envía un resumen por email vía SES con las líneas principales y la ruta del CSV en S3 de forma que cada lunes por la mañana tengo un informe accionable listo para compartir con los equipos o disparar limpiezas.
Paso 4 Programación con EventBridge
Para que sea totalmente hands off programé la Lambda con EventBridge para que se ejecute cada domingo a medianoche de modo que al empezar la reunión de los lunes ya sé qué buckets son los villanos de la semana y parece que estoy más preparado de lo que realmente estoy.
Informe final y ventajas
El correo que recibo incluye entradas tipo Tabla my_bucket_1 Bucket my-bucket-1 Tamaño 12.3 TB Coste 257.23 USD y así sucesivamente. La solución da visibilidad sobre costes escondidos elimina consultas manuales y ayuda a detectar proyectos antiguos buckets de pruebas o clases de almacenamiento mal configuradas ahorrando dinero y esfuerzos.
Sobre Q2BSTUDIO
En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida especializada en soluciones cloud y transformación digital. Ofrecemos servicios de software a medida e integraciones en la nube y ayudamos a empresas a optimizar costes y operaciones en AWS y Azure. Si necesitas apoyo para diseñar una automatización similar o para optimizar tus servicios cloud contamos con experiencia en servicios cloud aws y azure.
Servicios relacionados y palabras clave
Si tu objetivo es construir aplicaciones integrales o mejorar tus procesos contamos con servicios de desarrollo de aplicaciones a medida y software a medida. También ofrecemos soluciones de inteligencia artificial ia para empresas agentes IA servicios de inteligencia de negocio y dashboards con power bi además de servicios de ciberseguridad y pentesting para proteger tus datos y tu infraestructura.
Recursos y llamada a la acción
Si te interesa una solución a medida para automatizar reportes y ahorrar en costes cloud visita nuestro apartado de servicios cloud y descubre cómo podemos ayudarte a diseñar y operar procesos automatizados en la nube servicios cloud aws y azure en Q2BSTUDIO o si prefieres explorar desarrollos específicos de producto o aplicaciones consulta nuestra página de desarrollo de aplicaciones y software multiplataforma aplicaciones a medida y software a medida. ¿Has intentado algo similar para domar tus costes S3 o prefieres que te ayudemos a montarlo llave en mano en tu cuenta AWS?