VMware is a California based company established in 1998 that develops virtualization platform for IT infrastructure. VMware is well known for its vSphere VMware Hypervisor. VMware Hypervisor enables virtualization for any architecture. IT experts from five different fields developed VMware software in the year 1998. VMware develops various types of application softwares related to virtualization, and is now one among the leading providers of virtualization software.
Vmware formally launched their first product “VMware Workstation” around 1999. Later they came up with server application called “VMware GSX Server” in 2001. The company started launching additional products related to virtualization. Since then, more products have been added to their inventory. Their products are categorised into two types.
Desktop applications: Some of the desktop applications of VMware are Horizon 7, Horizon Apps, Horizon FLEX, Horizon cloud on Microsoft Azure, Horizon cloud with Hosted Infrastructure, etc.
Server applications: Some of the server side application softwares are Rails, Microsoft .NET Framework, Microsoft IIS with .NET Framework on Windows Server, JBoss for both windows and Linux, vFabric tc Server, etc.
VMware is a cloud computing and virtualization software. The base for VMware virtualization technologies is its bare-metal hypervisor ESX/ESXi in x86 architecture. A hypervisor is setup on the server (physical) to allow several virtual machines to run on the same VMware server virtualization. All virtual machines can run their own operating system (OS). Multiple virtual machines on the same physical server share some of the common resources like RAM, network, etc.
VMware software is now commonly used in virtualized storage and networking, cloud management services, private data centers, as a desktop software, etc. VMware company also launched the VMWare ESX server and VMWare GSX Server. Mostly, VMWare virtualization softwares are for commercial use.
VMware ESXi Server: This is an organisation-level software built to provide better functionality than freeware VMware Server to reduce system overhead. But, the service console in VMware ESX server is replaced by BusyBox installation, which requires low disk space.
VMware ESX Server: This is similar to VMware ESXi server where VMware ESX is combined with
VMware vCenter that produces additional solutions to improve consistency and manageability of the server implementations.
VMWare vSphere and VMWare Server are some of the important server virtualization softwares.
VMware vSphere: The vSphere is the best and well known product from VMware. vSphere is the integration of well known, commonly used vCenter, and ESXi hypervisor suite for applications.
VMware Server: It is an open source (Freeware) software which can be used on any existing operating systems like ubuntu, LINUX, or Windows.
A classic VMware vSphere data center contains (physical) building blocks like IP networks, desktop clients, storage networks and arrays, a management server, and x86 virtualization servers. The vSphere data center topology components are listed below:
IP networks: Any compute server can have one or more physical network adapters, and they provide reliable networking and high bandwidth to whole VMware vSphere data center.
Management clients: They provide many interfaces to access virtual machine, and for data center management. These interfaces incorporate either vSphere Command-Line Interface (vSphere CLI), or vSphere Web Client to access web browser.
Compute servers: The x86 servers run ESXi on the bare metal. Compute server provides resources for virtual machines to run. In the virtual environment, each computing server is called a standalone host. All servers configured with x86 are grouped together with a number of connections and can be connected to the same storage subsystems and network: A cluster (grouping of similarly configured servers creating a cumulative set of resources in the virtual environment) is formed.
Storage networks and arrays: NAS arrays, Fibre Channel SAN arrays, and iSCSI SAN arrays are most frequently used storage technologies. VMware vSphere supports these techniques to meet data center storage requirements. Sharing of data between the group of servers is possible by connecting them through storage area networks. This aggregation provides more flexibility to virtual machines.
vCenter Server: The vCenter Server is a single point of control to the data center. It transfers essential data center services like configuration, access control, performance monitoring, etc. It merges all the resources from the individual computing servers and shares them with virtual machines in the whole data center.
vCenter Server manages all the tasks right from computing servers to virtual machines. The assignment of resources to the virtual machines is done by computing server. System administrator sets some policies based on which resources are assigned.
When vCenter Server is not unreachable, still computing servers continue to function. For example, if the network is not severed, servers can be managed individually and continue to run the assigned virtual machines. After connection is restored, server functions within the network as usual.
The whole IT infrastructure including networks, servers, and storage is virtualized by VMware vSphere. These resources are accumulated and presented in a uniform set (elements) in the virtual environment.
The IT resources can be managed With VMware vSphere. The dynamic provision, and shared utility are resources for different business projects.
In Virtual Datacenter Architecture, vSphere is used to configure, manage, and view the key elements. The key elements in a virtual datacenter are:
Hosts, resource pools, and clusters which are regarded as memory and computing resources.
Host: The virtual presentation of the memory resources and calculation of physical machines (PMs) running ESX/ESXi is called a Host.
Cluster: When more than two PMs are connected together to manage and work as entire entity, it is called cluster (The collaboration of computing and memory resources). Machines can be removed or added from a cluster dynamically.
Hierarchy of resource pools: The partitioning from hosts and clusters into computing and memory resources is called resource pools.
Datastores: The virtual representation of integrated physical storage resources in the datacenter.
These physical storage resources are:
The virtual machines are connected to each other through physical network in the virtual environment outside of the virtual datacenter. Virtual machines are assigned to a particular cluster, resource pool, or a host to create datastores.
When virtual machine is powered-on, then workload increases, and it consume resources dynamically. It reverts the resources dynamically as workload decreases. New virtual machines can be created in fraction of a second, as it is much faster and easier than physical machines. An appropriate operating system and applications must be installed to alter the virtual machine to handle workload.
Resources are allocated to virtual machines based on the principles set by the system administrator. Resources can be reserved for a particular virtual machine to guarantee its performance. Principles are given priority to set a differing portion of resources for every virtual machine.
VMware Infrastructure is a virtualization suite for infrastructure that provides complete overview of application availability, virtualization, resource optimization, management, and operational automation. VMware Infrastructure integrates and virtualizes the hardware resources among two or more systems. In the virtual environment, it provides virtual resource pools to the datacenter.
In addition to this, VMware Infrastructure has a distributed architecture that provides excellent features like high availability, consolidated backup, fine-grain, policy-driven, and resource allocation of the entire virtual datacenter. To establish an IT enterprise, these distributed architecture services plays a major role in meeting their service level agreements and production in a cost effective manner.
VMware ESX Server – The virtualization layer which is production-proven, and robust is run on physical servers that abstract storage, memory, processor, and networking resources across multiple virtual machines (VMs).
VirtualCenter Management Server (VirtualCenter Server) – VirtualCenter Server is the central point for accolation, managing, and configuring virtual environments.
VMware High Availability – Provides features that are cost-effective, easy-to-use, high availability to run applications on virtual machines.
Virtual Infrastructure Client (VI Client) – VirtualCenter Server or individual ESX Servers connect remotely from any Windows PC, and an interface is used by client to connect.
Virtual Infrastructure Web Access – A virtual machine makes use of a web interface to manage and access remote consoles.
VMware Virtual Machine File System – ESX Server virtual machines have a high-performance file system cluster.
VMware Virtual Symmetric Multi-Processing (SMP) – SMP feature is enabled for single virtual machine to convert into multiple physical processors to work parallely.
VMware Virtual Motion – To run virtual machines from one physical server to another physical server, VMotion feature is used, which allows live migration with complete transaction integrity, zero down time, and continuous service availability.
If server fails, virtual machines automatically restart with production servers that have spare capacity.
VMware Backup – Consolidated Backup is easy-to-use. Backup can be simplified, and it reduces the overload on ESX Servers. Virtual machines have centralized agent-free backup facility.
VMware Infrastructure SDK – SDK provides a third-party access to the VMware Infrastructure and provides standard interface for VMware.
Distributed Resource Scheduler (DRS) – To allocate resources for virtual machines, collection of hardware, and balancing the computing capacity dynamically done using DRS.
In this architecture, VMware vSphere VMs in the datacenter are linked with a group of virtual networking elements in virtual environment similar to physical network elements in physical environment.
The physical environment and the virtual environment will have similar networking elements. Some of the networking elements are port groups, virtual network interface cards, vSphere Distributed Switches, distributed port groups, and vSphere Standard Switches.
Every virtual machine has several virtual NICs. The application program and operating system interact with a virtual NIC. Virtual Machine communicates through device driver either via VMware or a frequently available driver that is optimized for the virtual environment. In both cases, interaction in the operating system occurs same as of physical device. The virtual NIC has one IP address, and its own MAC id. Virtual machine has same ethernet protocol as of physical NIC. Agents outside the virtual machine cannot detect that it is communicating.
A virtual vSphere Standard switch works as a physical switch that is two layered. Every server will have its own virtual switch. The vSphere Distributed Switch topology contains a single virtual switch connected to several servers. A Virtual switch has port groups on one side that are connected to VM and the ones on the other side are connection links to physical Ethernet adapters.
A virtual switch has the ability to connect links to one or more physical Ethernet adapters. When NIC teaming is enabled, two or more physical adapters provide passive failover network: In such situation, an outage occurs, or the traffic load is shared.
The unique concept of virtual environment is port group. It is a method for setting rules that need to be followed to connect the network. A switch can have multiple port groups.
By Configuring port groups, we can implement the method to enhance traffic management, better performance, network segmentation, high availability, and networking security.
A VDS acts as single virtual switch among many associated hosts as they travel across one or more hosts. This capability of VDS helps VM to maintain constant network configuration. The virtual machines can use every VDS as a network. To route traffic internally between external network and virtual machines, VDS is used by connecting ethernet adapters. A VDS can have multiple distributed ports assigned to it. Distributed port groups have common configuration to give a stable point for VM connected within the network.
The Network resource pools decide the order of priority for various network traffic based on the types. When this is enabled, the VDS traffic is divided into network resource pools as listed below:
The below architecture shows the relationship of vSphere Distributed Switches within the Networks that are either inside or outside the virtual environment.
The priority of the traffic for each network can be controlled by network resource pools by setting host limits for each network resource pool and the by sharing physical adapters. The virtual switching layer works similar to regular physical switches such as monitoring, traffic shaping, and VLANs.
In the standard vSphere Switches, every server will have its self virtual switch (VSSs) to handle the traffic within the network at host level in a vSphere virtual environment. A VSS has the ability to route the network traffic inside the virtual environment. The routing is done between external networks and virtual machines.
The below architecture shows the relationship of vSphere Standard Switches within the Networks that are either inside or outside the virtual environment.
To manage the difficulty and hide the differences between physical storage subsystems, the “vSphere storage architecture” consists of several layers of abstraction.
The guest operating systems (OS) and the applications within virtual machine appearance – virtual SCSI controller is connected to more than two virtual SCSI disks in the storage subsystem. Virtual SCSI controller is a type of SCSI controller that a VM can access. These controllers include VMware Paravirtual, BusLogic Parallel, LSI Logic SAS, and LSI Logic Parallel.
The datastore elements support virtual SCSI disks in the datacenter. The storage space for virtual machines among several physical hosts (clients) is provided by the datastore. The datastore acts similar to a storage appliance. Datastore cluster is a combination of multiple datastores as a load-balanced pool or one-logic.
The technique to assign storage space to datastore of virtual machine (VM) is called abstraction. While installing the guest VM, the complexity is based on physical storage technology. The guest VM is not disclosed to NAS, iSCSI SAN, Fibre Channel SAN (F-SAN), and direct attached storage.
The datastore is a physical storage system and the virtual machine file store (VMFS) is a storage device. Network attached storage (NAS) datastores are network file storage (NFS) devices having volume (storage space) same as VMFS. Datastores can be expanded to one or more physical storage subsystems. One VMFS can have more than one logical unit numbers (LUNs) from a Fibre Channel SAN disk, or an iSCSI SAN disk, or a local SCSI disk array on a physical host.
The addition of any new LUNs to the physical storage subsystem is identified and provided to new and existing datastores. The storage capacity of existing datastore can be extended without shutting down the storage subsystems and physical hosts. If LUNs become unavailable within a VMFS, then virtual machines using that particular LUN are damaged or affected, but other VM with virtual disks in LUNs function normally.
In VM, data is stored as files in a directory within the datastore. The disk storage of each virtual guest is a group of files in the guest's directory.
The guest disk storage can be operated as a normal file. It can be moved, backed up, or copied. A virtual disk file with extension (.vmdk) is created in VMFS for newly added virtual disk with a virtual machine.
VMFS is a clustered file system that allows to share storage data among multiple physical hosts in order to read, store, and write data simultaneously. The on-disk locking feature of VMFS will safeguard from switching on same virtual machine by multiple servers at a time. In case of physical host failure, the on-disk locking feature enables each virtual machine to release so that VMs can restart on other hosts (physical).
The other features of VMFS include techniques of recovery, failure consistency, virtual machine state snapshots, a failure-consistent virtual machine I/O path, and distributed journaling. These techniques can serve better by identifying the root cause and recovery from storage subsystem failures, physical host, and virtual machine.
VMFS supports raw device mapping (RDM). RDM grants methods for a VM to have direct access to a LUN on the Fibre Channel or iSCSI only (physical storage subsystem). RDM supports two methods of applications, and they are as follows:
The three main components of vCenter Server architecture are as follows:
The vSphere Web Client: vSphere Web Client is a web application that acts as user interface. The administrator can handle inventory objects and manage installation in a vSphere prototype and virtual machines can get access to console. VMware software recently launched HTML5 based vSphere web Client in their latest version (vSphere 6.5).
The vCenter Server Database: The server data is stored and managed from resource pools and inventory items. Each instance of vCenter Server will have its own database.
vCenter Single Sign-On (SSO): SSO is a security token and authentication broker that allows the user to login once to access the vSphere infrastructure, and doesn't require further authentication.
Key features of vCenter Server are listed below:
The enabled administrator will constantly monitor the performance. The vCenter Server assigns VM deployment, and obstructs any unauthorized access. Some of the other benefits include it simplifies integration with third-party products, minimizes the effects of system failures and automates workflows.
A server (vCenter) can alone manage multiple virtual machines. The number increases by connecting multiple instances. However, the capacity of the server (vCenter) is huge, and that can be a drawback as well. Therefore, the server (vCenter) database can store all the data. When the number of virtual machines on a particular instance are overloaded, the risk of exceeding the database's limits will be higher: This leads to purchase of vCenter Server (in additional to existing server).
VMware will not favour server (vCenter) for “Windows” in further launches of vSphere. The next version of vCenter server has been replaced with server application (vCSA) as its clear-cut prototype. Even though Linux version of vCSA comes with greater scalability and configured, the vCSA can be run only on virtual hardware, and cluster of VMs. The enterprise can resolve the issue by separately creating a cluster for vCSA. This process requires further license and hardware which is costly.
vCenter Server interacts with the ESX/ESXi host via VMware vSphere API. When the first host is added to the vCenter Server, it assigns a vCenter Server agent to run on the client. Then the client agent shows its interaction with the server agent.
The functions of vCenter Server agent are as follows:
Users can access web via Windows Terminal Services, or Web browser. VMware vSphere datacenter can be accessed via vSphere Client. In special cases, only the physical administrators have right to access host. All functions that are performed on the vCenter Server can also be performed on the host.
vCenter Server is accessed by vSphere Client via the VMware API. A session will be initiated in vCenter Server after the users’ authentication. Then, the users can see all the resources assigned to them on virtual machine. The process starts first with the vSphere Client, and it obtains the location of VM from vCenter Server via VMware API to get access to VM console. Then Vcenter server connects to the proper host and gives access to the virtual machine (VM) console. A host running ESXi can’t be accessed using vSphere Web.
The vSphere Client guides the users on various virtualization techniques through step-by-step procedure to set up their own virtual environment. This guidance content is present in the vSphere Client Graphical User Interface (GUI). The assistance or guidance can be turned on or off based on users’ experience with VMs.
Users can access web browser through Apache Tomcat Server that is installed on vCenter Server. The Apache Tomcat Server acts as a mediator between the vCenter Server and the browser via VMware API. vCenter Server creates bookmarks for users to access the virtual machine (VM) console-web browser. The bookmark points to the vSphere for Web Access.
vSphere Web Access of the virtual machine (VM) in physical location redirects the Web browser to ESX/ESXi . If the user is aware of the IP address of the VM that is running, he/she can access the virtual console using standard tools. By default, for ESX host the web access is turned off.
To enhance the performance of the virtual machine, VMware tools are utilised that improve management and guest operating system of the virtual machine. The following are some of the features of VMware Tools that are available when installed:
By using either Linux or Windows, you can easily install VMware application and tools. As soon as the operating system (OS) is installed, the VMware Fusion starts installing VMware Tools. In case if installation of OS is done on any other virtual machine by rebooting it, then you need to install VMware Tools, as all features are not supported on all guest OS. But, use control panel to set other options that can optimize your guest OS in the virtual environment. The guest OS can also run without VMware Tools, but there is a chance of losing important functionalities.
VMware is being used by many organizations all over the world, and it has a long way to go. However, the main drawback is that it depends on multiple systems to function like automated pools. System has to be designed and configured in such a way that multiple tasks can be performed . For example – Setting task X to function, before Setting task “X” task “Y” starts functioning, these two tasks should allows task Z to function, which is a parallel process that is not new for distributed system. We need to check whether those dependencies are put together reliably, if not fix them when unexpected changes occur.
VMware virtualization has entirely changed our view towards operation system. There are many roles to create job opportunities such as VMware administrator, VMware engineer, VMware cloud manager, etc. VMware has a bright future as many industries are now planning to virtualize their network to reduce physical overload. VMware engineers are hired by many multinational companies like IBM, Mindtree, Accenture, etc. We can expect many more innovations in this area in the years to come. So, people can opt for this field and have a career in it for its lucrative job opportunities.
Free Demo for Corporate & Online Trainings.
Vaishnavi Putcha was born and brought up in hyderabad. She is passionate about writing blogs and articles on new technologies and innovations in software and, so, took up a profession as a Content Writer at Mindmajix. She holds a Master degree in Computer Science from VITS. Follow her on linkedin. You can also contact her at firstname.lastname@example.org.