¿VM con sistema operativo compartido versus entorno sandboxing?

¿VM con sistema operativo compartido versus entorno sandboxing?

Si necesito N máquinas virtuales ejecutando el mismo sistema operativo, esto simplemente significa que necesito instalar estas N máquinas y luego también tener que encargarme de sus actualizaciones, etc., etc.

¿Es posible tener solo una máquina virtual como base que tenga el sistema operativo instalado, por lo que solo necesitaría actualizar un sistema operativo de VM y el resto usaría esta VM base para instalar otro software que necesiten? Esto significa que la base de actualización los actualizaría a todos.

Pregunta 1:¿Es esto posible/factible?

Si esto no es posible, ¿es posible tener un sistema operativo host y luego simplemente virtualizarlo por completo?entornos, de modo que ejecutar un entornocomenzaruna zona de pruebas virtualizada en el host para instalar y utilizar aplicaciones relacionadas con el entorno. Esto también significaría que solo tendría que ocuparme del sistema operativo host y que todos los entornos sandbox obtendrían el sistema operativo actualizado. Si esto es posible, ¿también es posible ejecutar varios entornos limitados simultáneamente?

Pregunta 2:¿Es posible el entorno sandboxing en la medida en que realmente no interfiera con el sistema operativo host? Para que no tenga ningún impacto en las aplicaciones que no están en la zona de pruebas que se ejecutan en el host.

Nota: Solo estoy familiarizado con las máquinas virtuales VMWare Workstation/VirtualBox, que están separadas del sistema operativo en términos de mantenimiento. Nunca he usado ni investigado nada más.

Respuesta1

Existe un espectro de métodos de virtualización/aislamiento e implementación, por lo que todo es posible.

Implementación de plantilla de máquina virtual

A menudo, un host se actualiza localmente después de implementarlo desde una plantilla de imagen maestra. Es posible que tenga un disco de servidor web genérico, pero digamos web2que ha instalado una determinada versión del sitio web. La actualización desde la plantilla debe preservar esa personalización. Tal vez puedas mantener los datos en discos separados, o volverte muy bueno reimplementando tu aplicación, o lo que sea.

Una alternativa es mantener dos entornos de producción, actualizar el pasivo y pasar a él. Esto a veces se llamadespliegue azul verde. La próxima versión puede consistir en máquinas virtuales recién clonadas con un sistema operativo actualizado si lo desea. O contenedores recién desplegados. Lo que nos lleva a...

Contenedores

En cuanto al sandboxing, los contenedores son buenos para aislar procesos en un núcleo de sistema operativo y recursos de hardware compartidos. Un contenedor liviano no tiene acceso a los recursos de otro y usted puede ejecutar muchos de ellos. Sin embargo, ser compartido significa que una falla de hardware o un pánico en el kernel pueden hacer caer todos los contenedores. No ha especificado qué sistema operativo, pero el concepto se implementa en muchas tecnologías de aislamiento: zonas Solaris, cárceles BSD, WPAR AIX, contenedores Windows, contenedores Linux.

Es posible que haya que mantener algunos componentes del sistema operativo en un contenedor, según la tecnología. Pero generalmente no, suelen ser programas livianos y solo de espacio de usuario para la aplicación.

Respuesta2

Responda a su primera pregunta: puede crear máquinas virtuales instantáneamente manteniendo plantillas. Es posible en cualquier hipervisor.

Ejemplo:https://www.starwindsoftware.com/blog/automate-the-hyper-v-virtual-machine-deployment-with-powershell

Pero debe administrar los sistemas operativos (anfitrión e invitados) por separado.

información relacionada