Windows Server Discovery updating incorrect CI when serial number provided

Problem:

When discovering Windows Server configuration items (CIs) with serial numbers, multiple servers appear to share the same configuration item.

The serial number attribute is an identification property in ServiceNow, so in instances where this is the same across multiple CIs (for example VM guests sharing a hypervisor in some scenarios) will by default identify as the same object and attempt to update the same record.

A quick PowerShell snippet can help you determine if this is a likely cause:

Get-SCOMclass -DisplayName 'Windows Server Operating System' | Get-SCOMClassInstance | select @{n='PrincipalName
';e={$_.'[Microsoft.Windows.Computer].PrincipalName'}},@{n='serial';e={$_.'[Microsoft.Windows.OperatingSystem].SerialNum
ber'.value}} | Group-Object -Property serial | Where-Object -Property Count -gt 1

Resolution:

Either:

  1. If not required, do not include the serial number attribute. ServiceNow will no longer be able to try and identify CIs based on this property.

  2. If this is required, consider adjusting the priority of the identification rules so that another property (such as the servers name) is evaluated before the serial number. Make sure that this has been evaluated properly in your environment to ensure that it does not have any repercussions.