Infraestructura como servicio o IaaS
La infraestructura como servicio (infrastructure as a service o IaaS) es una forma de computación en la nube que proporciona recursos informáticos virtualizados a través de internet. IaaS es una de las tres categorías principales de servicios de computación en la nube, junto con el software como servicio (SaaS) y la plataforma como servicio (PaaS).
En el modelo IaaS, el proveedor de la nube gestiona las infraestructuras de TI, como los recursos de almacenamiento, servidores y redes, y los entrega a las organizaciones de suscriptores a través de máquinas virtuales accesibles a través de internet. IaaS puede tener muchos beneficios para las organizaciones, como hacer que las cargas de trabajo sean más rápidas, más fáciles, más flexibles y más rentables.
Arquitectura IaaS
En un modelo de servicio IaaS, un proveedor de nube aloja los componentes de infraestructura que tradicionalmente están presentes en un centro de datos local. Esto incluye servidores, almacenamiento y hardware de redes, así como la capa de virtualización o hipervisor.
Los proveedores de IaaS también ofrecen una gama de servicios para acompañar a esos componentes de infraestructura. Estos pueden incluir lo siguiente:
- facturación detallada;
- vigilancia;
- acceso al registro;
- seguridad;
- balanceo de carga;
- agrupamiento;
- y resistencia del almacenamiento, como respaldo, replicación y recuperación.
Estos servicios están cada vez más impulsados por políticas, lo que permite a los usuarios de IaaS implementar mayores niveles de automatización y orquestación para importantes tareas de infraestructura. Por ejemplo, un usuario puede implementar políticas para impulsar el equilibrio de carga para mantener la disponibilidad y el rendimiento de la aplicación.
¿Cómo funciona IaaS?
Los clientes de IaaS acceden a recursos y servicios a través de una red de área amplia (WAN), como internet, y pueden utilizar los servicios del proveedor de la nube para instalar los elementos restantes de una pila de aplicaciones. Por ejemplo, el usuario puede iniciar sesión en la plataforma IaaS para crear máquinas virtuales (VM); instalar sistemas operativos en cada VM; implementar middleware, como bases de datos; crear depósitos de almacenamiento para cargas de trabajo y copias de seguridad; e instale la carga de trabajo empresarial en esa máquina virtual. Los clientes pueden utilizar los servicios del proveedor para realizar un seguimiento de los costos, supervisar el rendimiento, equilibrar el tráfico de la red, solucionar problemas de aplicaciones y gestionar la recuperación ante desastres.
Cualquier modelo de computación en la nube requiere la participación de un proveedor. El proveedor suele ser una organización de terceros que se especializa en vender IaaS. Amazon Web Services (AWS) y Google Cloud Platform (GCP) son ejemplos de proveedores independientes de IaaS. Una empresa también puede optar por implementar una nube privada, convirtiéndose en su propio proveedor de servicios de infraestructura.
Ventajas de IaaS
Las organizaciones eligen IaaS porque a menudo es más fácil, rápido y rentable operar una carga de trabajo sin tener que comprar, administrar y respaldar la infraestructura subyacente. Con IaaS, una empresa puede simplemente alquilar o arrendar esa infraestructura a otra empresa.
IaaS es un modelo de servicio en la nube eficaz para cargas de trabajo que son temporales, experimentales o que cambian inesperadamente. Por ejemplo, si una empresa está desarrollando un nuevo producto de software, podría ser más rentable alojar y probar la aplicación utilizando un proveedor de IaaS.
Una vez que el nuevo software se prueba y perfecciona, la empresa puede eliminarlo del entorno IaaS para una implementación interna más tradicional. Por el contrario, la empresa podría comprometer esa pieza de software a una implementación de IaaS a largo plazo si los costos de un compromiso a largo plazo son menores.
En general, los clientes de IaaS pagan por usuario, generalmente por hora, semana o mes. Algunos proveedores de IaaS también cobran a los clientes en función de la cantidad de espacio de máquina virtual que utilizan. Este modelo de pago por uso elimina el gasto de capital de implementar hardware y software internos.
Cuando una empresa no puede utilizar proveedores externos, una nube privada construida en las instalaciones aún puede ofrecer el control y la escalabilidad de IaaS —aunque los beneficios de costos ya no se aplican.
Desventajas de IaaS
A pesar de su modelo flexible de pago por uso, la facturación de IaaS puede ser un problema para algunas empresas. La facturación en la nube es extremadamente granular y se desglosa para reflejar el uso preciso de los servicios. Es común que los usuarios experimenten un impacto de etiqueta —o descubran que los costos son más altos de lo esperado— al revisar las facturas de cada recurso y servicio involucrado en la implementación de la aplicación. Los usuarios deben monitorear de cerca sus entornos y facturas IaaS para comprender cómo se utiliza IaaS y evitar que se les cobre por servicios no autorizados.
El conocimiento a detalle es otro problema común para los usuarios de IaaS. Debido a que los proveedores de IaaS son propietarios de la infraestructura, los detalles de la configuración y el rendimiento de su infraestructura rara vez son transparentes para los usuarios de IaaS. Esta falta de transparencia puede dificultar la gestión y el seguimiento de los sistemas para los usuarios.
Los usuarios de IaaS también están preocupados por la resiliencia del servicio. La disponibilidad y el rendimiento de la carga de trabajo dependen en gran medida del proveedor. Si un proveedor de IaaS experimenta cuellos de botella en la red o cualquier forma de tiempo de inactividad interno o externo, las cargas de trabajo de los usuarios se verán afectadas. Además, debido a que IaaS es una arquitectura de múltiples inquilinos, el problema del vecino ruidoso puede afectar negativamente las cargas de trabajo de los usuarios.
IaaS contra SaaS contra PaaS
IaaS es solo uno de varios modelos de computación en la nube y se puede complementar combinándolo con PaaS y SaaS.
PaaS se basa en el modelo IaaS porque, además de los componentes de la infraestructura subyacente, los proveedores alojan, administran y ofrecen sistemas operativos, middleware y otros tiempos de ejecución para los usuarios de la nube. Si bien PaaS simplifica la implementación de la carga de trabajo, también restringe la flexibilidad de una empresa para crear el entorno que desea.
Con SaaS, los proveedores alojan, administran y ofrecen toda la infraestructura, así como las aplicaciones, para los usuarios. Los usuarios de SaaS no necesitan instalar nada; simplemente inician sesión y utilizan la aplicación del proveedor, que se ejecuta en la infraestructura del proveedor. Los usuarios tienen cierta capacidad para configurar la forma en que funciona la aplicación y qué usuarios están autorizados a usarla, pero el proveedor de SaaS es responsable de todo lo demás.
Casos de uso de IaaS
IaaS se puede utilizar para una amplia variedad de propósitos. Los recursos informáticos que ofrece a través de un modelo de nube se pueden utilizar para adaptarse a una variedad de casos de uso. Los casos de uso más comunes para las implementaciones de IaaS incluyen los siguientes:
- Entornos de prueba y desarrollo. IaaS ofrece a las organizaciones flexibilidad cuando se trata de diferentes entornos de prueba y desarrollo. Se pueden ampliar o reducir fácilmente según las necesidades.
- Alojamiento de sitios web orientados al cliente. Esto puede hacer que sea más asequible alojar un sitio web, en comparación con los medios tradicionales de alojamiento de sitios web.
- Almacenamiento, respaldo y recuperación de datos. IaaS puede ser la forma más fácil y eficiente para que las organizaciones administren datos cuando la demanda es impredecible o podría aumentar constantemente. Además, las organizaciones pueden eludir la necesidad de realizar grandes esfuerzos centrados en los requisitos de gestión, legales y de cumplimiento del almacenamiento de datos.
- Aplicaciones web. IaaS proporciona la infraestructura necesaria para alojar aplicaciones web. Por lo tanto, si una organización aloja una aplicación web, IaaS puede proporcionar los recursos de almacenamiento, servidores y redes necesarios. Las implementaciones se pueden realizar rápidamente y la infraestructura de la nube se puede ampliar o reducir fácilmente según la demanda de la aplicación.
- Computación de alto rendimiento (HPC). Ciertas cargas de trabajo pueden exigir computación a nivel de HPC, como cálculos científicos, modelado financiero y trabajo de diseño de productos.
- Almacenamiento de datos y análisis de big data. IaaS puede proporcionar la potencia de procesamiento y computación necesaria para analizar grandes conjuntos de datos.
Principales proveedores y productos de IaaS
Hay muchos ejemplos de proveedores y productos de IaaS. Los productos IaaS ofrecidos por los tres mayores proveedores de servicios de nube pública —Amazon Web Services (AWS), Google y Microsoft— incluyen lo siguiente:
- AWS ofrece servicios de almacenamiento como Simple Storage Service (S3) y Glacier, así como servicios de computación, incluido Elastic Compute Cloud (EC2).
- Google Cloud Platform (GCP) ofrece servicios de almacenamiento y computación a través de Google Compute Engine.
- Microsoft Azure Virtual Machines ofrece virtualización en la nube para diferentes propósitos de computación en la nube.
Esta es solo una pequeña muestra de la amplia gama de servicios ofrecidos por los principales proveedores de IaaS. Los servicios pueden incluir funciones sin servidor, como AWS Lambda, Azure Functions o Google Cloud Functions; acceso a la base de datos; entornos informáticos de big data; vigilancia; inicio de sesión; y más.
También hay muchos otros jugadores más pequeños o de nicho en el mercado de IaaS, incluidos estos productos:
- Rackspace Managed Cloud
- IBM Cloud Private
- Servidores virtuales de IBM Cloud
- CenturyLink Cloud
- DigitalOcean Droplets
- Servicio de Computación Elástica de Alibaba
- Computación elástica de alto rendimiento en la nube de Alibaba (E-HPC)
- Servicio de GPU elástico de Alibaba (EGS)
Los usuarios deberán considerar cuidadosamente los servicios, la confiabilidad y los costos antes de elegir un proveedor —y estar listos para seleccionar un proveedor alternativo y volver a implementarlo en la infraestructura alternativa si es necesario.
¿Cómo se implementa IaaS?
Cuando se busca implementar un producto IaaS, hay consideraciones importantes que hacer. Los casos de uso de IaaS y las necesidades de infraestructura deben definirse estrictamente antes de considerar diferentes requisitos técnicos y proveedores. Las necesidades técnicas y de almacenamiento a considerar para implementar IaaS incluyen:
- Al centrarse en las implementaciones en la nube, las organizaciones deben hacer ciertas preguntas para asegurarse de que se pueda acceder a la infraestructura aprovisionada en la nube de manera eficiente.
- Las organizaciones deben considerar los requisitos para los tipos de almacenamiento, los niveles de rendimiento de almacenamiento requeridos, el posible espacio necesario, el aprovisionamiento y las opciones potenciales, como el almacenamiento de objetos.
- Cómputo. Las organizaciones deben considerar las implicaciones de las diferentes opciones de servidor, VM, CPU y memoria que los proveedores de la nube pueden ofrecer.
- La seguridad de los datos debe ser de suma importancia al evaluar los servicios y proveedores en la nube. Las preguntas sobre el cifrado de datos, las certificaciones, el cumplimiento y la regulación, y las cargas de trabajo seguras deben realizarse en detalle.
- Recuperación de desastres. Las funciones y opciones de recuperación ante desastres son otra área de valor clave para las organizaciones en caso de conmutación por error en los niveles de VM, servidor o sitio.
- Tamaño del servidor. Opciones para los tamaños de servidor y VM, cuántas CPU se pueden colocar en los servidores y otros detalles de la CPU y la memoria.
- Rendimiento de la red. Velocidad entre máquinas virtuales, centros de datos, almacenamiento e internet.
- Manejabilidad general. ¿Cuántas funciones de IaaS puede controlar el usuario, qué partes necesita controlar y qué tan fáciles son de controlar y administrar?
Durante el proceso de implementación, las organizaciones deben considerar de cerca cómo las ofertas técnicas y de servicios de diferentes proveedores satisfacen las necesidades del lado comercial, así como los requisitos de uso específicos de la propia empresa. El mercado de proveedores de IaaS debe evaluarse cuidadosamente; con una variación considerable de capacidades dentro de los productos, algunos pueden alinearse mejor con las necesidades comerciales que otros
Una vez que se decide un proveedor y un producto, es importante negociar todos los acuerdos de nivel de servicio. Una negociación exhaustiva con el proveedor hará que sea menos probable que su organización se vea afectada negativamente por detalles en letra pequeña que antes se desconocían.
Además, una organización debe evaluar minuciosamente las capacidades de su departamento de TI para determinar qué tan bien equipada está para hacer frente a las demandas continuas de la implementación de IaaS. En el modelo IaaS, los desarrolladores internos son responsables del mantenimiento técnico de la infraestructura —incluidos los parches de software, las actualizaciones y la resolución de problemas. Esta evaluación del personal es necesaria para garantizar que la organización esté equipada para maximizar el valor en todos los frentes de una implementación de IaaS.