Middleware en la nube
- 5 minutos
Middleware es un término general para software que sirve para "aglutinar" distintos programas independientes, a menudo complejos y ya existentes. El término middleware se usa en muchos contextos. Por ejemplo, en el contexto de un solo equipo, existe middleware entre el kernel del sistema operativo y los programas de aplicación en forma de interfaces API, que administran el acceso a recursos del sistema tales como los dispositivos de hardware. En las aplicaciones web, el middleware se suele ubicar en la canalización de procesamiento de solicitudes y proporciona servicios tales como la autenticación y el enrutamiento de solicitudes.
Middleware en la nube hace referencia a la plataforma de software que controla y coordina diferentes servicios en la nube y permite que los usuarios emitan solicitudes de servicio y que los proveedores de la nube gestionen su infraestructura. El middleware en la nube se compone de varias capas de abstracción que ocultan la complejidad del sistema y permiten la comunicación entre varias aplicaciones, servicios y dispositivos que forman parte de un servicio en la nube (Figura 2.3).
Figura 2.3: Características de middleware en la nube.
Características de middleware en la nube
Hay una serie de características distintas e importantes que proporciona el middleware en la nube, cada una de las cuales tiene sus propias ventajas. Algunas de las responsabilidades más importantes de una pila de middleware en la nube son las siguientes:
Interoperabilidad: el middleware en la nube es el "pegamento" que permite que varias aplicaciones y servicios distintos se conecten y se comuniquen entre sí. En concreto, el middleware conecta distintos servicios de aplicación con distintas API entre sí. Por ejemplo, para aprovisionar una máquina virtual, las API del servicio en la nube actúan como middleware para los servicios de aprovisionamiento en la nube al tomar instrucciones de un programa y traducirlas en llamadas de servicio que el servicio de aprovisionamiento en la nube puede entender. Estas instrucciones se pasan además a la pila de middleware en el extremo del proveedor de servicios en la nube para realizar acciones, como crear máquinas virtuales, asignar espacio en disco o crear una tabla de base de datos.
Administración de virtualización: el middleware en la nube también es responsable de la configuración, asignación, creación, administración y destrucción de recursos virtualizados de recursos físicos. Por ejemplo, cuando un proveedor de servicios en la nube recibe una solicitud de un cliente para aprovisionar una máquina virtual, controla esa solicitud a través de varias capas de middleware hasta que llega a una capa de hipervisor, que controla la configuración y asignación de una máquina virtual para el cliente.
Asignación y programación de recursos: como se ha descrito anteriormente, un aspecto importante del middleware en la nube es la administración de recursos. Como parte de esta responsabilidad, el middleware debe administrar la asignación y programación de varios tipos de recursos con el fin de lograr varios objetivos tales como el rendimiento, el aislamiento, el uso, etc.
Equilibrio de carga y tolerancia a errores: los proveedores de servicios en la nube deben usar mecanismos adecuados de equilibrio de carga en su middleware para optimizar la distribución de la carga en varios servicios back-end e infraestructura física. El middleware también debe coordinarse con los recursos back-end para proporcionar tolerancia a errores de un extremo a otro, de modo que la disponibilidad de los servicios para el cliente cumpla los SLO necesarios.
Supervisión de recursos: una responsabilidad fundamental del middleware es la supervisión de los recursos. La supervisión proporciona un origen de datos que es valioso para las características internas de middleware tales como la asignación, la programación, el equilibrio de carga y la tolerancia a errores, tal y como se indicó anteriormente. Además, los datos de los sistemas de supervisión pueden ponerse a disposición de los clientes, lo que les proporciona visibilidad adicional sobre el estado de sus aplicaciones y los recursos aprovisionados.
Administración y seguridad de usuarios: el middleware en la nube también debe proporcionar compatibilidad con el control de acceso y emplear prácticas de seguridad estándar para la administración de varios tipos de credenciales que controlan el acceso a recursos individuales. El sistema de administración de usuarios en el middleware debe proporcionar características que permitan a los clientes en la nube crear y destruir entidades como usuarios y grupos, y configurar las listas de control de acceso (ACL) que definen los recursos a los que usuarios y grupos individuales tienen acceso.
Interfaz de usuario y API: por último, el middleware en la nube debe poner a disposición un conjunto de API orientadas al cliente. También es normal que el middleware de la nube proporcione interfaces fáciles de utilizar (normalmente en forma de interfaces web), donde los clientes pueden iniciar sesión y administrar sus recursos aprovisionados y realizar solicitudes de servicio.
Comprobar los conocimientos
Comentarios
¿Le ha resultado útil esta página?
No
¿Necesita ayuda con este tema?
¿Desea intentar usar Ask Learn para aclarar o guiarle a través de este tema?