Cloud Intelligence™Cloud Intelligence™

Cloud Intelligence™

Optimiza tus costos en la nube sin complicarte

By Craig LowellSep 20, 20227 min read

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

Cuando optimizar cuesta más de lo que rinde, toma el camino fácil hacia el ahorro en la nube.

Cuando las estrategias de optimización de costos en la nube cuestan más de lo que rinden, toma el camino fácil hacia el ahorro

Por más escalabilidad, confiabilidad y flexibilidad que ofrezca la nube pública, nadie regala nada. Proveedores como Amazon Web Services y Google Cloud te permiten usar y pagar por capacidad de cómputo y servicios a medida que los necesitas, pero hacerlo de forma puramente on-demand sale caro. Llega un punto en que el uso on-demand de la nube pública se vuelve prohibitivo.

Existen varios métodos para gestionar mejor tu gasto en la nube, como comprometerte por anticipado a cierto volumen de uso o de gasto, o recurrir a instancias spot con grandes descuentos. Sin embargo, ambas estrategias de optimización de costos requieren tiempo y recursos para ejecutarse bien. La pregunta entonces ya no es "¿cuánto dinero puedes ahorrar?", sino "¿vale la pena el esfuerzo?".

Veamos ambas estrategias en detalle para entender qué implica cada una y cómo podrían optimizarse para que el esfuerzo realmente rinda en tu organización.

Compromisos / Reservas de cómputo

Como el cómputo suele representar más de la mitad de tu factura total en la nube, optimizar este costo es lo que más impacto tendrá en tu gasto general. Por eso los proveedores de nube pública como AWS ofrecen descuentos importantes a cambio de reservar o comprometer tu uso por adelantado. Estos programas de commitments, conocidos en AWS como Reserved Instances o Savings Plans, vienen en plazos de uno o tres años, y los compromisos a tres años son los que naturalmente ofrecen los mayores descuentos.

Sin embargo, aprovechar estas oportunidades de ahorro exige pronósticos muy precisos de tu uso a lo largo del plazo del compromiso. Si te excedes y reservas más cómputo del que necesitas, terminarás tirando dinero en workloads sin usar (lo que recuerda a los viejos tiempos de los data centers y los modelos de gasto CapEx). Por otro lado, si te quedas corto y luego necesitas más instancias, tendrás que volver a pronosticar y aprovisionar para un nuevo compromiso, o pagar precios mucho más altos por instancias on-demand.

El panorama se complica aún más con todas las variables que cuesta incorporar a los términos de un compromiso, como:

  • cambios de código que aumentan o reducen los requisitos de cómputo de una aplicación
  • el potencial de éxito o viralidad de nuevos productos y servicios
  • factores macroeconómicos como la inflación o la dinámica de la cadena de suministro, que no se pueden controlar pero igual afectan tu uso de la nube

Por lo general, las empresas terminan reservando lo más posible en compromisos a tres años para fijar una línea base mínima y luego suman reservas a un año según los tipos de VM, tamaños y regiones específicos que requieren sus aplicaciones.

Esto suele derivar en un calendario de descuentos en constante cambio, cuyos workloads objetivo, especificaciones y fechas de vencimiento deben rastrearse y gestionarse durante todo el año por al menos una persona dedicada, si no un equipo entero. Estas personas deben tener experiencia en la nube y ser capaces de relacionar el uso con los objetivos generales del negocio. Y, naturalmente, el costo de reclutar, capacitar y retener a un equipo tan especializado probablemente se coma cualquier ahorro.

No sorprende que esto sea un obstáculo importante para muchas organizaciones, sobre todo para empresas jóvenes con recursos limitados y mentalidad de crecimiento. La mayoría de las startups no pueden darse el lujo de desviar el tiempo y la atención de sus limitados recursos de DevOps a gestionar commitments, y prefieren enfocarse en desarrollo y crecimiento en lugar de en la gestión de costos y uso.

Incluso las empresas más grandes, con más recursos y mayor madurez digital, pueden tener problemas para mantenerse al día con su portfolio de commitments. Cuanto más complejo es el entorno cloud, más se complica la logística de gestión: las necesidades y tasas de consumo de cómputo varían entre los equipos de la organización, la responsabilidad sobre el aprovisionamiento y el seguimiento del uso puede cambiar, y los entornos entre equipos se vuelven cada vez más diferenciados.

Cuanto más complejo es el entorno cloud, más se complica la logística de gestión.

Spot Instances

Una de las formas más efectivas de reducir tu gasto en AWS es desplegar Spot Instances siempre que sea posible. Con ahorros de hasta 90% sobre el precio on-demand, este método ofrece descuentos aún mayores que los compromisos a tres años, pero con una contrapartida nada menor: las Spot Instances se venden como ofertas de último minuto sobre instancias on-demand sin usar (piensa en una panadería liquidando lo que le quedó al final del día), pero el proveedor cloud puede recuperarlas con apenas dos minutos de aviso. Esa salvedad hace que muchos lo piensen dos veces antes de adoptar Spot, ya que en la disyuntiva entre el uptime de tus aplicaciones y el ahorro, lo más probable es que te quedes con el uptime.

Las Spot Instances se pueden gestionar en AWS con Auto Scaling Groups (ASG), pero desplegarlas requiere cierta flexibilidad respecto a los tipos de instancia y las Availability Zones que solicitas, ya que siempre cabe la posibilidad de que ninguna esté disponible con tus especificaciones objetivo. Los ASG también deben configurarse manualmente y ajustarse con regularidad para asegurar que tus necesidades de cómputo se sigan cubriendo sin interrupciones relevantes. Es otro proceso manual y tedioso, y si la configuración no es la correcta, puede que ni siquiera funcione.

A pesar de las claras limitaciones de las Spot Instances, hay estrategias para optimizar su uso. Una de ellas es el rebalanceo de capacidad, que ayuda a mantener la disponibilidad (basado en las Instance Rebalance Recommendations de AWS). Esto envía una señal preventiva cuando es probable que una Spot Instance se apague, lo que ayuda mucho frente al aviso estándar de dos minutos de AWS, siempre que tengas a alguien disponible para gestionar el cambio.

¿Vale la pena el esfuerzo?

La verdad incómoda es que no existe una fórmula mágica para calcular cuánto te costará gestionar todas estas estrategias de optimización de costos. Depende mucho del tamaño y la complejidad de tu entorno cloud, de tus objetivos de negocio actuales y futuros, y del nivel de expertise disponible dentro de tu organización. Por ejemplo, ¿sale más barato sobre-comprometerte hasta cierto punto a un precio menor que quedarte corto y pagar on-demand por el resto? Y si eliges esta última opción, ¿qué tan valiosa es la flexibilidad que ofrece frente al dinero extra que ahorrarías con un compromiso mayor?

Yendo un poco más a fondo, ¿tu equipo puede planificar y gestionar estos programas, o tendrás que contratar personal nuevo con las habilidades y la experiencia necesarias? Y, si es así, ¿es ese el mejor uso de tu presupuesto operativo, o ese dinero rendiría más invertido en desarrollo de producto o estrategias de go-to-market?

Muchas empresas concluyen que todas estas preguntas y el tiempo invertido en responderlas cuestan más de lo que rinden. Es difícil llevarles la contraria, sobre todo considerando que los compromisos a más largo plazo suelen sacrificar la flexibilidad de Engineering, ya que nuevos proyectos o features no contemplados en el pronóstico original podrían quedar en pausa hasta que se aprovisionen nuevos recursos. ¿Te sientes cómodo con que tu roadmap de producto quede limitado por decisiones de presupuesto operativo tomadas hace más de un año?

Por suerte, existen soluciones alternativas que ofrecen el ahorro que tanto necesitas sin absorber tanto tiempo y energía de tu equipo de infraestructura.

¿Te sientes cómodo con que tu roadmap de producto quede limitado por decisiones de presupuesto operativo tomadas hace más de un año?

DoiT Flexsave ayuda a resolver el reto de la gestión de commitments al automatizar la administración de los descuentos de cómputo. Usa machine learning para monitorear continuamente tu uso en la nube e identificar instancias de cómputo que no están cubiertas por commitments existentes. Luego aplica precios con descuento de un año sobre los workloads aplicables para cubrir esa brecha. Así obtienes la flexibilidad del uso on-demand sin la preocupación de costos de infraestructura disparados. Incluso puedes comprar tantos compromisos a tres años como quieras para maximizar tu ahorro, y dejar que Flexsave cubra el resto.

Por su parte, DoiT Spot Scaling te ayuda a correr tus workloads de forma confiable en AWS Spot Instances sin tener que preocuparte por interrupciones. Spot Scaling monitorea tus ASG de forma autónoma, propone configuraciones de mejores prácticas y reemplaza instancias on-demand por Spot Instances con grandes descuentos cuando es posible, con fallback a on-demand cuando no hay capacidad spot disponible en el mercado. Además, Spot Scaling es la única solución del mercado que te permite quedarte con todo tu ahorro, sin cobrar comisión.

cloud cost optimization

Para conocer más sobre las estrategias de optimización de costos que recomienda DoiT, habla hoy con un experto o consulta nuestro ebook reciente, The Cost Conscious Cloud.