Test Plan for User Access Node (UAN) and Repurposed Compute Node as UAN

The following is the test plan for the User Access Node (UAN) or a Compute Node that has been repurposed to function as a UAN. The tests are grouped in three categories:

  • Unit tests
  • Integration tests
  • Functional tests

Unit Tests

When possible, unit tests are run when the various components of UAN are built (uan-rpms, uan, and uan-product-stream). The uan repository contains the ansible code used when UANs boot and configure and much of the testing for that compoment must occur on a fully configured system. Future enhancements are underway to test the various compoments of UAN on a Virtual Shasta enviroment in GCP.

Summary Description Automated Notes
uan builds Verify the uan repo is able to generate artifacts yes Run make in a local checkout
uan-rpms builds Verify the uan-rpms repo is able to generate rpms yes Run make in a local checkout
uan-product-stream builds Verify the uan-product-stream repo is able to generate a release yes Tag a new release in uan-product-stream or run make in a local checkout

Integration Tests

The following integration tests verify that the UAN software interacts correctly with the rest of the products. The result of the integration tests will be a fully built and customized UAN image that boots and configures correctly. Depending on the configuration of the test system, extra integrations tests may be performed (HSN booting, WLM configuration, GPU configuration, etc).

Summary Description Automated Notes
Install the UAN product. Install using IUF. See Install UAN Product Stream for details. Yes Example IUF command: iuf -a install-uan-x.y.z -m /etc/cray/upgrade/csm/uan-x.y.z/ run -rv /etc/cray/upgrade/csm/uan-x.y.z/product_vars.yaml -sv /etc/cray/upgrade/csm/uan-x.y.z/site_vars.yaml -s management-nodes-rollout post-install-service-check post-install-check -bc /etc/cray/upgrade/csm/uan-x.y.z/compute-and-uan-bootprep.yaml
Run UAN CFS Verify the CFS layers run correctly (SHS, UAN, WLM, CPE, etc) no Create UAN Boot Images
Boot UANs Verify the UAN boots successfully no Boot UANs
Enable HSN booting Verify the UAN is able to HSN boot no Consult COS documentation
Enable GPU Verify the UAN is able to configure GPUs no Consult GPU documentation

Functional Tests

With a fully configured Shasta system, the following functional tests determines that a UAN is able to perform its intended capabilities. These tests apply to both native UANs and Compute Nodes which have been repurposed as UANs.

Summary Description Automated Notes
User Authentication Verify a user is able to ssh to the UAN using LDAP authentication. no ssh user@uan
Job launch Verify a user is able to submit a basic job. no srun hostname
Verify CPE Verify the Cray Programming Environment is available no module list
Verify GPU functionality Run the test suite if GPUs are configured yes /opt/cray/uan/tests/validate-gpu.sh <nvidia|amd>
Verify CAN or CHN Configuration Inspect the network interfaces and default routes used for CAN or CHN no For systems running CAN, there must be a can0 interface present and the default route should be over that device.For systems running CHN (including Compute Nodes repurposed as UANs), the hsn0 interface must have a CHN IP in addition to the HSN IP and the default route should be over the hsn0 device.
Verify NMN Bonding Inspect the network interfaces used for NMN no For systems running a bonded NMN, there must be a nmnb0 interface present and nmn0 must be one of the bond slaves. Run cat /proc/net/bonding/nmnb0For systems running non-bonded NMN, the nmn0 interface must present.