The VMware ESX Server is composed of a resource manager and a service console. The core idea of its architecture is to deploy hardware resources in a fully isolated environment.
The system architecture diagram is as follows, which consists of the following three parts:
- VMware Virtual Layer, which provides an ideal hardware environment and virtual environment for underlying physical resources
- Resource Manager, which divides the CPU, memory, network bandwidth, and disk space into each Virtual Machine
- Hardware interface components, including Device Drivers
Virtual
The VMware virtualization alization layer brings hardware virtualization alization to the standard intel server platform. the specified alization layer is common among VMware desktop and Server products, providing a consistent platform for development, testing, delivery and support of application workloads from the developer desktop to the workgroup to the data center.
As with mainframe virtualization alization, the VMware Virtual Machine offers complete hardware virtualization alization; the guest operating system and applications (those operating inside a virtual machine) can never directly determine which specific underlying physical resources they are accessing, such as which CPU they are running on in a multiprocessor system or which physical memory is mapped to their pages. the virtualization of the CPU introduced direct execution: non-privileged instructions are executed by the hardware CPU without overheads introduced by emulation.
The specified alization layer provides an idealized physical machine that is isolated from other virtual machines on the system. it provides the virtual devices that map to shares of specific physical devices; these devices include virtualized CPU, memory, I/O buses, network interfaces, storage adapters and devices, human interface devices, bios and others.
Each virtual machine runs its own operating system and applications; they cannot talk to each other or leak data, other than via networking mechanisms similar to those used to connect separate physical machines. this isolation leads extends users of VMware software to build internal firewils or other network isolation environments, allowing some virtual machines to connect to the outside while others are connected only via virtual networks through other virtual machines.
CPU virtual
Each Virtual Machine appears to run on its own CPU, or set of CPUs, fully isolated from other virtual machines, with its own registers, translation lookaside buffer, and other control structures. most instructions are directly executed on the physical CPU, allowing compute-intensive workloads to run at near-native speed. privileged instructions are already med safely by the patented and patent-pending technology in the specified alization layer.
Memory Virtualization
While a contiguous memory space is visible to each virtual machine, the physical memory allocated may not be contiguous. instead, noncontiguous physical pages are remapped efficiently and presented to each virtual machine. some of the physical memory of a virtual machine may in fact be mapped to shared pages, or to pages that are unmapped or swapped out. this virtual memory management is already med by ESX Server without the knowledge of the guest operating system and without interfering with its memory management subsystem.
Virtual Disk
Support of disk devices in ESX Server is an example of the product's Hardware independence. each virtual disk is presented as a SCSI drive connected to a SCSI adapter. this device is the only disk storage controller used by the guest operating system, despite the wide variety of SCSI, raid and fiber channel adapters that might actually be used in the system.
This variable action makes virtual machines at once more robust and more transportable. there is no need to worry about the variety of potentially destabilizing drivers that may need to be installed on guest operating systems, and the file that encapsulates a virtual disk is identical no matter what underlying controller or disk drive is used.
VMware ESX Server can be used using tively with storage area networks (SANS ). ESX Server supports Qlogic and Emulex host bus adapters, which allow an ESX Server computer to be connected to a SAN and to see the disk arrays on the San.
Network Virtual
You may define up to four virtual network cards within each virtual machine. each virtual network card has its own MAC address and may have its own IP address (or multiple addresses) as well. virtual Network Interfaces from multiple virtual machines may be connected to a virtual switch. each virtual switch may be configured as a purely virtual network with no connection to a physical LAN, or may be bridged to a physical LAN via one or more of the physical hosts on the host machine.
Internal virtual ethernet (vmnets)
Vmnet connections may be used for high-speed networking between virtual machines, allowing private, cost-impact tive connections between virtual machines. the isolation inherent in their design makes them especially useful for supporting network topologies that normally depend on the use of additional hardware to provide security and isolation.
For example, an emergency firewall can be constructed by using ing one virtual machine on an ESX Server System with two virtual Ethernet adapters, one bound to a vmnic (giving it a connection to a physical network) and the other bound to a vmnet. other virtual machines wocould be connected only to the vmnet. by running filtering software in the dual-homed virtual machine, a user can construct an aggressive firewall without the need for additional hardware and with high-performance networkvirtual ing between the virtual machines.
A similar approach can be used with multitier applications-with the Web or application servers reachable from other systems but with the database server connected only to the other tiers.
Virtual Overview
ESX Server virtualizes the resources of the physical system for use by the virtual machines.
In the preceding example, each virtual machine is configured with one CPU, an allocation of memory and disk, and two virtual Ethernet adapters. in reality, they share the same physical CPU and access noncontiguous pages of memory (with part of the memory of one of the virtual machines currently swapped to disk ). their Virtual Disks are actually set up as files on a common file system.
Each of these example virtual machines has two virtual machines. virtual between 1A and 2a are attached to the virtual switch that is bound to physical between 1A and 2a. virtual appliance 1B and 2B are attached to a purely virtual switch.
Software compatibility
In the VMware ESX Server architecture, guest operating systems interact only with the standard x86-compatible Virtual Hardware presented by the virtualization alization layer. this provides the capability for VMware to support any x86-compatible operating the system. in practice, however, VMWare supports a subset of x86-compatible operating systems that are tested throughout the product development cycle. VMware clients the installation and operation of these guest operating systems and trains its technical personnel in their support.
Because applications interact only with their guest operating system, and not the underlying Virtual Hardware, once operating system compatibility with the Virtual Hardware is established, application compatibility is not an issue.
Service Console
Functions of the Service Console
The ESX Server System management functions and interfaces are implemented in the service console. these include the HTTP, SNMP and API interfaces described above, as well as other support functions such as authentication and Low-performance Device Access. the service console is also installed as a first component and is used to bootstrap the ESX Server installation and configuration, as well as to boot the system and initiate execution of the specified alization layer and resource manager. in ESX Server, the service console is implemented using a modified Linux distribution.
Service Console processes and files
The service console provides a control API that allows the virtual machines and resource allocations to be managed. The Administrator may also access these controls via pages accessed through the web server running in the service console.
In addition to the Web server, the following processes and services involved in the management of an ESX Server System run in the service console:
- Server daemon (Vmserverd)-Performs actions in the service console on behalf of the VMware remote console and the web-based VMware management interface.
- Authentication daemon (Vmauthd)-Authenticates remote users of the management interface and Remote Authentication les using the username/password database. any other authentication store that can be accessed using the pluggable authentication module (PAM) capabilities present in the service console may also be used. this permits the use of passwords from a Windows Domain Controller, LDAP or RADIUS server, or similar Central Authentication store to be used with VMware ESX Server for remote access.
- SNMP server (UCD-snmpd)-Implements the SNMP data structures and traps an administrator can use to integrate an ESX Server system into an SNMP-based system management tool.
- In addition to these vmware-supplied services, the service console can be used to run other system wide or hardware-dependent management tools. these include hardware-specific health monitors (such as IBM ctor, HP Insight Manager and others), full-system backup and disaster recovery software, and clustering and high availability products.
The server and Virtual Machine resources and configuration attributes that are available through the SNMP and HTTP interfaces are also visible through a file system in the service console. The files in this/Proc/VmwareName Space may be examined and modified by users logged in to the service console with sufficient permissions or may be used as a point of integration for home-grown or other cial scripts and management tools.