En 2015, Dropbox comenzó a ejecutar su infraestructura completamente en sus propios servidores, alejándose de AWS. Un año antes, su liderazgo había decidido hacer este cambio porque sus costes de alojamiento en la nube se habían vuelto demasiado altos. Esta historia causó revuelo en el mundo de la tecnología, que para entonces había aprendido a dar por sentado que el futuro era la nube pública y que pronto todos los cargas de trabajo estarían allí. Pero la realidad es que las soluciones de cloud privado tienen más sentido para la mayoría de los casos para contener y tener costes prededibles, así como disponer de infraestructura 100% dedicada sin vecinos ruidosos. En su presentación de oferta pública de 2018, Dropbox reveló que este cambio les había ahorrado más de 70 millones de euros en dos años.
Tres años después, los analistas de Andreesen Horowitz usaron la historia de Dropbox para ilustrar una tendencia que habían estado observando. Si bien usar la nube pública era decisión fácil y que no necesita pensar mucho para una empresa que empieza su camino, escribieron en este artículo, los costes de infraestructura en la nube ejercen un lastre cada vez más pesado sobre los márgenes de ganancia y la capitalización de mercado a medida que el negocio alcanza cierta escala.
Otra historia pública importante que alimentó la «repatriación de la nube» en el zeitgeist fue la de 37Signals, cuyo cofundador y creador de Ruby on Rails, David Heinemeier Hansson, escribió extensamente sobre mover los productos de la compañía, Basecamp y HEY, principalmente fuera de la nube, porque habían madurado más allá del punto en el que la flexibilidad que se obtiene al ejecutar cargas de trabajo en una nube pública tenía un alto coste. Las soluciones on-premise volvían a tener mucho sentido.
Optimizar los costes de infraestructura mientras se cumplen con las demandas de carga de trabajo es un desafío. En este artículo, te contaremos sobre las estrategias comunes para reducir los costes de alojamiento en la nube. También aprenderás sobre la nube privada, como mejor alternativa a las nubes públicas, que puede ofrecer un mejor rendimiento a un coste más bajo mientras retiene la flexibilidad de la nube.
Entendiendo los costes de alojamiento en la nube
Una de las razones detrás de los altos costes de la nube es la complejidad de los conjuntos de funciones y los modelos de precios de los proveedores de nube pública. Para controlar efectivamente los costes, necesitas saber exactamente por qué se te está cobrando y cómo se pueden acumular los costes, lo cual es un desafío por sí solo.
Factores que contribuyen a tu alta factura de la nube
- Sobreaprovisionamiento: Uno de los principales propósitos de la nube es entregar recursos suficientes a pedido, atendiendo tanto a las necesidades de los clientes como a los requisitos de los equipos internos. No necesariamente un sobreaprovisionamiento puede suponer una mayor coste, pero hay que analizar cada caso.
- Desajuste de tipos de instancia: Un desajuste entre los tipos de instancia, las clases de almacenamiento y el uso de servicios especializados, como GPU, puede causar cuellos de botella de rendimiento o facturas más altas si no se configura correctamente.
- Tarifas de egreso de datos: Mover datos entre zonas de disponibilidad y diferentes sistemas puede ser sorprendentemente costoso, especialmente para aplicaciones de alto tráfico.
- Tarifas de licencias: Las tarifas de licencias de software pueden contribuir a los altos costos si no puedes traer tus propias licencias (BYOL).
- Modelo de pago por uso: Este modelo, donde los cargos se basan en el uso, es lo que hace que la nube sea adaptable y atractiva, ya que ofrece un punto de entrada bajo para construir un servicio que atienda a usuarios en diferentes ubicaciones. Sin embargo, exige una vigilancia rigurosa de los costos.
- Costes laborales: Debes tener en cuenta el personal necesario para asegurar y supervisar toda tu infraestructura. Por ejemplo, a medida que rediseñas tu arquitectura para lograr un mayor ahorro de costos o establecer servicios confiables a través de configuraciones de nube múltiple o híbrida, un equipo dedicado se vuelve esencial.
- Almacenamiento: Sin una buena estrategia de archivo y retención, el costo de mantener tus datos estructurados y especialmente no estructurados puede aumentar significativamente. Además, transferir datos a otro proveedor para aprovechar los descuentos por uso de nube comprometido puede introducir costos adicionales.
Estrategias para minimizar los costes de alojamiento en la nube
Una vez que tengas una mejor comprensión de lo que está causando los altos costes, puedes enfocarte en las estrategias para ayudarte a reducirlos. Puedes optimizar tus instancias para hacer un mejor uso de los recursos disponibles y ajustar esos recursos en función de la demanda y la aplicación en cuestión.
- Dimensionamiento adecuado y asignación de recursos: Alinear la asignación de recursos y planificar una capacidad óptima es una de las mejores cosas que puedes hacer para ahorrar dinero. Este proceso comienza con el uso de herramientas de monitorización y perfilado.
- Escalado automático y gestión de la demanda máxima: El escalado automático asegura un aprovisionamiento de recursos óptimo durante los picos de demanda, evitando el sobreaprovisionamiento durante los períodos de baja actividad.
- Uso de instancias reservadas y spot: Las RI te permiten hacer compromisos de infraestructura a largo plazo, asegurando descuentos. Las instancias spot son ideales para fines de prueba, ya que utilizan capacidad ociosa y, por lo tanto, tienen un descuento masivo. Aunque también un riesgo al poder liberarse en caso de necesidad de proveedor.
- Refactorización de aplicaciones: Volver a diseñar una aplicación para que se ajuste al modelo de nube puede generar tanto ahorros de costos como una aplicación mejor funcionando y más versátil.
- Uso de herramientas de monitorización y optimización de costes: Herramientas como AWS Cost Explorer y Microsoft Cost Management permiten un análisis en profundidad de los datos de costos, la detección de anomalías y recomiendan oportunidades de optimización.
La optimización de costes en la nube tiene límites
Aunque estas estrategias son útiles, todas tienen sus límites en cuanto a la cantidad de ahorros que se pueden lograr. Con el tiempo, los rendimientos de estas optimizaciones comienzan a disminuir. Además, los proveedores de nube pública pueden y suelen cambiar sus modelos de precios y los servicios ofrecidos según les convenga, afectando tu optimización.
¿Hay una mejor manera? La nube privada
Existe un estilo alternativo de infraestructura que permite a los usuarios mantener un control de la demanda, computación de uso exclusivo real y coste predecibles, con opciones en pago por uso de infraestructura. Se trata de la nube privada dedicada.
A diferencia de los servicios de nube tradicionales, una nube privada, como la de Stackscale, ofrece instancias de computación de servidor físicos reales (bare-metalUn servidor bare-metal es un servidor físico con un único) donde es posible desplegar cualquier hypervisor como VMware, Proxmox, Hyper-V, KVM, etc. Esto no solo ofrece un mejor rendimiento, sino que también resulta en un uso más eficiente de la capacidad de cómputo exclusiva por la que estás pagando.