1. A system for performing high availability (HA) configuration and validation of virtual desktop infrastructure (VDI), comprising: a plurality of computing devices, each of the computing devices comprises at least one network interface card (NIC); and a virtual desktop controller communicatively connected to the computing devices via a network and directly connected to a virtual machine server storing a hypervisor and a plurality of virtual machines (VMs), wherein the virtual machine server and the virtual desktop controller are two different and separate components and each comprise at least two NICs, wherein the virtual desktop controller comprises a processor, a memory, and a storage device storing computer executable code, wherein the code, when executed at the processor, is configured to: discover, by a discovery engine, the computing devices based on discovery information stored in a data store, thus yielding discovered computer devices; configure, by a configuration module, the NICs of the discovered computing devices; configure, by the configuration module, hardware and software components of the discovered computing devices; configure, by the configuration module, at least one cluster of the system, wherein each of the at least one cluster comprises at least one of the discovered computing devices; execute, by a control module, the hypervisor and execute a plurality of virtual machines (VMs) on the executed hypervisor; configure, by the configuration module, additional features related to the VMs of the system; monitor, by a monitoring module, the hardware and software components of the discovered computing devices and generate corresponding monitoring information of the discovered computing devices, wherein the corresponding monitoring information comprises change of the hardware and software components; and display, by a user interface (UI) module, the corresponding monitoring information on a display device, thus performing high availability (HA) configuration and validation of the VDI; wherein for each of the discovered computing devices, the discovery information comprises a protocol, a port number and an internet protocol (IP) address; and wherein the configuration module is configured to configure the NICs of the discovered computing devices by: for each of the discovered computing devices comprising two or more of the NICs, performing NIC teaming to combine the two or more of the NICs to function as a single NIC.