DataScale SN30 RDU module administration

Administrative tasks for the DataScale® SN30-2 RDU module’s BMC include the following:

  • Changing the root password

  • Generating a secure API login token for authentication

  • Updating the DataScale SN30-2 BMC and RDU controller (RDU-C) firmware

  • Configuring the DataScale SN30-2 BMC network

  • Configuring the DataScale SN30-2 BMC hostname

There is a built-in secure account on the DataScale SN30-2 BMC called snservice. It is used for password recovery of root if the password is forgotten. For more details on this account, refer to KB article #1049.

1. Change the root password

SambaNova highly recommends that you change the default password for root to a more secure password.
Passwords cannot be based on dictionary words and cannot include the # character. If you use a dictionary word, a BAD PASSWORD message results, and the password is not changed.

To change the default password for root on the DataScale SN30-2 BMC, follow these steps:

  1. Log in to the DataScale SN30-2 BMC where you transferred the update files:

    $ ssh root@<SN30-2_BMC_IP_Address>
    Password: <Enter root password>
  2. Run the passwd command and enter a new password, as follows:

    root@xrdu:~# passwd
    New password: <New Password>
    Retype new password: <New Password>
    passwd: password updated successfully

2. Generate a secure API login token

You can generate a secure token for the DataScale SN30-2 BMC root user to prevent the need to use plain-text passwords in REST API calls.

  1. Log in to the client system from which you want to run the REST API calls. The system must have network access to the DataScale SN30-2 BMC.

  2. Run the following command to generate the token. Replace <SN30-2_BMC_IP_Address> and <Password> with the appropriate values:

    $ export token=`curl -k -H "Content-Type: application/json" -X POST https://<SN30-2_BMC_IP_Address>/login -d '\{"username" : "root", "password" : "<Password>"}' | grep token | awk '\{print $2;}' | tr -d '"'`
  3. Confirm that a token has been generated for your session:

    $ echo $token
    1h0Dk9xjtjsOtBkMhgIN
  4. To validate that the token works from the client system, run the following cURL command. Replace <SN30-2_BMC_IP_Address> with the correct DataScale SN30-2 BMC IP address.

    $ curl -k -H "X-Auth-Token: $token" https://<SN30-2_BMC_IP_Address>/xyz/openbmc_project/
    {
    "data":
    "/xyz/openbmc_project/Ipmi",
    "/xyz/openbmc_project/certs",
    ...
    "/xyz/openbmc_project/user"
    ],
    "message": "200 OK",
    "status": "ok"
    }

    If you execute the cURL command correctly and output that’s similar to the example is generated, the token works correctly. You can now use the token with other API calls, for example, to power on and power off the DataScale SN30-2 RDU module.

3. Updating the DataScale SN30-2 BMC and RDU controller (RDU-C) firmware

Updating the DataScale SN30-2 BMC and RDU controller (RDU-C) firmware requires several tasks, which must be done in sequence.

3.1. Prepare the DataScale SN30-2 BMC primary partition for update

To prepare the primary partition and download the files, follow these steps:

  1. Shut down the DataScale SN30-H host module in the system. This will ensure that there are no graphs running or any other load. See the Gracefully shutting down the DataScale SN30 rack procedure.

  2. Shut down the DataScale SN30-2 RDU module. See the Gracefully shutting down the DataScale SN30 rack procedure.

  3. Log in to the DataScale SN30-2 BMC and reboot the BMC to clear the BMC registers, as follows:

    $ ssh root@<SN30-2_BMC_IP_Address>
    Password: <Enter root password>
    
    root@xrdu:~# reboot

    This reboot process takes about 3-5 minutes to complete. You can progress to the next step to download the DataScale SN30-2 firmware update.

  4. Download the DataScale SN30-2 firmware update file sn<XRDU_version>-xrdu-sys-fw-<fw_version_number>.tar.gz from the SambaNova ext-xrdu-fw repository, under the /latest sub-directory, to a system that has access to the network that the DataScale SN30-2 BMC is on. For details on accessing these required firmware files, see the KB Article #1063.

Ensure you download the XRDU firmware specific to the DataScale SN30 and not the firmware specific to other DataScale versions.
  1. Uncompress the sn<XRDU_version>-xrdu-sys-fw-<fw_version_number>.tar.gz file.

  2. Copy the .mtd and .mtd.md5 firmware files from the obmc/ directory to each of the DataScale SN30-2 BMCs that are to be updated. Place these files under the /dev/shm/ directory on the SN30-2.

    $ scp /<uncompressed directory>/obmc/obmc-<version>* root@<SN30-2_BMC_IP_Address>:/dev/shm/
    Password: <Enter root password>

    Confirm that the .mtd and .mtd.md5 files have been completely transferred to the BMC’s /dev/shm/ directory.

    Ensure that the files copied over are from the rdu-128 directory and not the rdu-64 directory.
  3. Log in to the DataScale SN30-2 BMC where the update files were transferred to.

    $ ssh root@<SN30-2_BMC_IP_Address>
    Password: <Enter root password>
    
    root@xrdu:~# cd /dev/shm/
  4. Confirm that the following two files are located in this directory:

    • obmc-rdu-<version>.mtd

    • obmc-rdu-<version>.mtd.md5

    root@xrdu:/dev/shm# ls obmc*
    obmc-<version>.mtd  obmc-<version>.mtd.md5

3.2. Perform the update on the primary partition

After you confirm that the two files are available, perform the update as follows:

  1. Run the update on the obmc-rdu-<version>.mtd firmware file.

    root@xrdu:~# obmcupdate -p primary -t bmc -f /dev/shm/obmc-rdu-<version>.mtd

    Do not run any other commands or disconnect the power supply at this time .

  2. Confirm that the Erasing, Writing, and Verifying stages complete to 100%.

  3. When all stages are completed, reboot the BMC with the new firmware.

    root@xrdu:~# reboot -f
  4. After about 3 to 5 minutes, log in to the DataScale SN30-2 BMC.

    $ ssh root@<SN30-2_BMC_IP_Address>
    Password: <Enter root password>
    The update reimages the DataScale SN30-2 BMC and the .ssh identification will likely have changed. You might be prompted to remove the old host entry in the .ssh/known_hosts file on the client that was used to ssh into the system before.
  5. Confirm the update has been running and compare the version output to the DataScale SN30-2 BMC firmware patch applied, as follows:

    root@xrdu:~# obmcupdate -i
    ***** RDU-C *****
    RDU-C Release Version: <current version>
    RDU-C BuildDate: #.## ####   DesignVer: ##   BoardID: ##.
    ***** BMC *****
    BMC Release Version: <updated version>
    BMC BUILD ID: <updated BMC buildid>
    BMC Flash: Primary
    BMC Flash Size: 128MB
  6. If there are any issues running the update, run the obmcupdate command again.

If the update process continues to fail, contact SambaNova Support.

3.3. Update the DataScale SN30-2 BMC secondary/recovery partition

The re-imaging of the BMC removes the obmc-rdu-<version>.mtd and obmc-rdu-<version>.mtd.md5 files from /dev/shm/.

  1. Exit out of the SN30-2 BMC and log back in to the client system where the BMC firmware files were uncompressed.

  2. Copy the obmc-rdu-<version>.mtd and obmc-rdu-<version>.mtd.md5 firmware files back to the DataScale SN30-2 BMCs /dev/shm/ directory.

    $ scp /<uncompressed directory>/obmc/obmc-<version>* root@<SN30-2_BMC_IP_Address>:/dev/shm/
    Password: <Enter SN30-2 BMC root password>
  3. Confirm that these two files have been completely transferred to the BMC’s /dev/shm/ directory.

  4. Log back in to the DataScale SN30-2 BMC that was just updated:

    $ ssh root@<SN30-2_BMC_IP_Address>
    Password: <Enter root password>
  5. Go to the /dev/shm/ directory on the DataScale SN30-2 BMC.

    root@xrdu:~# cd /dev/shm/
  6. Confirm that the following two files are located in this directory:

    • obmc-rdu-<version>.mtd

    • obmc-rdu-<version>.mtd.md5

      root@xrdu:/dev/shm# ls obmc*
      obmc-rdu-<version>.mtd  obmc-rdu-<version>.mtd.md5
  7. Run the update on the BMC recovery partition using the obmc-rdu-<version>.mtd firmware file.

    root@xrdu:~# obmcupdate -p recovery -t bmc -f /dev/shm/obmc-rdu-<version>.mtd

    Do not run any other commands or disconnect the power supply at this time.

  8. Confirm that the Erasing, Writing, and Verifying stages complete to 100%.

  9. If there are any issues running the update, run the update command once more. If the update process continues to fail, contact SambaNova Support.

When update is completed, you can update the DataScale SN30-2 RDU Controller (RDU-C) primary partition.

3.4. Update the DataScale SN30-2 RDU-C primary partition

After you’ve update both primary and secondary partition of the SN30-2 BMU, you can update the SN30-2 RDU-C.

  1. Exit out of the SN30-2 BMC and log back in to the client system where the BMC and RDU-C firmware files were uncompressed.

  2. Copy the following firmware files to the DataScale SN30-2 BMCs /dev/shm/ directory:

    • rduc-<version>-primary.spi

    • rduc-<version>-primary.spi.md5

    • rduc-<version>-recovery.spi

    • rduc-<version>-recovery.spi.md5

      $ scp /<uncompressed directory>/rduc/rduc-<version>-* root@<SN30-2_BMC_IP_Address>:/dev/shm/
      Password: <Enter SN30-2 BMC root password>
  3. Log in to the DataScale SN30-2 BMC to which the update files were transferred.

    $ ssh root@<SN30-2_BMC_IP_Address>
    Password: <Enter root password>
  4. Go to the /dev/shm/ directory on the DataScale SN30-2 BMC.

    root@xrdu:~# cd /dev/shm/
  5. Confirm that the following files are located in this directory:

    • rduc-<version>-primary.spi

    • rduc-<version>-primary.spi.md5

    • rduc-<version>-recovery.spi

    • rduc-<version>-recovery.spi.md5

      root@xrdu:/dev/shm# ls rduc*
      rduc-<version>-primary.spi  rduc-<version>-primary.spi.md5  rduc-<version>-recovery.spi
      rduc-<version>-recovery.spi.md5
  6. Run the update using the primary.spi firmware file to update the DataScale SN30-2 RDU-C primary partition.

    root@xrdu:/dev/shm# obmcupdate -p primary -t rduc -f /dev/shm/rduc-<version>-primary.spi

    Do not run any other commands or disconnect the power supply at this time.

  7. Confirm that the update of the RDU-C has taken affect by running the obmcupdate -i command.

    root@xrdu:~# obmcupdate -i
    ***** RDU-C *****
    RDU-C Release Version: <updated version>
    RDU-C BuildDate: #.## ####   DesignVer: ##   BoardID: ##
    ***** BMC *****
    BMC Release Version: <updated version>
    BMC BUILD ID: <updated build id>
    BMC Flash: Primary
    BMC Flash Size: 128MB

    Verify that the RDU-C Release Version appears as the updated version.

3.5. Update the DataScale SN30-2 RDU-C secondary/recovery partition

  1. To update the the DataScale SN30-2 RDU-C recovery partition, run the obmcupdate command with the rduc-<version>-recovery.spi firmware file.

    root@xrdu:/dev/shm# obmcupdate -p recovery -t rduc -f /dev/shm/rduc-<recovery>-recovery.spi
  2. If any issues occur during the update of the DataScale SN30-2 BMC or RDU-C, contact SambaNova support

After the DataScale SN30-2 BMC and RDU-C have successfully been updated, it is safe to power on the DataScale SN30-2 and then the SN30-H modules. See the Power on the DataScale SN30 rack procedure.

4. Configure the DataScale SN30-2 BMC network

When you change the IP address of the DataScale SN30-2 BMC, you have to update the IP_ADDRESS_SP# entries in the /platform/network.json files for the updated DataScale SN30-2 BMC and update other DataScale SN30-2 BMCs that are directly connected to the updated DataScale SN30-2 BMC in the node.
After changing the IP address and resetting the network service, currently connected ssh sessions are terminated or left in a hung state because the network IP connection has changed. Log in to the DataScale SN30-2 BMC using the new IP address.

DataScale SN30-2 BMC networking is configured as part of the DataScale SN30 rack delivery. It’s not usually necessary to modify the network configuration upon delivery, although there might be situations where the network has to be reconfigured later.

You can change the network settings by running the network-settings command, as shown below. Table 1 describes the command options.

root@xrdu:~# network-settings [-h] -i [IPADDRESS] -n [NETMASK] -g [GATEWAY] -d [DNS] [{static,DHCP}]
Table 1. Command options for network-settings
Option Function

{static,DHCP}

Specify the network mode.

-h
--help

Show the help message and exit.

-i [IPADDRESS]
--ipAddress [IPADDRESS]

IP address for static connection.
Example: "10.10.0.0". Use "" for DHCP.

-n [NETMASK]
--netMask [NETMASK]

Netmask number for static network mode (between 0 to 32). Use any number for DHCP.

-g [GATEWAY]
--gateWay [GATEWAY]

Gateway for static connection.
Example: "10.10.0.0". Use "" for DHCP.

-d [DNS]
--dns [DNS]

DNS for static connection.
Example: "10.10.0.0". Use "" for DHCP.

  1. Set the IP address configuration using the network-settings command.

    Example 1: Set a static IP address of 10.10.0.15 on a /24 subnet with gateway address 10.10.0.1 and a DNS server on 10.0.0.13:

    root@xrdu:~# network-settings -i "10.10.0.15" -n 24 -g "10.10.0.1" -d "10.0.0.13" static
    Modifiying network settings ...
    Toggling network settings ...

    Example 2: Set the network mode to DHCP:

    root@xrdu:~# network-settings -i "" -n 0 -g "" -d "" DHCP
    Modifiying network settings ...
    Toggling network settings ...
  2. After you successfully run the command, restart the network service to ensure that the configuration is set and running:

    root@xrdu:~# systemctl restart systemd-networkd.service

    At this point, the current ssh session should have been terminated or be in a hung state.

  3. Open a new terminal and log in to the DataScale SN30-2 BMC:

    $ ssh root@<SN30-2_New_BMC_IP_Address>
    Password: <Enter root password>
  4. To confirm the IP address configuration, run the ip address command. In the command output, the assigned IP address appears as the second inet value under eth0.

    root@xrdu:~# ip address
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
    valid_lft forever preferred_lft forever
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether XX:XX:XX:XX:XX:XX brd ff:ff:ff:ff:ff:ff
    inet 169.254.192.89/16 brd 169.254.255.255 scope link eth0
    valid_lft forever preferred_lft forever
    inet 10.10.0.15 brd 10.10.0.255 scope global dynamic eth0
    valid_lft 40746sec preferred_lft 40746sec
    inet6...

5. Configure the DataScale SN30-2 hostname

To configure or modify the DataScale SN30-2 hostname, follow these steps:

  1. Log in to the DataScale SN30-2 BMC:

    $ ssh root@<SN30-2_BMC_IP_Address>
    Password: <Enter root password>
  2. Run the following command to configure or modify the DataScale SN30-2 hostname:

    root@xrdu:~# hostnamectl set-hostname <hostname>
  3. To see the new hostname, log out and log back in to the DataScale SN30-2 BMC.