VMware ESX | ||
---|---|---|
Información general | ||
Tipo de programa | Hipervisor | |
Desarrollador | VMware | |
Versiones | ||
Última versión estable | ESXi 8.0 IA11 de octubre de 2022 | |
Enlaces | ||
VMware ESXi (anteriormente ESX) es un hipervisor tipo 1 de clase empresarial desarrollado por VMware para implementar y servir computadoras virtuales. Como hipervisor tipo 1, ESXi no es una aplicación de software que se instala en un sistema operativo (SO); en cambio, incluye e integra componentes vitales del sistema operativo, como un kernel, VMkernel.[1]
Después de la versión 4.1 (lanzada en 2010), VMware cambió el nombre de ESX a ESXi. ESXi reemplaza la consola de servicio (un sistema operativo rudimentario) con un sistema operativo más integrado. ESX/ESXi es el componente principal del paquete de software VMware Infrastructure.[2]
El nombre ESX se originó como una abreviatura de Elastic Sky X.[3][4] En septiembre de 2004, el reemplazo de ESX se llamó internamente VMvisor, pero luego se cambió a ESXi (ya que la "i" en ESXi significaba "integrado").[5][6]
ESXi se ejecuta en bare metal (sin ejecutar un sistema operativo por encima)[7] a diferencia de otros productos de VMware.[8] Incluye su propio kernel. En el histórico VMware ESX, primero se inició un kernel de Linux[9] y luego se usó para cargar una variedad de componentes de virtualización especializados, incluido ESX, que también se conoce como el componente vmkernel.[10] El kernel de Linux era la máquina virtual principal; fue invocado por la consola de servicio. En tiempo de ejecución normal, vmkernel se ejecutaba en la computadora básica y la consola de servicio basada en Linux se ejecutaba como la primera máquina virtual. VMware abandonó el desarrollo de ESX en la versión 4.1 y ahora usa ESXi, que no incluye un kernel de Linux en absoluto.[11]
El vmkernel es un microkernel[12] con tres interfaces: hardware, sistemas invitados y la consola de servicio (Console OS).
El vmkernel maneja la CPU y la memoria directamente, utilizando el escaneo antes de la ejecución (SBE) para manejar instrucciones de CPU especiales o privilegiadas[13] y la SRAT (tabla de asignación de recursos del sistema) para rastrear la memoria asignada.[14]
El acceso a otro hardware (como red o dispositivos de almacenamiento) se realiza mediante módulos. Al menos algunos de los módulos se derivan de módulos utilizados en el kernel de Linux. Para acceder a estos módulos, un módulo adicional llamado vmklinux
implementa la interfaz del módulo Linux. Según el archivo README, "Este módulo contiene la capa de emulación de Linux utilizada por vmkernel".[15]
vmkernel utiliza los controladores de dispositivo:[15]
Estos controladores en su mayoría equivalen a los descritos en la lista de compatibilidad de hardware de VMware.[16] Todos estos módulos están bajo la licencia GPL. Los programadores los han adaptado para que se ejecuten con vmkernel: VMware Inc. ha cambiado la carga de módulos y algunas otras cosas menores.[15]
En ESX (y no en ESXi), la Consola de servicio es un sistema operativo vestigial de uso general que se usa principalmente como arranque para el kernel de VMware, vmkernel y, en segundo lugar, como interfaz de administración. Ambas funciones del sistema operativo de la consola están en desuso a partir de la versión 5.0, ya que VMware migra exclusivamente al modelo ESXi.[17] La Consola de servicio, para todos los efectos, es el sistema operativo utilizado para interactuar con VMware ESX y las máquinas virtuales que se ejecutan en el servidor.
En caso de un error de hardware, vmkernel puede detectar una excepción de verificación de máquina.[18] Esto da como resultado un mensaje de error que se muestra en una pantalla de diagnóstico de color púrpura. Esto se conoce coloquialmente como pantalla de diagnóstico púrpura o pantalla púrpura de la muerte.
Al mostrar una pantalla de diagnóstico púrpura, vmkernel escribe información de depuración en la partición de volcado del núcleo. El soporte de VMware puede utilizar esta información, junto con los códigos de error que se muestran en la pantalla de diagnóstico morada, para determinar la causa del problema.
VMware ESX ha estado disponible en dos tipos principales: ESX y ESXi, aunque desde la versión 5 solo se continúa con ESXi.
ESX y ESXi anteriores a la versión 5.0 no son compatibles con invitados Windows 8/Windows 2012. Estos sistemas operativos de Microsoft solo pueden ejecutarse en ESXi 5.x o posterior.[19]
VMware ESXi, una versión más pequeña de ESX, no incluye la consola de servicio de ESX. Está disponible, sin necesidad de comprar una licencia de vCenter, como descarga gratuita de VMware, con algunas funciones deshabilitadas.[20][21][22]
ESXi significa "ESX integrado".[23]
VMware ESXi se originó como una versión compacta de VMware ESX que permitía una huella de disco de 32 MB en el host. Con una consola de configuración simple para la configuración de red principalmente y una interfaz de cliente de infraestructura de VMware basada en remoto, esto permite que se dediquen más recursos a los entornos invitados.
Existen dos variaciones de ESXi:
Se puede usar el mismo medio para instalar cualquiera de estas variaciones según el tamaño del medio de destino.[24] Se puede actualizar ESXi a VMware Infrastructure 3[25] o a VMware vSphere 4.0 ESXi.
Originalmente llamado VMware ESX Server ESXi edition, a través de varias revisiones, el producto ESXi finalmente se convirtió en VMware ESXi 3. Luego siguieron nuevas ediciones: ESXi 3.5, ESXi 4, ESXi 5 y (a 2015) ESXi 6.
VMware ha sido demandado por Christoph Hellwig, un desarrollador del kernel de Linux. La demanda comenzó el 5 de marzo de 2015. Se alegó que VMware se había apropiado indebidamente de partes del kernel de Linux,[26][27] y, luego de una desestimación por parte del tribunal en 2016, Hellwig anunció que presentaría una apelación.[28]
La apelación se decidió en febrero de 2019 y nuevamente fue desestimada por el tribunal alemán, sobre la base de no cumplir con los "requisitos procesales para la carga de la prueba del demandante".[29]
En la última etapa de la demanda en marzo de 2019, el Tribunal Regional Superior de Hamburgo también rechazó la demanda por motivos de procedimiento. Después de esto, VMware anunció oficialmente que eliminaría el código en cuestión.[30] Esto siguió con Hellwig retirando su caso y reteniendo más acciones legales.[31]
Los siguientes productos funcionan junto con ESX:
La conectividad de red entre los hosts ESX y las máquinas virtuales que se ejecutan en él se basa en NIC virtuales (dentro de la máquina virtual) y conmutadores virtuales. Este último existe en dos versiones: el vSwitch 'estándar' que permite que varias máquinas virtuales en un solo host ESX compartan una NIC física y el 'vSwitch distribuido' donde los vSwitches en diferentes hosts ESX juntos forman un conmutador lógico. Cisco ofrece en su línea de productos Cisco Nexus el Nexus 1000v, una versión avanzada del vSwitch distribuido estándar. Un Nexus 1000v consta de dos partes: un módulo supervisor (VSM) y, en cada host ESX, un módulo Ethernet virtual (VEM). El VSM se ejecuta como un dispositivo virtual dentro del clúster ESX o en hardware dedicado (serie Nexus 1010) y el VEM se ejecuta como un módulo en cada host y reemplaza un dvS (conmutador virtual distribuido) estándar de VMware.
La configuración del conmutador se realiza en el VSM utilizando la CLI estándar de NX-OS. Ofrece capacidades para crear perfiles de puerto estándar que luego se pueden asignar a máquinas virtuales mediante vCenter.
Hay varias diferencias entre el dvS estándar y el N1000v; una es que el conmutador de Cisco generalmente tiene soporte completo para tecnologías de red, como la agregación de enlaces LACP, o que el conmutador de VMware admite nuevas funciones, como el enrutamiento basado en la carga física de la NIC. Sin embargo, la principal diferencia radica en la arquitectura: Nexus 1000v funciona de la misma manera que un conmutador Ethernet físico, mientras que dvS depende de la información de ESX. Esto tiene consecuencias, por ejemplo, en la escalabilidad, donde el límite de Kappa para un N1000v es de 2048 puertos virtuales frente a 60000 para un dvS.
El Nexus1000v se desarrolla en cooperación entre Cisco y VMware y utiliza la API de dvS.[36]
Debido a que VMware ESX es líder en el mercado de virtualización de servidores,[37] los proveedores de software y hardware ofrecen una variedad de herramientas para integrar sus productos o servicios con ESX. Algunos ejemplos son los productos de Veeam Software con aplicaciones de respaldo y administración[38] y un complemento para monitorear y administrar ESX usando HP OpenView,[39] Quest Software con una gama de aplicaciones de administración y respaldo y la mayoría de los principales proveedores de soluciones de respaldo tienen complementos. o módulos para ESX. El uso de Microsoft Operations Manager (SCOM) 2007/2012 con un paquete de administración ESX de Bridgeways brinda al usuario una vista del estado del centro de datos ESX en tiempo real.
Los proveedores de hardware, como Hewlett Packard Enterprise y Dell, incluyen herramientas para respaldar el uso de ESX(i) en sus plataformas de hardware. Un ejemplo es el módulo ESX para la plataforma de administración OpenManage de Dell.[40]
VMware agregó un cliente web[41] desde v5, pero funcionará solo en vCenter y no contiene todas las funciones.[42] vEMan[43] es una aplicación de Linux que intenta llenar ese vacío. Estos son solo algunos ejemplos: existen numerosos productos de terceros para administrar, monitorear o respaldar infraestructuras ESX y las máquinas virtuales que se ejecutan en ellas.[44]
A partir de septiembre de 2020, estas son las limitaciones conocidas de VMware ESXi 7.0 U1.
Algunos máximos en ESXi Server 7.0 pueden influir en el diseño de los centros de datos:[45][46]
En términos de rendimiento, la virtualización impone un costo en el trabajo adicional que debe realizar la CPU para virtualizar el hardware subyacente. Las instrucciones que realizan este trabajo adicional y otras actividades que requieren virtualización tienden a estar en las llamadas al sistema operativo. En un sistema operativo no modificado, las llamadas al sistema operativo introducen la mayor parte de los "gastos generales" de virtualización.[cita requerida]
La paravirtualización u otras técnicas de virtualización pueden ayudar con estos problemas. VMware desarrolló la interfaz de máquina virtual para este propósito y los sistemas operativos seleccionados actualmente lo admiten. Una comparación entre la virtualización completa y la paravirtualización para el servidor ESX[47] muestra que, en algunos casos, la paravirtualización es mucho más rápida.
Cuando se utilizan las capacidades de red avanzadas y extendidas mediante el conmutador virtual distribuido Cisco Nexus 1000v, se aplican las siguientes limitaciones relacionadas con la red:[36]
Independientemente del tipo de adaptador SCSI virtual utilizado, existen estas limitaciones:[48]