Iniciar sesión / Registrar Cuenta

Cloud computing

¿Qué es la arquitectura multiempresa?

Jump to section

La arquitectura multiempresa es una arquitectura de software en la que varios grupos de usuarios diferentes pueden utilizar una sola instancia de software; las ofertas de Software como servicio (SaaS) son un claro ejemplo.

En el ámbito del cloud computing, también puede referirse al hosting compartido, donde los recursos del servidor se dividen entre diferentes clientes.

La arquitectura multiempresa es lo contrario a aquellas con un solo propietario, donde una instancia de software o un sistema informático tienen un usuario o un grupo de usuarios exclusivo.

Del tiempo compartido al SaaS

El concepto de la arquitectura multiempresa ya tiene varias décadas. En los años sesenta, las universidades que tenían computadoras centrales potentes y costosas desarrollaron sistemas de software de tiempo compartido, los cuales permitían que varios usuarios accedieran al sistema al mismo tiempo.

La idea jamás desapareció, y hoy en día es lo que posibilita el cloud computing. La nube pública toma un conjunto de recursos compartidos (la capacidad de procesamiento y la memoria) y lo divide entre varios usuarios. Las cargas de trabajo de cada uno de ellos permanecen aisladas, incluso si se ejecutan en el mismo equipo físico o grupo de equipos.

Si ampliamos esta idea un poco más y la aplicamos a la arquitectura de software, obtenemos el concepto moderno de SaaS. Un proveedor de SaaS ejecuta una sola instancia de una aplicación y brinda acceso a los clientes individuales. Los datos de cada usuario permanecen aislados a pesar de que todos acceden al mismo software.

En el caso de una plataforma de organización en contenedores, como Kubernetes, la arquitectura multiempresa suele implicar un clúster individual que se utiliza en varios proyectos y que está configurado para que cada uno se ejecute independientemente de los demás.

Ventajas de la arquitectura multiempresa

La arquitectura multiempresa aporta muchos beneficios, los cuales explican la popularidad del cloud computing.

Permite ahorrar dinero. La informática resulta más económica a escala, y la arquitectura multiempresa permite consolidar y asignar los recursos de manera eficiente. Para un usuario individual, suele ser más rentable pagar el acceso a un servicio de nube o a una aplicación de SaaS que ejecutar el hardware y el software de un propietario único.

Brinda flexibilidad. Si invirtió en sus propios sistemas de hardware y software, es probable que alcancen su capacidad máxima en los momentos de mucha demanda o que permanezcan inactivos cuando haya poca. Sin embargo, una nube multiempresa puede asignar un grupo de recursos a los usuarios según sus necesidades aumenten o disminuyan. Si es cliente de un proveedor de nube pública, puede obtener más capacidad cuando la necesite, sin tener que pagar por ella cuando no la requiera.

Ofrece mayor eficiencia. Con la arquitectura multiempresa, los usuarios no tienen que ocuparse de gestionar la infraestructura ni realizar las tareas de actualización y mantenimiento. Los clientes individuales pueden delegar los trabajos rutinarios a un proveedor central de nube, en lugar de que sus propios equipos deban hacerse cargo.

Cuándo conviene la arquitectura de usuario único

Si bien la arquitectura multiempresa tiene muchas ventajas, los sistemas informáticos para un solo usuario son mejores para ciertos casos de uso.

El más destacado es el caso de las aplicaciones que involucran información sumamente confidencial. Los entornos de nube pública y los productos de SaaS están diseñados para aislar las cargas de trabajo y los datos, y tienen un historial de buen funcionamiento, pero los investigadores encontraron puntos vulnerables en las pruebas controladas que en teoría podrían dar lugar a ataques a las distintas empresas en los entornos de nube.

En la práctica, estos riesgos son relativamente pequeños. Los aspectos vulnerables de las arquitecturas compartidas son poco comunes y necesitan una gran destreza, según un informe sobre los puntos vulnerables de la nube, que realizó la Agencia de Seguridad Nacional (NSA) de Estados Unidos en 2020. Hasta ese momento, no se habían documentado ataques entre los distintos clientes de ningún proveedor importante de nube pública. La NSA considera que estos riesgos son menores que los derivados de un control deficiente del acceso y de los errores en la configuración.

Entornos multiempresa en Linux

Al momento de establecer un entorno multiempresa, se debe elegir si se va a aislar los entornos con máquinas virtuales (VM) o con contenedores.

En el caso de las VM, un hipervisor pone en marcha las máquinas guest con sus propias aplicaciones, dependencias y sistema operativo, y se asegura de que los usuarios estén aislados de los demás.

Los contenedores ofrecen un modelo más ligero, flexible y fácil de ampliar en comparación con las VM. Simplifican las implementaciones multiempresa al ejecutar varias aplicaciones en un solo host, y utilizan el kernel y el tiempo de ejecución del contenedor para ponerse en marcha. Las aplicaciones que se ejecutan en los contenedores comparten un kernel, incluso entre varios usuarios, a diferencia de las VM, donde cada una incluye el propio.

En Linux®, los espacios de nombres permiten que varios contenedores utilicen el mismo recurso a la vez, sin generar problemas. Asegurar un contenedor es como asegurar cualquier proceso en ejecución. 

Cuando se utiliza Kubernetes para la organización en contenedores, se pueden configurar los entornos multiempresa usando un solo clúster de Kubernetes. Es posible separar a los usuarios en sus propios espacios de nombre y crear políticas que aseguren su aislamiento.

Las herramientas que necesita para el cloud computing

Red Hat Enterprise Linux logo

Conserve los sistemas ligeros y ejecute sus contenedores de Linux con un sistema operativo optimizado y con un footprint mínimo.

Red Hat OpenStack Platform product logo

Infraestructura de nube que se ejecuta fuera del hardware estándar y le permite implementar las herramientas de nube privada que necesita y en el momento en que las necesita, todo desde un solo lugar.

Red Hat OpenShift product logo

Desarrolle, implemente y gestione sus contenedores a cualquier escala y en cualquier lugar.

Las nubes tienen mucho más que ofrecer