Cloud Intelligence™Cloud Intelligence™

Cloud Intelligence™

Asignación de costos en la nube: entiende cuánto gastas por entorno

By Matan BordoOct 20, 20227 min read

Esta página también está disponible en English, Deutsch, Français, Italiano, 日本語 y Português.

La asignación de costos te permite atribuir el gasto de nube a los grupos que lo generan, detectar costos faltantes e identificar gasto sin control. Te explicamos cómo asignar los costos de nube por entorno.

¿Qué es la asignación de costos?

El paso del data center a la nube convirtió el gasto de TI de un gasto de capital en un gasto operativo, lo que trajo consigo nuevos retos para gobernar los costos de nube. En lugar de tener que pedir presupuesto explícitamente para comprar servidores o equipos, los desarrolladores (o sistemas automatizados) pueden levantar instancias con un par de clics, lo que muchas veces deriva en sobregasto y costos sin atribuir.

Uno de los primeros pasos para poner orden en tu gasto de nube es organizar y agrupar los costos según categorías definidas internamente (por ejemplo, unidades de negocio). Este proceso, conocido como Cost Allocation, te ayuda a identificar qué costos se comparten entre distintos grupos para poder repartirlos como corresponde. También sirve para encontrar costos faltantes y gasto sin control. Tranquilo: la asignación de costos es una disciplina que se va afinando con el tiempo, no hace falta que asignes todo a la perfección desde el primer día.

Una vez asignados los costos, resulta más fácil reportarlos y armar presupuestos y pronósticos más precisos. Eso sí, no existe una única forma de asignar tus datos de costo y uso, ni faltan herramientas para hacerlo.

Hablemos de cómo asignar tus costos de nube por entorno y cómo lograrlo con Google Cloud, AWS y la tecnología propia de cloud analytics de DoiT.

Por qué conviene asignar costos por entorno

Entender el costo por entorno te ayuda a responder preguntas como "¿Cuánto nos cuesta atender a nuestros clientes frente a construir, probar o experimentar?". En algunos países, además, puedes acceder a incentivos fiscales capitalizando los costos de I+D y depreciándolos a lo largo del tiempo para liberar caja. También abre la puerta a conversaciones internas que motivan a los Engineers a tomar decisiones que se traducen en ahorros más adelante.

Por ejemplo, quizá te interese poner el foco en los costos de producción, no solo por el volumen de gasto, sino porque a partir de ahí puedes calcular los márgenes por cliente, un dato muy útil en conversaciones de ventas a la hora de definir cuánto descuento puedes ofrecer. Además, te permite entender mejor la estacionalidad si tu industria tiene un uso cíclico por parte de los clientes.

Vigilar las tendencias de gasto en tu entorno de dev te permitirá detectar a tiempo problemas de estabilidad o de escalado y reducir los inconvenientes cuando se libere una nueva funcionalidad.

Por último, comprender mejor los costos por entorno y su evolución te permite, junto con tus Engineers, armar pronósticos y presupuestos confiables. Es la respuesta a la pregunta "¿Hasta dónde es razonable gastar?".

Cómo asignar costos por entorno

La forma de medir el costo por entorno depende de cómo definas un entorno. Lo habitual es hacerlo mediante tags o labels definidos por el usuario, donde la clave "environment" toma valores como prod, dev, staging, entre otros.

Definir los entornos así te permite crear desgloses más granulares, por ejemplo medir los costos de producción por cuenta o por proyecto.

También hemos visto a otros clientes definir sus entornos a partir de Projects (Google Cloud) o Accounts (AWS), e incluso con IAM Folders en Google Cloud.

Cálculo del costo por entorno en Google Cloud

Aquí tienes un ejemplo de cómo podrías visualizar los costos por entorno en los Billing Reports de Google Cloud. En este caso, filtré por tres proyectos, cada uno representando un entorno distinto.

cloud cost

Cálculo del costo por entorno en AWS

Aquí tienes un ejemplo de cómo podrías visualizar los costos por entorno en AWS Cost Explorer. Filtramos por valores específicos del tag "Environment" y agrupamos por ese mismo tag para desglosar los costos por entorno.

Para configurar este tag y sus valores desde el principio, tienes que crear User-Defined Cost Allocation Tags, idealmente con el AWS Tag Editor. Una vez creados, basta con activar los tags para asignación de costos antes de poder usarlos en Cost Explorer. Ten en cuenta que pueden tardar entre 24 y 48 horas en aparecer en Cost Explorer después de su creación. Cuanto antes lo hagas, mejor: los tags no se aplican retroactivamente a los recursos, así que cualquier análisis mostrará datos a partir del día en que se etiquetó el recurso.

cloud cost allocation

Cálculo del costo por entorno con la tecnología DoiT Cloud Analytics

Los clientes de DoiT acceden a tecnología propia que les ayuda a entender su factura de nube, sobre todo a través de los Cloud Analytics Reports y las Attributions.

Las Attributions te permiten definir entidades específicas de tu empresa —como un entorno— al agrupar recursos de nube (projects/accounts, labels/tags, etc.). Una vez creadas, puedes usarlas para construir Reports que te ayuden a entender tus costos de nube en el contexto de tu negocio.

A continuación creé una Attribution "Staging Environment" que agrupa todos los Google Cloud Projects que contienen la palabra "staging". En este caso, esa es la definición de entorno de staging de MI empresa.

AWS Tag Editor

Otra opción es usar tags/labels para representar tus distintos entornos. Por ejemplo, podrías tener dos (o más) tags/labels que apuntan al mismo entorno, como "Prod", "prod", "Production" y "production", como se ve en la captura de pantalla. Un problema frecuente es que este reporte queda en manos de un equipo de FinOps o de un grupo central, que no puede imponer fácilmente consistencia en los metadatos, por lo que la herramienta de analytics tiene que resolverlo. Al agrupar esos tags/labels mediante Attributions, consigues precisamente eso.

cost allocation

También creé Attributions para los entornos de Prod y Dev. Una vez listas, puedes visualizar sus costos en conjunto en los Cloud Analytics Reports, como muestro a continuación.

cloud spend

Desde ahí puedes generar, con un solo clic, pronósticos de los costos de un entorno determinado, como hice a continuación con Dev.

cloud analytics

Y si quieres profundizar en los costos de un entorno, puedes desglosarlos por servicio. Como verás abajo, así detectas los servicios con los mayores incrementos porcentuales de gasto, mes a mes.

cost allocation tags

Una vez identificados los servicios que más aumentaron —en nuestro caso Google Cloud Pub/Sub— puedes bajar un nivel más para identificar los SKUs que provocaron esa subida de precios.

DoiT Cloud Analytics technology

Por último, puedes usar Attributions para crear presupuestos específicos por entorno y evitar sorpresas, como hicimos a continuación con nuestro Development Environment. Definimos umbrales que, al superarse, nos alertan por email o Slack para reaccionar a tiempo (por ejemplo, si consumimos el 50% del presupuesto mensual en los primeros siete días del mes). También vemos el gasto actual frente al presupuesto y el gasto pronosticado frente al presupuesto.

AWS Cost Explorer

Poder profundizar así en los costos de tus entornos —o en cualquier categoría de costo que no sea tan sencilla de calcular de manera nativa— abre conversaciones con tu equipo que de otra forma no ocurrirían. Eso se traduce en mayor responsabilidad y conciencia sobre el gasto de nube en toda la organización. Como resultado, se reducen las sorpresas y se generan ciclos de feedback más rápidos que derivan en comportamientos más eficientes a futuro. Además, los responsables de cada bucket asignado ganan autonomía.

Una vez resuelto a nivel tier-1, puedes delegar la gestión hacia abajo en el stack (al nivel de equipo para un engineering manager, o al nivel de producto para un product manager, por ejemplo). Recuerda: la asignación de costos es una disciplina en la que se mejora de forma constante.

Entender los costos de nube es solo el comienzo

En próximos artículos cubriremos más casos de uso de asignación de costos que deberías tener en cuenta, ¡así que mantente atento!

DoiT Cloud Analytics te ayuda a entender tu factura de nube, pero esa es solo una pieza del rompecabezas de la gestión de la nube. Como Premier Partner de AWS y Google Cloud, hemos ayudado a miles de empresas a gestionar y optimizar sus despliegues en la nube.

Por eso, los clientes de DoiT también acceden a productos propios que les ayudan a asegurarse de pagar los mejores precios y a eliminar, mediante la automatización, tareas administrativas que consumen tiempo. Y para lo que se resuelve mejor con personas —como migrar a una arquitectura basada en contenedores o construir un data pipeline— tienes acceso ilimitado a arquitectos de nube senior en todo el mundo. Piénsalo como "capacidad cerebral on-demand" o un StackOverflow personal.

Para conocer más sobre cómo trabajar con DoiT, contacta hoy mismo a un experto o revisa nuestro reciente ebook, The Cost Conscious Cloud.