Los gerentes de TI se enfrentan con frecuencia a desafíos de escalabilidad en sus funciones. Predecir las tasas de crecimiento de las aplicaciones, los requisitos de capacidad de almacenamiento de datos y las demandas de ancho de banda no es poco. Cuando una carga de trabajo se acerca a sus límites de capacidad, la pregunta es: ¿cómo podemos mantener un alto rendimiento y al mismo tiempo garantizar la eficiencia a medida que escalamos la arquitectura?
La capacidad de aprovechar rápidamente el poder de la nube, ya sea mediante el escalado ascendente o descendente, para adaptarse al rápido crecimiento imprevisto o a las fluctuaciones estacionales de la demanda se ha convertido en una ventaja significativa de los servicios en la nube pública. Sin embargo, sin una gestión eficaz, también puede convertirse en una carga. El atractivo de obtener acceso a infraestructura adicional en cuestión de minutos es innegable. Sin embargo, para hacerlo de manera efectiva, se deben tomar decisiones sobre qué tipo de escalabilidad se requiere para satisfacer la demanda, casos de uso específicos y cómo monitorear meticulosamente los gastos.
Manténgase al día sobre las tendencias más importantes e intrigantes de la industria sobre IA, automatización, datos y más con el boletín Think. Consulte la Declaración de privacidad de IBM.
La escalabilidad de la infraestructura maneja las necesidades cambiantes de una aplicación agregando o eliminando recursos de forma estática para satisfacer las demandas cambiantes de la aplicación, según sea necesario. En la mayoría de los casos, esto se maneja mediante el escalado ascendente (vertical) o el escalado descendente (horizontal). Se han realizado muchos estudios y desarrollos arquitectónicos sobre la escalabilidad en la nube que orientaron muchas áreas de cómo funciona y la arquitectura para aplicaciones de Kubernetes emergentes o nativas de la nube. En este artículo, nos centraremos primero en comparar el escalado ascendente frente al escalado descendente.
El escalado ascendente, a menudo denominado escalado vertical, se realiza agregando más recursos a un sistema existente para alcanzar el estado de rendimiento deseado. Por ejemplo, una base de datos o un servidor web necesita recursos adicionales para continuar el rendimiento a un cierto nivel para cumplir con los acuerdos de nivel de servicio (SLA). Se puede agregar más CPU, memoria, almacenamiento o red a ese sistema para mantener el rendimiento en los niveles deseados.
Cuando esto se hace en la nube, las aplicaciones a menudo se mueven a máquinas virtuales más potentes e incluso pueden migrar a un host diferente para minimizar el tiempo de inactividad y luego retirar el servidor en el que estaban. Por supuesto, este proceso debe ser transparente para el cliente.
El escalado también se puede hacer en el software agregando más hilos, más conexiones o, en el caso de aplicaciones de bases de datos, aumentando el tamaño de la caché. Este tipo de operaciones de escalado ascendente han estado ocurriendo on premises en centros de datos durante décadas. Sin embargo, el tiempo que lleva adquirir recursos adicionales para escalar de forma ascendente un sistema determinado podría llevar semanas o meses en un entorno on premises, mientras que escalar de forma ascendente en la nube puede llevar solo unos minutos, lo que podría afectar a los precios.
El escalado descendente generalmente se asocia con arquitecturas distribuidas. Hay dos formas básicas de escalado descendente:
Ambos enfoques se utilizan hoy en día en los proveedores de servicios en la nube (CSP) contemporáneos, junto con el escalado vertical (ascendente) de componentes individuales (cómputo, memoria, red y almacenamiento), para reducir los costos. El escalado horizontal (descendente) facilita a los proveedores de servicios ofrecer infraestructura y servicios de "pago a medida que crece", lo que influye en las estrategias de precios.
La infraestructura hiperconvergente se ha vuelto cada vez más popular para su uso en la nube privada e incluso en proveedores de servicios de nivel 2. Este enfoque no está tan acoplado como otras formas de arquitecturas distribuidas, pero ayuda a los administradores de TI que están acostumbrados a las arquitecturas tradicionales a hacer la transición al escalado horizontal y obtener los beneficios de costos asociados.
La arquitectura distribuida de acoplamiento flexible permite escalar cada parte de la arquitectura de forma independiente, eliminando eficazmente los cuellos de botella. Esto significa que se puede crear y desplegar un grupo de productos de software como piezas independientes, aunque trabajen juntas para gestionar un flujo de trabajo completo. Cada aplicación se compone de una colección de servicios abstractos que pueden funcionar y operar de forma independiente. Esto permite escalar horizontalmente a nivel de producto, así como a nivel de servicio. Se pueden delinear capacidades de escalado aún más granulares por SLA o tipo de cliente (por ejemplo, bronce, plata u oro) o incluso por tipo de API si hay diferentes niveles de demanda para ciertas API. Esto puede promover el uso eficiente del escalado dentro de una infraestructura determinada.
Los proveedores de servicios han adaptado continuamente sus infraestructuras para satisfacer las necesidades cambiantes de los clientes, centrándose en el rendimiento y la eficiencia. Un ejemplo notable es el autoescalado de AWS, que alinea el uso de recursos con los requisitos reales, garantizando que a los usuarios se les facture solo por lo que consumen activamente. Este enfoque tiene un potencial significativo para el ahorro de costos, aunque descifrar la compleja facturación puede ser un desafío.
Aquí es precisamente donde IBM® Turbonomic interviene para simplificar la facturación en la nube, proporcionando insights claros sobre los gastos y facilitando decisiones bien informadas con respecto a las estrategias de escalado ascendente o descendente, lo que lleva a ahorros aún mayores. Turbonomic agiliza la asignación presupuestaria para la gestión de TI en infraestructuras on premises y externas al ofrecer modelos de costos tanto para entornos como para planes de migración para garantizar un rendimiento óptimo de la carga de trabajo y eficiencia mientras mitiga los problemas de rendimiento.
Para los proveedores de servicios en la nube de hoy en día, las arquitecturas distribuidas de acoplamiento flexible son fundamentales para escalar en la nube y, junto con la automatización de la nube, esto brinda a los clientes muchas opciones de escalado vertical u horizontal adaptadas para adaptar mejor a sus necesidades comerciales. Turbonomic puede ayudarle a asegurarse de que está eligiendo las mejores opciones en su recorrido hacia la nube, alineándose con los requisitos específicos de su sistema de almacenamiento.
IBM Cloud Infrastructure Center es una plataforma de software compatible con OpenStack diseñada para gestionar la infraestructura de nube privada que se ejecuta en IBM zSystems e IBM LinuxONE.
Ofrezca una infraestructura segura y preparada para IA en entornos de nube híbrida
Acelere, proteja y optimice su infraestructura empresarial y de nube híbrida con la orientación de expertos de IBM Technology Expert Labs.