A node's underlying machine can optionally have its hardware tested using well-known Linux utilities.
Such testing can be performed on a node with a status of 'Ready' (i.e. recently commissioned), broken or on a deployed node.
Testing can also be included as part of the commissioning process. The dialog (described below) will be displayed when the 'Commission' action is chosen. Be aware that if the hardware tests fail the node will become unavailable for Deployment.
Note: The majority of testing scripts only work with nodes that are backed by physical hardware (e.g. they may be incompatible with KVM-based nodes).
To launch a test, on the 'Nodes' page, or within a node's actual view, choose action 'Test hardware'. When ready, hit button 'Test machine'. Here, a test is being applied to a deployed node:
There is the option of not powering off the node and to allow SSH access.
A default test will be selected (
smartctl-validate, a hard drive test) but
others can be chosen by clicking the 'Select scripts' label. Doing so will
reveal the following choices:
The following hardware testing scripts can be selected from the web UI:
|badblocks||storage||Run badblocks on disk in readonly mode|
|badblocks-destructive||storage, destructive||Run badblocks on a disk in read/write destructive mode|
|internet-connectivity||network, internet, node||Check if the system has access to the Internet|
|memtester||node||Run memtester against all available userspace memory|
|ntp||network, ntp, node||Run ntp clock set to verify NTP connectivity|
|smartctl-conveyance||storage||Run the conveyance SMART self-test and validate SMART health on all drives in parallel|
|smartctl-long||storage||Run the long SMART self-test and validate SMART health on all drives in parallel|
|smartctl-short||storage||Run the short SMART self-test and validate SMART health on all drives in parallel|
|stress-ng-cpu-short||cpu||Run stress-ng memory tests for 5 minutes|
|stress-ng-cpu-long||node||Run stress-ng memory tests for 12 hours|
|stress-ng-memory-short||memory||Run stress-ng memory tests for 5 minutes|
|stress-ng-memory-long||memory||Run stress-ng memory tests for 12 hours|
After either commissioning, testing, or installation has started, MAAS reports in real time which script is running.
The verbatim output from any tests is accessed by selecting a node, selecting the 'Hardware tests' page and clicking on the name of the specific test.
See Commissioning and Hardware Testing Scripts for more details on how these scripts work and how you can write your own.