Long discovery times is most likely caused by a faulty Discovery Manager setup. Before we start to optimize the discovery time, we first need to understand how a discovery is performed.
How the discovery work
Since vScope runs without the use of agents, the discovery starts off by pinging all IP addresses that are defined in Targets. In the next step vScope will return to the IPs that responded and try to gather the information using the assigned credentials to the Target.
Optimizing the discovery time
Example 1 – For credentials with multiple components in a Target range
Example of Credential types: WMI/SSH/MSSQL/SNMP
If we were to run a Discovery on the credential below, vScope would first ping all the IPs inside the defined IP ranges. Then vScope returns to all machines/devices that responded to ping and try to access it with the WMI credential.
Here’s where things can start to get problematic. Notice that, in this case, only the IP range 22.214.171.124/24 contains servers. All other Targets are excessive, and the pings and WMI connections will be in vain for these.
For example, there is a network range which only contains printers and switches. These will all respond to the pings and the WMI probe will try to access them and fail. This takes up time and bandwidth.
The correct way to set up this server inventory would be as in the image below. By only targetting the IP range for our servers, we skip unnecessary pinging and bandwidth.
The green Target “All Windows” is a Smart Target. By enabling this vScope only uses known IP addresses found in, for example, the vCenter. Using this, vScope wouldn’t need to ping unused IP addresses, further optimizing the discovery. What generates Smart Targets?
Example 2 – For credentials that only require a single Target
Example of Credential types: LDAP/VMware/SCCM/Hyper-V
Some components that are inventoried by vScope can be found from a single data source. Thousands of user accounts can be found in one Active Directory for example. In this case we only need the specific IP address of the Active Directory as a Target.
The image below is our credential for LDAP/Active Directory. Notice how some of the IP ranges are the same as the previous example. These Targets will be pinged and have credentials tested against twice if both credentials were to be active during the Discovery.
Even if we have the IP address (192.168.4.1) of the Active Directory specified, vScope will still ping and test the LDAP credential against all other IP addresses that respond to ping.
The correct way to set this up would be to only use 192.168.4.1 as our Target.
Other causes for slow Discovery times
- Targets with large IP ranges. For example 10.0.0.0/12 which would be 1’048’576 IP addresses that would be pinged by the vScope server. Instead, try to split the Targets into smaller subnets.
- The vScope server has undercommitted resources.