Forma en la que la infraestructura como servicio potencia la empresa moderna

Chandler Harris Chandler Harris

Resumen: la infraestructura como servicio (IaaS) es una infraestructura de computación en la nube que proporciona recursos de procesado, conectividad y almacenamiento a través de Internet, mediante un modelo de suscripción que se puede escalar. Dado que se ofrece como un servicio de suscripción, se puede escalar hacia arriba o hacia abajo según sea necesario, lo que proporciona una mayor flexibilidad en comparación con las infraestructuras locales.

A principios de la década de 2010, la velocidad de Internet aumentó hasta un punto en el que los servicios digitales podían prestarse a través de la red, lo que desencadenó la revolución de la nube. Las empresas comenzaron a trasladar sus aplicaciones a modelos de software como servicio (SaaS), lo que produjo un aumento del tráfico web que exigió más recursos de hardware y la necesidad de herramientas nuevas para automatizar la gestión del hardware. Las empresas comenzaron a ofrecer recursos de infraestructura basados en la nube y herramientas de gestión como servicio o infraestructura como servicio (IaaS).

¿Qué es la infraestructura como servicio?

La IaaS es una infraestructura de computación en la nube que proporciona recursos de procesado, conectividad y almacenamiento a través de Internet, mediante un modelo de suscripción que puede escalar. Se trata de un servicio en la nube fundamental que puede crear la plataforma como servicio (PaaS) y el SaaS o complementarlos. Muchos equipos ágiles y de DevOps usan IaaS para crear sus plataformas. Al ofrecerse como servicio de suscripción, se puede escalar hacia arriba o hacia abajo en función de las necesidades, lo que proporciona una mayor flexibilidad en comparación con las infraestructuras locales.

¿Cómo funciona?

La IaaS es un conjunto de recursos informáticos físicos y virtuales que ofrecen los recursos necesarios para ejecutar aplicaciones y cargas de trabajo en la nube. Los proveedores de IaaS pueden gestionar los centros de datos de un cliente, suministrar servicios informáticos virtuales y ofrecer servicios de red y almacenamiento a los clientes.

El alojamiento tradicional “bare metal” proporciona acceso directo al hardware y control de las especificaciones de este a través de Internet; sin embargo, no ofrece recursos de procesado, conectividad ni almacenamiento virtualizados. Con el alojamiento “bare metal”, el acceso remoto se concede al cliente de alojamiento, que luego inicia sesión de forma remota en la máquina y la configura. Puede proporcionar un mayor rendimiento que la IaaS para aspectos como la computación de la GPU, la informática de alto rendimiento, la analítica, etc. No obstante, no incluye las ventajas de la IaaS, incluida la capacidad de proporcionar y escalar con rapidez los recursos.

Desarrollado sobre el alojamiento “bare metal” está el alojamiento compartido o el alojamiento virtual. El alojamiento compartido utiliza la virtualización para fragmentar una máquina individual en máquinas virtuales independientes. La virtualización es el proceso a nivel de sistema en el que los recursos como la RAM, la CPU, el disco o la red se pueden virtualizar y representar como varios recursos individuales. Esta virtualización de recursos permite que una sola máquina física albergue a varios inquilinos como si estuvieran en máquinas distintas.

Cuando se escala el alojamiento “bare metal” y virtual a centros de datos o a una infraestructura de clúster, se crea la IaaS. En lugar de utilizar una máquina, se puede virtualizar una sala llena de servidores en unidades informáticas individuales.

Al llevar la configuración y el aprovisionamiento remotos a salas llenas de servidores, la IaaS permite los servicios en la nube. Además de proporcionar recursos del sistema operativo, la IaaS ofrece recursos de infraestructura preconfigurados y de servicio completo, como equilibradores de carga, gestión de DNS, servidores de correo electrónico, puertas de seguridad, etc. Suele salir caro desarrollar y mantener estos recursos sin ayuda.

¿Cómo se relaciona la IaaS con los contenedores?

Hoy en día, muchas soluciones de IaaS ofrecen alojamiento de contenedores o contenedores como servicio (CaaS) como parte de la infraestructura disponible. CaaS es el alojamiento de contenedores desarrollado sobre la IaaS con el que los desarrolladores de software y los departamentos de TI pueden cargar, organizar, ejecutar, escalar y gestionar contenedores mediante la virtualización basada en contenedores. CaaS utiliza contenedores como recurso principal, en lugar de máquinas virtuales.

¿Qué plataformas tecnológicas populares ofrecen IaaS?

Algunos ejemplos populares de IaaS son Amazon AWS, Microsoft Azure, Google Cloud, DigitalOcean y Linode. Algunas de las plataformas que ofrecen soluciones IaaS locales son Amazon Outposts, Azure Stack y Google Anthos. Si tu organización quiere desarrollar su propia IaaS, existen algunas soluciones populares como OpenStack, VMware vCloud y Azure Stack.

Comparación de IaaS, PaaS y SaaS

La IaaS, la PaaS y el SaaS son diferentes capas de una pila de servicios en la nube. La IaaS es la capa base inferior y proporciona la infraestructura subyacente que facilita la PaaS y el SaaS.

La PaaS es una infraestructura que respalda el desarrollo de aplicaciones. Ofrece a los desarrolladores acceso a ecosistemas gestionados de lenguajes de programación y bases de datos en los que pueden implementar automáticamente el código de las aplicaciones, lo que permite a los desarrolladores centrarse en su código de lógica empresarial principal y no en el mantenimiento de la infraestructura del entorno de programación seleccionada. Algunos ecosistemas PaaS populares son Ruby on Rails, Express (Node.js) y Django (Python).

Los productos de SaaS son aplicaciones de software especializadas totalmente funcionales que se publican desde la nube, como CRM, aplicaciones de calendario, correo web, comercio electrónico, etc. Un SaaS se puede desarrollar sobre una PaaS. La PaaS proporciona el ecosistema de lenguaje y base de datos en el que los desarrolladores escriben el código para crear el SaaS.

Ventajas

IaaS permite a la organización escalar sus necesidades de infraestructura según la demanda. Esto es beneficioso, ya que muchas organizaciones no quieren una infraestructura fija y necesitan evolucionar su infraestructura para responder a las necesidades cambiantes. IaaS ofrece a los equipos de desarrollo de software más autonomía para solicitar recursos según sea necesario sin depender de un administrador de sistemas para hacerlo de forma manual. Esto reduce el coste de la plantilla y ayuda a desarrollar equipos de DevOps más ágiles.

Entre algunas de las razones por las que una organización puede querer implementar la IaaS se incluyen las siguientes:

  • Fricciones y retrasos al intentar configurar o solicitar recursos de hardware nuevos
  • Costes de infraestructura elevados que no se contabilizan con el uso
  • Incapacidad de ajustarse con rapidez a los picos de tráfico

Dificultades

Si tu organización no utiliza la IaaS, habrá una curva de aprendizaje y un coste por cambio. Puede resultar más fácil usar una oferta de IaaS de terceros popular, lo que puede ahorrar los costes asociados a la compra del hardware que se requiere para instalarla. El reto suele consistir en aprender a utilizar las API de la plataforma de terceros y en migrar los recursos existentes a dicha plataforma.

Si una organización ya tiene un centro de datos y quiere implementar y gestionar una IaaS, puede ser una tarea costosa y lenta.

Cómo implementar una IaaS

Existen dos rutas populares para implementar una IaaS. La primera es la ruta alojada, en la que una organización crea una cuenta con un host de IaaS de terceros. Antes de seleccionar un proveedor de alojamiento, es importante conocer primero las necesidades específicas de la empresa en cuanto a servidores, conectividad y almacenamiento, ya que hay numerosos proveedores que ofrecen distintos niveles de capacidades. Una vez que se ha selecciono un proveedor y se ha establecido una cuenta, la organización debe identificar las partes de la infraestructura actual que son más adecuadas para migrarlas al host nuevo. Este debe ser un proceso gradual.

Una alternativa es establecer una arquitectura de IaaS local con el hardware actual, lo que implica seleccionar una plataforma tecnológica de IaaS como Openstack, VMware vCloud o Azure Stack. La implementación de la IaaS se realiza con un hardware independiente de la infraestructura actual. Una vez que la IaaS esté instalada y operativa, debería tener lugar el mismo proceso de migración que la ruta alojada.

En conclusión...

La IaaS se creó a partir de una historia de avance en la administración de sistemas y la gestión de hardware. Ofrece a empresas de todos los tamaños acceso a recursos tecnológicos de infraestructura sin necesidad de comprar, mantener ni gestionar una infraestructura local, lo que ha permitido que hasta la startup más pequeña disponga de acceso a una infraestructura de nivel empresarial y ha fomentado la innovación.