Contenedores son un competidor serio y emergente como método de entrega de aplicaciones. Aunque todavía no se utilizan universalmente, la mayoría de las empresas han implementado contenedores en algún lugar o están investigando sus capacidades.

Sus ventajas se centran en la capacidad de abstraer todo lo necesario para ejecutar aplicaciones fuera del hardware, y con la posibilidad de que muchas, muchísimas, de hecho, instancias de contenedores se creen y ejecuten bajo demanda, son sumamente escalables.

Por supuesto, muy a menudo agrupaciones de contenedores y orquestación se ejecutan en entornos de servidor virtual, pero no es necesario. También pueden funcionar directamente metal básico servidores. En este artículo, analizaremos las máquinas virtuales (VM) bare metal y dónde ejecutar los contenedores.

Ejecución de contenedores: ¿bare metal o VM?

Los contenedores son una forma de virtualización, pero en la que la aplicación y todos los microservicios necesarios para su ejecución, se ejecutan en la parte superior del sistema operativo del servidor host, con solo el motor de tiempo de ejecución del contenedor entre los dos. Entornos de servidor virtualizados, mientras tanto, vea cómo se ejecuta el hipervisor en el host sistema operativo, con sistemas operativos invitados en la parte superior y aplicaciones que se ejecutan en esos entornos.

La mayoría de las preguntas sobre si ejecutar contenedores en máquinas virtuales o en bare metal se derivan de este hecho básico.

Decisiones clave: rendimiento frente a conveniencia, quizás también costo

La decisión de implementar o no centros de infraestructura de contenedores depende de los requisitos de rendimiento frente a la conveniencia. Es mucho más conveniente correr orquestadores de contenedores y sus nodos en máquinas virtuales, pero perderá algo de rendimiento. Dicho esto, si desea obtener los beneficios de rendimiento de bare metal, probablemente necesite ejecutar su propio entorno local y estar preparado para hacer el trabajo necesario para compensar la conveniencia que brinda el entorno de hipervisor.

Además, el costo puede influir en las cosas. Debido a que los servidores bare metal pueden ejecutar un sistema operativo Linux ligero (como SO central o sus descendientes), evitan gran parte del costo de las licencias de hipervisor. Por supuesto, eso también significa que se pierden las funciones avanzadas disponibles en los entornos de virtualización.

Beneficios y penalizaciones de la virtualización

Poner una capa de virtualización encima del SO anfitrión significa agregar una capa de software al entorno, lo que trae tanto beneficios como penalizaciones.

En un entorno de virtualización, el hipervisor aporta mucha funcionalidad y permite maximizar la utilización del hardware.

Los beneficios clave aquí son que las cargas de trabajo se pueden migrar entre hosts fácilmente, incluso cuando no comparten el mismo sistema operativo de host subyacente. Eso es algo útil especialmente para los contenedores, que son deseables por su portabilidad entre ubicaciones, pero dependen del sistema operativo en el que fueron incorporados. El uso de un panorama de virtualización particular proporcionará un entorno de software consistente en el que ejecutar aplicaciones en contenedores incluso si el El sistema operativo del host es diferente.

Pero al mismo tiempo, todos los aspectos de la virtualización que aportan beneficios también conllevan sanciones. Eso se basa en el hecho de que sus recursos físicos simplemente tienen que hacer más computación debido a las capas adicionales de abstracción.

Eso es más claramente visible en la diferencia de rendimiento entre los contenedores que se ejecutan en entornos completos y virtualizados. Pruebas de evaluación comparativa realizado por Stratoscale descubrió que los contenedores en bare metal funcionaban entre un 25% y un 30% mejor que en las máquinas virtuales, debido a la sobrecarga de rendimiento de la virtualización.

Mientras tanto, los entornos de VM tienden a tener recursos, como el almacenamiento asignado al inicio, que permanecen aprovisionados para ellos. Diamanti, que proporciona una plataforma de Kubernetes destinada a su uso en bare metal y en la nube, la utilización de recursos de afirmaciones puede ser tan baja como un 15% en entornos virtualizados y que puede reducir el uso de hardware en 5 veces.

A pesar de las ventajas de rendimiento inherentes del bare metal sobre la complejidad añadida de la virtualización, VMware, con su Tanzu La plataforma Kubernetes, ha realizado esfuerzos para mitigar los gastos generales.

Desventajas del metal desnudo

Habiendo dicho todo eso, existen desventajas en los contenedores sobre metal desnudo.

Entre ellos, la clave es que los entornos de contenedores dependen del sistema operativo, por lo que uno creado para Linux solo se ejecutará en Linux, por ejemplo. Eso potencialmente pondrá límites a la migración y puede funcionar en su contra en la nube, donde el bare metal es limitado y donde puede encontrarlo, cuesta más. Dado que una de las ventajas clave de los contenedores es poder migrar cargas de trabajo entre sitios locales y la nube, eso no es una buena noticia.

Las implementaciones de contenedores bare metal también carecerán de características que vienen con capas de software de virtualización, como reversión e instantáneas.

La implementación de contenedores en bare metal también puede dificultar la mitigación del riesgo mediante la redundancia. Las máquinas virtuales le permiten dividir potencialmente los nodos entre ellos, mientras que cuando los nodos de contenedor se instalan en el metal desnudo, es probable que haya menos de ellos y serán menos portátiles y menos compartibles.

Leave a Reply

Your email address will not be published. Required fields are marked *