Advanced topics

This section provides information about the following topics:

Device naming

Device Naming allows you to customize the name of a server when the server is not yet registered with the SA Core or when you first boot a server into a Maintenance mode OS.

You can also modify the server's name from the SA Client which will take precedence over the Device Naming function. You can do this by specifying a set of rules to match certain device properties. This allows you to have different names based on the device information registered by the SA Agent.

The rules must be added to the device_discovery_naming_rules* custom attribute associated with the Server's assigned Facility.

The rules are in the form of pairs of regular expressions and templates like:

REGEX1::=TEMPLATE1
REGEX1::=TEMPLATE2

Where each REGEX tries to match a string constructed from the SA Agent reported information. When a match is found the TEMPLATE is applied to construct the server's name.

The TEMPLATE follows Python 2.7 format string conventions, where given a dictionary in the form of:

{key: [ {'inner key': 'value1', value2], ...}

you are able to reference the values as follows:

value1 = {key[0][inner key]}
value2 = {key[1]}

The dictionary used for the TEMPLATE is constructed by the SA Agent during hardware registration. The following fields are relevant:

  • chassis_id - chassis ID
  • dvc_id - server SA object ID, machine ID
  • dvc_mfg - server's manufacturer
  • dvc_model - server's model
  • interfaces[0][hw_addr] - the MAC address of the first reported network interface
  • os_version - SA Agent reported OS version
  • serial_num - serial number
  • server_location - server's location (only available for HPE ProLiant blades)
  • system_name - hostname
  • uuid - UUID

The following is a simple example:

.*server_location.*::={system_name}-{server_location[rack]}-{server_location[enclosure]}-{server_location[bay]}

This specification matches any server that reported a location and sets the name to the hostname followed by rack, enclosure and bay.

The following is a slightly more advanced example:

.*ProLiant BL.*::={server_location[rack]}-{server_location[enclosure]}-{server_location[bay]}
.*ProLiant*::={serial_num}
.*VMware.*::={system_name}-{interfaces[0][hw_addr]}

The first line of this example matches only ProLiant BL servers and assigns a name. The second line is needed only when the first line finds no matches and finds HPE ProLiants other than the BL model. The third line explicitly matches only VMware hardware and assigns the hostname followed by the hardware address of the first network interface.

Hardware info tool

This tool is useful when you need to gather server hardware information. It provides useful server information organized in an easy to navigate menu. The Hardware Info Tool is platform independent. You can simply PXE boot a server and start the tool from the boot menu.

As displayed in the below figure, the server hardware information is structured in 12 categories. It also shows the type of information the tool extracts and how it is structured:

When working with servers for which SA does not include drivers, the PCI Devices list can help you identify the device's class/type, vendor, product name, port location, and so on.

Usage Example

Assuming WINPE does not recognize your network interface because the required drivers are not included, the following example shows how you could find the information needed to search for the right drivers:

  1. Check the PXE Booted Network Interface.

  2. Search the Network Interface through the PCI Devices List and save the information about it:

  3. Similarly, you can locate information about the RAID/Storage Controller:

    The PCI ID is of this form <VendorID>:<DeviceID>[<Sub-VendorID>:<Sub-DeviceID>]. The following sites provide translations of these IDs allowing you to search for drivers based on the Vendor/Sub-Vendor IDs, for example: pciids.sourceforge.net or pcidatabase.com. If you find a driver for the device, ensure that the driver's inf file includes your PCI ID. After you complete all driver verifications, you can add the driver to the WinPE image.