Understanding Unique Identifiers and Their Impact
Unique Identifiers are crucial for distinguishing assets and Configuration Items (CIs) across all creation methods, whether through automated discovery, agent installation, API, manual entry, or data import. These identifiers ensure accurate recognition, prevent duplication, and maintain data integrity within the CMDB and Asset Inventory.
Unique Identifiers play a critical role in all asset lifecycle stages, adapting their application based on the creation source.
What Are Unique Identifiers?
Unique Identifiers are specific attributes—such as Asset Name, MAC Address, IP Address, Hostname, Computer UUID, Motherboard Serial Number, or Hardware Properties Serial Number—used to match newly created or discovered items with existing records. Depending on the creation method, ServiceOps uses these identifiers to determine whether to:
- Create a new asset or CI
- Update an existing one
This logic applies across all supported asset creation and discovery methods.
Applicability in Discovery Methods
The use of Unique Identifiers is enforced during:
- Agentless Discovery: Using protocols such as WMI (Windows), SSH (Linux/macOS), and SNMP (Network Devices)
- Agent-based Discovery: Where ServiceOps Agents are installed and report inventory data periodically
Regardless of the method, ServiceOps applies the same identifier logic to maintain a clean and unified inventory.
Applicability in Manual, API, and Import Methods
When assets are created through manual input, API calls, or data imports, ServiceOps uses the Asset Name as the primary unique identifier. This ensures data accuracy and prevents duplication by:
- Updating Existing Records: If an asset is created with a name that already exists, ServiceOps updates the existing record with the new information.
- Creating New Records: If the Asset Name is unique, a new asset record is created.
Use Case: Onboarding New Laptops
Consider onboarding 50 new laptops. If you import a file containing a laptop named "HR-Laptop-001" and this name already exists in ServiceOps, the system will update the existing HR-Laptop-001 asset with any updated details from your import. If a new laptop named "IT-Laptop-025" is in the import file and doesn't exist, a new asset record will be created for it.
Maintain consistent and descriptive Asset Names when using manual, API, or import methods to prevent unintended updates or duplicate entries.
How Matching Works?
Matching Behavior During Discovery
During each discovery cycle, ServiceOps compares the selected Unique Identifiers from the discovered item with those in the existing database.
- If all identifiers match an existing CI or asset, the record is updated.
- If no match is found, a new CI or asset is created
Do not leave unique identifiers blank; otherwise, the asset will not be created or updated.
Impact in Subsequent Discovery Cycles
Unique Identifier configurations are only applied during the next discovery cycle. Any changes made to the identifier settings will not retroactively affect existing data.
Example (Using IP Address and Hostname as Identifiers):
- If both IP and Hostname are different → New CI/Asset is created
- If both IP and Hostname are the same → Existing CI/Asset is updated
- If IP is the same but Hostname differs → New CI/Asset is created
Avoid changing Unique Identifier configurations frequently. Changes impact how items are matched in future cycles and may lead to duplication.
Example: MAC Address as a Unique Identifier
When MAC Address is selected:
- ServiceOps evaluates all network adapter MAC addresses on the discovered system.
- If any MAC address matches an existing record → Asset/CI is updated
- If none match → New item is created
This logic applies only to:
- WMI for Windows
- SSH for Linux/macOS
It does not apply to SNMP-based or manually imported devices.
Best Practices
Select stable attributes like MAC Address or Serial Number where possible.
- Avoid relying solely on IP Address or Hostname unless they are guaranteed to be unique.
- Refrain from frequent changes to Unique Identifier settings.
- Regularly audit the CMDB/Asset Inventory for inconsistencies or duplicates.
- Use cloud provider APIs to fetch stable identifiers for cloud-based VMs.
Real-World Examples
1. Single NIC Desktop (Windows)
- Identified by MAC Address
- If rediscovered with same MAC → Record is updated
2. Virtual Machine with Dynamic IP (Linux)
- Identified by MAC + Hostname
- IP changes over time → Still updated correctly
3. SNMP-Based Printer
- Identified by IP
- If IP changes → New item may be created
4. Cloud VM in Auto-Scaling Group
- Identified by MAC + Hostname
- If both change → New record created each time