Machine Identification
In order to identify discovered machines with ones already in the database, Digital Rebar uses a matching process
called whoami
. This process uses drpcli machines whoami
to create a fingerprint based on several criteria about the
machine stored in
the Machine.Fingerprint
array. The API
then scores the fingerprint against known machine fingerprints. If a match is found, then the API returns the machines
UUID.
Fingerprint Match Criteria¶
dr-provision determines whether a fingerprint generated by whoami
matches a saved fingerprint using a scoring system.
The highest score equal to or greater than 100 wins. The follow items compose a machine fingerprint and other
properties. Each has a different contribution to the matching score.
- 25 points if the Machine has an SSNHash that matches the one in the Whoami. SSNHash is a hash of the DMI system manufacturer, the DMI system product name, and the DMI system serial number.
- 25 points if the Machine has a CSNHash that matches the one in the Whoami. SSNHash is a hash of the DMI system manufacturer, the DMI system product name, and the first DMI chassis serial number.
- 50 points if the Machine has a SystemUUID that matches the one in the Whoami. SystemUUID is the DMI provided system UUID.
- 0 to 100 points varying depending on how many memory DIMM IDs from the machine fingerprint are present in Whoami. Memory DIMM ids are calculated by hashing the memory manufacturer, memory part number, and memory serial number of each DIMM in the system.
- 0 to 100 points varying depending on how many HardwareAddrs from the Machine are present in Whoami.
- 1000 points if the machine UUID matches OnDiskUUID
- 500 points if Cloud Type & Cloud ID matches from cloud-init JSON spec.