Hardware and switch profile customization

Hardware Profiles

The hardware profile is a JSON file containing the BIOS, NIC, and Boot settings of the different types of nodes.

By default, NPS provides the hardware profile for servers used for control plane, storage plane, and compute plane. NPS provides the flexibility of using a custom hardware profile to set the customized values for BIOS, NIC, and Boot configuration for servers, apart from the default values provided in the bundled hardware profiles. A custom profile is a JSON file which has a format of key/value pair for any settings for BIOS, NIC, and Boot.

The following default hardware profiles, based on role or type, are provided. You can create customized profiles with suitable values using these default profiles as the reference.

  • Management profile (default_management_profile)

  • Workload profile (default_edge_resource_profile)

NOTE:

Creating custom profiles

To create custom hardware profile, perform the following steps:
  1. For sample hardware profile, see Sample_hardware_profile section. Create a new profile by copying the JSON content into a new file and edit as per the requirement. After editing all the fields, save the new profile as <new json file name>.json.

    For more information about the key and value of the custom hardware profile, see Hardware profile format.

  2. Upload the saved JSON file using the following command:
    nps create -p hw_profile -f <new json file name>.json
  3. Check the newly created custom hardware profile using the following command:
    nps show -p hw_profiles -n <new profile_name>
  4. While creating the input JSON, enter the profile_name provided in the newly created hardware profile to hw_profile parameter of the corresponding server in the Infra/server section. If the input JSON file is already uploaded, use the following command to attach or replace the hw_profile parameter with newly created hardware profile name:
    nps attach-profile -i <server iLO ip> -p <new profile_name>

Switch profiles

The switch profile is a JSON file containing the configuration details of the switch.

IMPORTANT:

You can customize only the profile of the data switch.

The following list describes the syntax of the parameters for customization:

  • To add the VLAN, gateway, and the netmask information from the Input JSON file, use the following syntax:

    $vlan_<name of network>
    $gateway_<name of network>
    $netmask_<name of network>
  • To add VxLAN id, use $vxlan_<type of network>.

  • To add start IP of VLAN from the DHCP range, use $physicalip_<type of network>.

  • To add switch number, use $switchno.

  • To add loopback address, use $loopback_address.

  • To add anycast IP, use $anycast_ip.

  • To add BGP autonomous system number, use $bgp_number.

  • To add peerlinkip, use $peerlinkip.

  • To add remotepeerlinkip, use $remotepeerlinkip.

  • To add clagd, use $clagd.

  • To add provider VLAN range start, use $vlan_Provider_VLAN.

  • To add provider VLAN range end, use $vlan_ProviderEND.

  • To add the system name from the Input JSON file, use the following syntax:

    $sysname
    Retrieve the system name from the switch section in the Infrastructure topology in your Input JSON file.
  • To add the user name and password from the Input JSON file, use the following syntax:

    $user
    $password
    Retrieve the username and password from the switch section in the Infrastructure topology in your Input JSON file.
  • To add the OOB Management IP address from the Input JSON file, use the following syntax:

    $switchip
    Retrieve the OOB Management IP address from the switch section in the Infrastructure topology in your Input JSON file.