VMware ESXi

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]

Arquitectura

[editar]

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).

Interfaz al hardware

[editar]

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]

  1. net/e100
  2. net/e1000
  3. net/e1000e
  4. net/bnx2
  5. net/tg3
  6. net/forcedeth
  7. net/pcnet32
  8. block/cciss
  9. scsi/adp94xx
  10. scsi/aic7xxx
  11. scsi/aic79xx
  12. scsi/ips
  13. scsi/lpfcdd-v732
  14. scsi/megaraid2
  15. scsi/mptscsi_2xx
  16. scsi/qla2200-v7.07
  17. scsi/megaraid_sas
  18. scsi/qla4010
  19. scsi/qla4022
  20. scsi/vmkiscsi
  21. scsi/aacraid_esx30
  22. scsi/lpfcdd-v7xx
  23. scsi/qla2200-v7xx

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]

Consola de servicio

[editar]

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.

Pantalla púrpura de la muerte

[editar]
Una pantalla de diagnóstico púrpura como se ve en VMware ESX Server 3.0

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.

Versiones

[editar]

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:

  • VMware ESXi instalable
  • Edición integrada de VMware 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.

Demanda por violación de la GPL

[editar]

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]

Productos relacionados o adicionales

[editar]

Los siguientes productos funcionan junto con ESX:

  • vCenter Server, permite monitorear y administrar múltiples servidores ESX, ESXi y GSX. Además, los usuarios deben instalarlo para ejecutar servicios de infraestructura como:
    • vMotion (transferencia de máquinas virtuales entre servidores sobre la marcha mientras se están ejecutando, sin tiempo de inactividad)[32][33]
    • svMotion, también conocido como Storage vMotion (transferencia de máquinas virtuales entre LUN de almacenamiento compartido sobre la marcha, sin tiempo de inactividad)[34]
    • vMotion mejorado, también conocido como evMotion (vMotion y svMotion simultáneos, compatibles con la versión 5.1 y posteriores)
    • Distributed Resource Scheduler (DRS) (vMotion automatizado basado en los requisitos/demandas de carga del host/VM)
    • Alta disponibilidad (HA) (reinicio de sistemas operativos invitados de máquinas virtuales en caso de falla física del host ESX)
    • Fault Tolerance (FT) (conmutación por error con estado casi instantáneo de una VM en el caso de una falla física del host)[35]
  • Converter, permite a los usuarios crear máquinas virtuales compatibles con VMware ESX Server o Workstation a partir de máquinas físicas o de máquinas virtuales creadas por otros productos de virtualización. Converter reemplaza los productos VMware "P2V Assistant" e "Importer": P2V Assistant permitía a los usuarios convertir máquinas físicas en máquinas virtuales e Importer permitía importar máquinas virtuales de otros productos a VMware Workstation.
  • vSphere Client (anteriormente VMware Infrastructure Client), permite monitorear y administrar una sola instancia del servidor ESX o ESXi. Después de ESX 4.1, vSphere Client ya no estaba disponible desde el servidor ESX/ESXi, pero debe descargarse del sitio web de VMware.

Cisco Nexus 1000v

[editar]

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]

Herramientas de administración de terceros

[editar]

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]

Limitaciones conocidas

[editar]

A partir de septiembre de 2020, estas son las limitaciones conocidas de VMware ESXi 7.0 U1.

Limitaciones de infraestructura

[editar]

Algunos máximos en ESXi Server 7.0 pueden influir en el diseño de los centros de datos:[45][46]

  • RAM máxima del sistema invitado: 24 TB
  • RAM máxima del sistema host: 24 TB
  • Número de hosts en un clúster de programador de recursos distribuidos o de alta disponibilidad: 96
  • Número máximo de procesadores por máquina virtual: 768
  • Número máximo de procesadores por host: 768
  • Número máximo de CPU virtuales por núcleo de CPU físico: 32
  • Número máximo de máquinas virtuales por host: 1024
  • Número máximo de CPU virtuales por máquina virtual tolerante a fallas: 8
  • RAM máxima del sistema invitado por máquina virtual tolerante a fallas: 128 ES
  • Tamaño máximo de volumen de VMFS5: 64 TB, pero el tamaño máximo de archivo es de 62 TB -512 bytes
  • Memoria máxima de video por máquina virtual: 4 GB

Limitaciones de rendimiento

[editar]

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.

Limitaciones de red

[editar]

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]

  • 64 hosts ESX/ESXi por VSM (módulo supervisor virtual)
  • 2048 interfaces Ethernet virtuales por VMware vDS (conmutador distribuido virtual)
  • y un máximo de 216 interfaces virtuales por host ESX/ESXi
  • 2048 VLAN activas (una que se usará para la comunicación entre VEM y VSM)
  • 2048 perfiles de puerto
  • 32 NIC físicas por host ESX/ESXi (físico)
  • 256 canales de puerto por VMware vDS (conmutador distribuido virtual)
  • y un máximo de 8 canales de puerto por host ESX/ESXi

Limitaciones de la estructura de canal de fibra

[editar]

Independientemente del tipo de adaptador SCSI virtual utilizado, existen estas limitaciones:[48]

  • Máximo de 4 adaptadores SCSI virtuales, uno de los cuales debe estar dedicado al uso del disco virtual
  • Máximo de 64 LUN SCSI por adaptador

Véase también

[editar]

Referencias

[editar]
  1. «ESX Server Architecture». VMware. Archivado desde el original el 7 de noviembre de 2009. Consultado el 22 de octubre de 2009. 
  2. VMware:vSphere ESX and ESXi Info Center
  3. «What does ESX stand for?». Archivado desde el original el 20 de diciembre de 2014. Consultado el 3 de octubre de 2014. 
  4. «Glossary». Developer’s Guide to Building vApps and Virtual Appliances: VMware Studio 2.5. Palo Alto: VMware. 2011. Consultado el 9 de noviembre de 2011. 
  5. «Did you know VMware Elastic Sky X (ESX) was once called 'Scaleable Server'?». UP2V (en inglés estadounidense). 12 de mayo de 2014. Archivado desde el original el 10 de junio de 2019. Consultado el 9 de mayo de 2018. 
  6. «VMware ESXi was created by a French guy !!! | ESX Virtualization». ESX Virtualization (en inglés estadounidense). 26 de septiembre de 2009. Consultado el 9 de mayo de 2018. 
  7. "ESX Server Datasheet"
  8. «ESX Server Architecture». Vmware.com. Archivado desde el original el 29 de septiembre de 2007. Consultado el 1 de julio de 2009. 
  9. «ESX machine boots». Video.google.com.au. 12 de junio de 2006. Archivado desde el original el 15 de noviembre de 2022. Consultado el 1 de julio de 2009. 
  10. «VMKernel Scheduler». vmware.com. 27 de mayo de 2008. Consultado el 10 de marzo de 2016. 
  11. Mike, Foley. «It's a Unix system, I know this!». VMware Blogs. VMware. 
  12. «Support for 64-bit Computing». Vmware.com. 19 de abril de 2004. Archivado desde el original el 2 de julio de 2009. Consultado el 1 de julio de 2009. 
  13. VMware ESX
  14. «VMware ESX Server 2: NUMA Support». Palo Alto, California: VMware Inc. 2005. Consultado el 29 de marzo de 2011. «SRAT (system resource allocation table) – table that keeps track of memory allocated to a virtual machine.» 
  15. a b c «ESX Server Open Source». Vmware.com. Consultado el 1 de julio de 2009. 
  16. «ESX Hardware Compatibility List». Vmware.com. 10 de diciembre de 2008. Consultado el 1 de julio de 2009. 
  17. «ESXi vs. ESX: A comparison of features». Vmware, Inc. Consultado el 1 de junio de 2009. 
  18. "KB: Decoding Machine Check Exception (MCE) output after a purple diagnostic screen |publisher=VMware, Inc."
  19. VMware KBArticle Windows 8/Windows 2012 doesn't boot on ESX Archivado el 12 de agosto de 2017 en Wayback Machine., visited 12 September 2012
  20. «Download VMware vSphere Hypervisor (ESXi)». www.vmware.com. Consultado el 22 de julio de 2014. 
  21. «Getting Started with ESXi Installable». VMware. Consultado el 22 de julio de 2014. 
  22. «VMware ESX and ESXi 4.1 Comparison». Vmware.com. Consultado el 9 de junio de 2011. 
  23. «What do ESX and ESXi stand for?». VM.Blog. 31 de agosto de 2011. Consultado el 21 de junio de 2016. «Apparently, the 'i' in ESXi stands for Integrated, probably coming from the fact that this version of ESX can be embedded in a small bit of flash memory on the server hardware.» 
  24. Andreas Peetz. «ESXi embedded vs. ESXi installable FAQ». Consultado el 11 de agosto de 2014. 
  25. «Free VMware ESXi: Bare Metal Hypervisor with Live Migration». VMware. Consultado el 1 de julio de 2009. 
  26. «Conservancy Announces Funding for GPL Compliance Lawsuit». sfconservancy.org. 5 de marzo de 2015. Consultado el 27 de agosto de 2015. 
  27. «Copyleft Compliance Projects - Software Freedom Conservancy». Sfconservancy.org. 25 de mayo de 2018. Consultado el 7 de febrero de 2020. 
  28. «Hellwig To Appeal VMware Ruling After Evidentiary Set Back in Lower Court». 9 de agosto de 2016. Archivado desde el original el 14 de enero de 2020. 
  29. «Klage von Hellwig gegen VMware erneut abgewiesen». 1 de marzo de 2019. 
  30. «VMware's Update to Mr. Hellwig's Legal Proceedings». Vmware.com. Consultado el 7 de febrero de 2020. 
  31. «Press release». bombadil.infradead.org. 2019. Archivado desde el original el 3 de mayo de 2020. Consultado el 7 de febrero de 2020. 
  32. VMware Blog by Kyle Gleed: vMotion: what's going on under the covers, 25 February 2011, visited: 2 February 2012
  33. VMware website vMotion brochure .
  34. «Archived copy». www.vmware.com. Archivado desde el original el 28 de diciembre de 2009. Consultado el 17 de enero de 2022. 
  35. «Archived copy». www.vmware.com. Archivado desde el original el 21 de noviembre de 2010. Consultado el 17 de enero de 2022. 
  36. a b Overview of the Nexus 1000v virtual switch, visited 9 July 2012
  37. VMware continues virtualization market romp, 18 April 2012.
  38. About Veeam, visited 9 July 2012
  39. Veeam OpenView plugin for VMware, visited 9 July 2012
  40. OpenManage (omsa) support for ESXi 5.0, visited 9 July 2012
  41. VMware info about Web Client – VMware ESXi/ESX 4.1 and ESXi 5.0 Comparison
  42. Availability of vSphere Client for Linux systems – What the web client can do and what not
  43. vEMan website vEMan – Linux vSphere client
  44. Petri website 3rd party ESX tools, 23 December 2008.
  45. https://blogs.vmware.com/vsphere/2020/09/whats-new-with-vmware-vsphere-7u1.html
  46. «VMware Configuration Maximum tool». 
  47. «Performance of VMware VMI». VMware, Inc. 13 de febrero de 2008. Consultado el 22 de enero de 2009. 
  48. «vSphere 6.7 Configuration Maximums». VMware Configuration Maximum Tool. VMware. Consultado el 12 de julio de 2019.