Monday 4 June 2018

Difference between vSphere, ESXi and vCenter

VMware Inc. is a software company that develops many suites of software products specially for providing various virtualization solutions. There are many cloud productsdatacenter productsdesktop products and so on. VMware has moved from being just a Virtualization company, though it started as one.
VMware Vsphere or simply known as vSphere is a software suite that comes under data center product. vSphere is like Microsoft Office suite which has many softwares like MS Office, MS Excel, MS Access and so on. Like Microsoft Office, vSphere is also a software suite that has many software components like vCenter, ESXi, vSphere client and so on. So, the combination of all these software components is vSphere. vSphere is not a particular software that you can install and use, “it is just a package name which has other sub components”.
ESXi, vSphere client and vCenter are components of vSphere. ESXi server is the most important part of vSphere. ESXi is the virtualization server. It is type 1 hypervisor. All the virtual machines or Guest OS are installed on the ESXi server. To install, manage and access those virtual servers which sit on top of ESXi server, you will need other part of vSphere suit called vSphere client or vCenter. Now, vSphere client allows administrators to connect to ESXi servers and access or manage virtual machines. vSphere client is installed on the client machine (e.g. Administrator’s laptop). It can also be installed on the same physical server where ESXi is installed. The vSphere client is used from client machine to connect to ESXi server and do management tasks. So now what is vCenter? Why we need it? Try cloning existing virtual machine using just a vSphere client without vCenter server and you will see it is impossible.
vCenter server is similar to vSphere client but it’s a software with more power. vCenter server is installed on Windows Server or Linux Server or desktop/laptop. VMware vCenter server is a centralized management application that lets you manage virtual machines and ESXi hosts centrally. vSphere client is used to access vCenter Server and ultimately manage ESXi servers. vCenter server is compulsory for enterprises to have enterprise features like vMotion, VMware High Availability, VMware Update Manager and VMware Distributed Resource Scheduler (DRS). For example, you can easily clone existing virtual machine in vCenter server. So vCenter is another important part of vSphere package. You have to buy vCenter license separately.
vSphere is a product suite, ESXi is a hypervisor installed on a physical machine.
vSphere Client is installed on laptop or desktop PC and is used to access ESXi Server to install and manage virtual machines on ESXi server.
vCenter server is installed as virtual machine on top of ESXi server. vCenter server can also be installed on different standalone physical server, but why not virtualize it too right? vCenter server is a vSphere component which is mostly used in large environment where there are many ESXi servers and dozens of virtual machines. The vCenter server is also accessed by vSphere client for management purpose. So, vSphere client is used to access ESXi server directly in small environment. In larger environment, vSphere client is used again to access vCenter server which ultimately manages ESXi server.
Virtualizing the vCenter server.
If the ESXi host that houses the virtual vCenter server becomes inaccessible, then the services are interrupted and you cannot connect to the server. This will cause all sorts of headaches. The only solution is to log into each ESX host and see where the vcenter server is present. You can build a physical vCenter server and domain controller to alleviate this issue. Although you can virtualize any application, I do not think all applications should be. Just some admin advice and experience when planning your virtual environment. However, this can be addresses by getting one or two extra hosts so vcenter can restart itself on another host.