Nick: Hola a todos, hoy discutiremos sobre "Cómo reducir significativamente los costos y optimizar el gasto en la nube".
Nick: Soy Nick Smirnov, director ejecutivo de Hystax, y Max Bozhenko, director de tecnología y gerente de ingeniería que ha dirigido equipos de ingeniería durante más de 10 años.
Max: Hola Nick, hola a todos. Hoy vamos a hablar sobre el consumo de la nube y cómo controlar la factura de la nube y también reducirla.
Nick: Gracias, Max. Pero antes de empezar, unas palabras sobre Hystax:
1. Hystax es un líder mundial en migración a la nube y recuperación ante desastres en nubes híbridas y entre nubes.
2. Tenemos clientes en 5 continentes y empleados en 4 países.
3. Y ahora estamos construyendo una plataforma en la nube para la gobernanza de costos y la colaboración.
Nick: 1. Ok, Max, ¿podrías explicarnos en qué consiste normalmente una factura de nube?
Max: Sí, claro. Cuando recibes una factura de la nube y luego vas a los detalles, ves una lista de servicios en la nube, como computación, almacenamiento o redes, que usaste durante el período de facturación.
También puede ver posiciones relacionadas con servicios de terceros, como costos de software del mercado de la nube. Algunos de los elementos de la factura son bastante sencillos: cuando paga por recursos informáticos y almacenamiento, puede predecir más o menos el rango de su gasto según los tipos de instancias y el tamaño del almacenamiento. Algunos otros requieren más investigación para ser transparentes, por ejemplo, los cargos por transferencia de datos.
En resumen, esto varía de una empresa a otra y depende de los casos de uso: algunas pueden considerar que la computación y el almacenamiento son los principales impulsores de costos, mientras que otras pueden utilizar ampliamente las funciones lambda, el reconocimiento de voz o los servicios de IoT. Puede parecer obvio, pero debe recopilar algunas de sus facturas recientes, seleccionar sus tres servicios principales y trabajar con ellos para determinar la mejor manera de optimizarlos.
Hay docenas de servicios de nube diferentes, por lo que no hay una fórmula secreta para hacerlo manualmente, pero, en general, como dije anteriormente, los recursos de procesamiento y almacenamiento son las dos líneas principales en las facturas de la nube.
Nick: 2. Bueno, no se trata solo de recursos informáticos, sino que hay otros costos que pueden no ser tan obvios. ¿Cuál es la proporción estándar de servicios en la nube en una factura de la nube?
Max: Depende de los casos de uso. Si hablamos de empresas, todavía utilizan mucho la computación, el almacenamiento y las redes. En el caso de la computación, se trata principalmente de máquinas virtuales, pero los contenedores están creciendo muy rápido. Las empresas también utilizan servicios nativos de la nube, pero vale la pena mencionar algo interesante: prefieren ejecutar big data, IA, IoT y otros casos de uso basados en soluciones de terceros y no utilizar servicios nativos de la nube. Creo que la explicación está en la dependencia de un proveedor y en las políticas internas para evitarlo.
Para el almacenamiento, utilizan tanto dispositivos de bloques como almacenamiento de objetos. Dado que la mayoría de las empresas utilizan modelos multi o híbridos, tienen un tráfico intenso entre sitios.
Las startups nacen con nuevas metodologías, están libres de aplicaciones y códigos heredados y no utilizan demasiados recursos heredados, sino que utilizan ampliamente contenedores y servicios nativos de la nube. Recientemente, realizamos una encuesta y la mayoría de nuestros encuestados dijeron que en AWS usan RDS, Lambda y Fargate como sus tres principales. Incluso en Hystax, todas las aplicaciones y servicios están en contenedores y usamos EC2 solo para los nodos de Kubernetes.
Nick: 3. Genial. Depende principalmente del tipo de cargas de trabajo y casos de uso. Bien, ¿y qué enfoques reducen significativamente los gastos de la nube en su opinión?
Max: El primer paso para reducir los gastos es comprender cuáles son las fuentes de esos gastos, cómo se relacionan con sus necesidades y qué cargas de trabajo no es necesario utilizar todo el tiempo o se utilizan de manera ineficiente. En otras palabras, haga una lista de los tres gastos principales y concéntrese en ellos.
Trabaje con su equipo para revisar sus recursos y verificar si todos ellos siguen siendo necesarios. Cree prácticas de limpieza e impleméntelas una vez a la semana o una vez en un sprint. Solo un proceso establecido puede ayudarlo a alcanzar resultados estables. De lo contrario, si se dejan de lado y no se atienden, los mismos problemas volverán a aparecer en 3 o 4 semanas.
Las herramientas de optimización de la nube también pueden ayudarlo a desglosar los costos y desarrollar prácticas de gobernanza y control de la nube para su equipo. Estas herramientas toman información sobre su uso de la nube de diferentes informes y le permiten analizarla de manera más efectiva, al mismo tiempo que le asesoran sobre cómo gastar de manera más eficiente. Por supuesto, estas herramientas de optimización de la nube también cuestan algo de dinero, generalmente es un porcentaje de su factura anual de la nube.
Nick: 4. En resumen, sugieres utilizar herramientas de optimización de la nube y un control y gobernanza estrictos de los costos de la nube. Hablaremos de eso más adelante. Pero hay algunas acciones que los gerentes de TI pueden realizar por su cuenta para reducir los costos. Imagina por un segundo que soy un gerente de TI con un presupuesto para la nube. ¿Qué debo hacer para optimizar los recursos informáticos?
Max: Hay dos cosas básicas que puedes hacer para obtener un efecto inmediato en tus gastos de computación.
En primer lugar, en muchos casos, los recursos de las máquinas virtuales están infrautilizados, es decir, tienen demasiadas funciones en relación con su consumo real. Por ejemplo, una instancia con 8 vCPU y 16 gigabytes de RAM se utiliza solo entre el diez y el quince por ciento de su potencial de cómputo. Puede ahorrar varios cientos de dólares si simplemente la reutiliza por una más respetuosa, y esto es solo para una única instancia, aunque estoy seguro de que tiene más de una de ellas. En segundo lugar, si puede prever sus requisitos de cómputo para los próximos meses o años, puede ahorrar hasta 60% de costos de máquinas virtuales al cambiar a instancias reservadas o al utilizar planes de ahorro. La mayoría de las nubes públicas le ofrecen importantes descuentos por pagar por adelantado.
Además, debe saber quién está utilizando los recursos informáticos y con qué propósito. Por lo general, esto se hace mediante el etiquetado de recursos, donde se define una política de etiquetado de recursos en la nube que su equipo debe seguir. Esas etiquetas se utilizan para diferentes desgloses, informes de uso de recursos del proyecto y actividades de limpieza.
Existen casos interesantes en los que una simple tarea de etiquetar recursos puede ahorrar algo de dinero: las personas comienzan el proceso de inventario de recursos y se dan cuenta de que algunos de ellos ya no se utilizan. Es posible que algunos recursos sean incluso de ingenieros que ya no están en la empresa.
Nick: 5. Genial, entonces se trata de una nueva versión o de usar instancias reservadas que pueden ahorrar hasta 60% en costos de VM y etiquetado, etiquetado y etiquetado. Pero si lo hacemos una vez, ¿cómo nos aseguramos de que en un mes más o menos no tendremos los mismos problemas?
Max: Solo hay una respuesta a esta pregunta: debes hacerlo con regularidad o asignarlo a tus subordinados. Las personas tienen tendencia a olvidarse de cosas que no están dentro de su alcance, por lo que si no se lo recuerdas, se concentrarán en sus tareas actuales. Al fin y al cabo, no es su responsabilidad ahorrar dinero, sino la tuya.
Y, por supuesto, esto obviamente no puede ser una actividad manual: las herramientas de software siempre funcionan de manera más eficiente.
Nick: 6. Ya veo, es complicado y lleva mucho tiempo supervisarlo sin automatización. Bien, digamos que tenemos todas las etiquetas configuradas, ¿cómo podemos ahorrar algo de dinero?
Max: Una vez que se hayan establecido las políticas de etiquetado y tu equipo las respete, puedes crear scripts de limpieza que enumerarán y eliminarán periódicamente todos los recursos sin etiquetar de tu cuenta. Además, es un buen punto psicológico para tu equipo: si ven sus recursos, comienzan a pensar si los necesitan. El etiquetado aporta algo de orden y mente a sus hábitos de aprovisionamiento.
En Hystax teníamos los mismos problemas antes de empezar a usar etiquetas para todos los recursos. Usábamos AWS para nuestros recursos de I+D y tuvimos varios problemas cuando alguien se olvidó de eliminar un clúster o apagar una máquina virtual que ya no era necesaria. Como resultado, recibimos una factura 4 o 5 veces más alta de lo esperado. Básicamente, esa fue una de las razones que nos motivó a explorar más este tema y crear un producto en torno a él.
Nick: 7. ¿No es demasiado difícil eliminar todos los recursos sin etiquetar? ¿Qué pasa si alguien simplemente olvidó agregar una etiqueta?
Max: Puede parecer demasiado complicado y causar algunos contratiempos al principio, pero si lo analizas desde una perspectiva diferente, verás que tener recursos sin etiquetar básicamente significa que no sabes nada sobre ellos, excepto el hecho de que solo inflan tu factura de la nube. No quieres pagar por algo que no conoces y que no necesitas, ¿verdad? Por lo tanto, los scripts de limpieza pueden no ser una técnica ideal para ahorrar costos, pero es mejor que nada.
Nick: 8. Genial. Entendido. Entonces, un script de limpieza es mejor que nada. ¿Hay alguna manera de ahorrar algo de dinero en almacenamiento?
Max: Lo mismo ocurre con el almacenamiento: tanto el almacenamiento de objetos como el de bloques deben etiquetarse. Además, puede ampliar su script de limpieza con la detección de instantáneas y volúmenes no utilizados en el almacenamiento de bloques en la nube para limpiarlos también. Mucha gente no piensa en eso, pero las instantáneas, los volúmenes y las imágenes pueden costarle mucho. Los ingenieros están más centrados en ejecutar máquinas virtuales y, por lo tanto, pueden olvidarse de eliminar instantáneas innecesarias, volúmenes no adjuntos e imágenes redundantes. El etiquetado también debería ayudar en este caso.
Nick: 9. Gracias, Max. ¿Escuché bien que podemos eliminar volúmenes y capturas de pantalla no utilizados como parte de un script de limpieza?
Max: Sí, correcto. El almacenamiento en bloque es bastante caro y los volúmenes perdidos sin usar pueden representar una parte importante de tu factura de la nube. Te sugiero que lo conviertas en una regla de oro: los volúmenes sin asignar y sin etiquetar deben eliminarse.
Nick: 10. Genial, ¿qué se debe hacer con el almacenamiento de objetos? ¿Hay alguna manera de optimizarlo?
Max: Por supuesto. Además de las técnicas de etiquetado, puedes optar por optimizaciones de niveles de almacenamiento cuando utilices almacenamiento en frío para datos a los que no se accede con frecuencia y también para optimizar la ubicación geográfica, lo que también afectará tu gasto en tráfico de red.
Recomiendo encarecidamente crear una política sobre cómo utilizar los recursos almacenados: un depósito por ingeniero debería ser un buen punto de partida. Más adelante, puede revisar sus tamaños y preguntar si se necesitan todos los datos. También tiene sentido considerar si debe trasladar algunos datos a un almacenamiento en frío: las nubes públicas brindan una opción de almacenamiento de objetos bastante económico para datos que se almacenan durante un largo período de tiempo y que no se usan con frecuencia. Como contrapartida (y, por supuesto, siempre hay una contrapartida), obtendrá un tiempo de acceso de lectura más prolongado para dichos datos debido a la naturaleza del almacenamiento.
Nick: 11. Gracias. He oído que el tráfico de red puede ser un verdadero problema y que no es un gasto evidente hasta que llega la primera factura. ¿Cuáles son las mejores prácticas en este caso?
Max: Normalmente, todo el tráfico de red dentro de una región o zona de disponibilidad de la nube es gratuito. Lo mismo ocurre con el tráfico entrante. Sin embargo, cualquier tráfico entre regiones o saliente debe pagarse, y es difícil calcular el monto. Tenga cuidado, los costos de red pueden ser muy altos.
Para evitarlo, debe pensar en las regiones de la nube y la ubicación de los datos de sus recursos de computación y almacenamiento para minimizar el tráfico externo y entre regiones. Debe colaborar con sus arquitectos para identificar los problemas de ubicación de los datos antes de escalar en una nube. Si puede, simplemente coloque todos los componentes de la aplicación en una región.
Además, no te olvides de los servicios CDN. Sin duda, depende de tus aplicaciones y casos de uso, pero en la mayoría de los casos, tus datos deberían estar más cerca de tus clientes que de tus ingenieros.
Nick: 12. Pero, ¿las nubes públicas te ayudan con el control y la optimización de costos?
Max: Las nubes públicas siguen las necesidades de sus clientes y ofrecen servicios integrados de informes y análisis de costos, pero normalmente exigen que elabores tú mismo el proceso de control de gastos y el esquema de etiquetado o recurras a servicios de consultoría.
Tampoco incluyen escenarios de optimización, por lo que también deberás hacerlo por tu cuenta. Por lo tanto, crear un control de gastos adecuado utilizando únicamente herramientas de exploración de costos de proveedores de la nube es bastante complejo y no está listo para usar.
Nick: 13. Genial, todo lo que hemos comentado hoy suena razonable para una única nube, pero ¿qué pasa si utilizo una estrategia de nube híbrida o multicloud?
Max: La situación se vuelve mucho más compleja si optas por la multicloud. Necesitarás utilizar distintas consolas de facturación en la nube con conjuntos de funciones y flujos de trabajo muy diferentes. Y es aún más complejo si utilizas la nube híbrida: también necesitarás herramientas para cargas de trabajo locales que se integrarán con la facturación en la nube pública. Por lo tanto, tu tiempo como gerente se duplica, como mínimo, tanto para establecer la técnica de optimización como para ejecutarla.
Recomiendo encarecidamente centrarse primero en una nube, establecer un proceso, lograr algunos resultados y solo después intentar implementar esto en las otras nubes que utilice.
Nick: 14. Anteriormente dijiste que la optimización no es suficiente y que debería haber gobernanza y control de costos. Cuéntanoslo.
Max: En definitiva, todas estas técnicas de etiquetado sirven como una táctica de control de costos. Lo ideal es que, si sus recursos están etiquetados correctamente, pueda asignar cada centavo de su factura de la nube a una unidad de negocios, equipo o proyecto específico dentro de su organización. Esto le ayuda a presupuestar sus requisitos correctamente y a controlar los gastos de la nube en todos los niveles de su organización.
Todos los escenarios que hemos analizado hoy deberían funcionar de inmediato, pero sus beneficios aumentarían significativamente si se realizaran de forma automática y en tiempo real. Es lo mismo que aprender algo nuevo: si no se practica con regularidad, el resultado será menos significativo.
Nick: 15. Bien, Max, resumamos los pasos que los administradores de TI pueden tomar ahora para optimizar sus gastos en la nube.
Max: Lo resumiría con la siguiente lista de acciones a realizar:
1. Identifique los tres elementos principales de su factura de la nube
2. Etiquete los recursos e implemente técnicas de limpieza
3. Identificar y revisar las prácticas de localización de datos
4. Considere utilizar la automatización para la gestión y optimización de costos
Nick: 16. Genial. Max, ¿podrías decirnos si la plataforma que estamos construyendo actualmente cubre los escenarios descritos?
Max: Sí, claro. Estamos construyendo una plataforma de gestión de nube híbrida, que se centra en la gestión, el control y la optimización de los costes. Le proporciona escenarios de optimización inmediatos y permite un flujo listo para usar para asignar sus gastos de nube a su estructura organizativa en todas las plataformas de nube utilizadas. Además, recibe sofisticadas capacidades de aprovisionamiento para I+D colaborativo, como aprovisionamiento básico, plantillas y control de versiones.