Chapter 3. Altix UV CMC Software Commands

You can use SGI Altix UV controller commands to monitor and manage SGI Altix UV systems. You can use them from the SGI Management Node command line interface (CLI) or the chassis manager controller (CMC) CLI.

Typically, commands available from the SMN or CMC command line are in the form of:

command [options] [targets]

For available commands see below or type "help" at the SMN/CMC prompt. Commands are located in /sysco/bin on both the SMN and CMC. For options available with each command, type "command -help".

CMC Command Targets

Multiple targets may be specified, if no targets are specified, all BMCs or CMCs (as appropriate for a command) are assumed. Some targets may need to be quoted to avoid wildcard expansion by the SMN/CMC shell.

Table 3-1. CMC Command Targets

Command Target

BMCs (rack,upos,slot,BMC type)

CMCs (rack,upos,CMC type)

*,all

Any,Any,Any,Any

Any,Any,Any

r*

rack,Any,Any,Any

rack,Any,Any

r*i*

rack,upos,Any,IRURTR+IRUCOMP

rack,upos,IRU

r*q*

rack,upos,Any, QCRRTR

rack,u, QCR

r*i*b*

rack,upos,slot,IRUCOMP

N/A

r*i*r*

rack,upos,slot,IRURTR

N/A

r*q*r*

rack,upos,slot,QCRRTR

N/A

*c

N/A

Any,Any,Any

r*i*c

N/A

rack,upos,IRU

r*q*c

N/A

rack,upos, QCR

allb,allc

Any,Any,Any,IRUCOMP

N/A

allbi,allci

ANY,ANY,ANY,IRUIO

N/A

allr

Any,Any,Any,IRURTR+QCRRTR

N/A

allri

Any,Any,Any,IRUCOMP+IRURTR

N/A

allrq

Any,Any,Any,QCRRTR

N/A

p*

all IRUCOMP with matching partition

N/A

An asterisk references all values in that position such that r* references all racks, i* references all IRUs, etc. A decimal number can replace any asterisk to narrow the target selection. Ranges are not support but a space separated list of targets is supported.

BMC Types

IRUCOMP - IRU computer blades (blade slots 0 through 15 on Altix UV 1000, or 0 through 1 on Altix UV 100).

IRUIO - IRU computer blades with an IO riser (blade slots 0 through 15 on Altix UV 1000, or 0 through 2 on Altix UV 100)

IRURTR - IRU router blades (router slots 0 through 3)

QCRRTR - Quad Compact Router (QCR) router blades (slots 0 through 3)

CMC Types 

IRU - Altix UV 1000 or Altix UV 100


Note: Most of the commands (bios, bmc, cmc, config, hwcfg, log, power, uvcon (console)) are available at both the CMC prompt (as user root), as well as, the system management node (SMN) prompt (as user sysco).

The available commands on the CMC are, as follows:

CMC:r1i1c> help
available commands are:

        auth       authenticate SSN/APPWT change
        bios       perform bios actions
        bmc        access BMC shell
        cmc        access CMC shell
        config     show system configuration
        console    access system consoles
        help       list available commands
        hel        access hardware error logs
        hwcfg      access hardware configuration variable
        leds       display system LED values
        log        display system controller logs
        power      access power control/status

type '<cmd> --help' for help on individual command.

auth

The auth command is currently only used to set the APPWT limit for export compliance. You need to obtain the key and reset the limit if needed.

You can get a usage statement, as follows:

CMC:r014i01c> auth --help

usage: auth  [-ard] [-s <SSN>] <key> [<key>]... [--help] [TARGET]...
-s, --ssn=<SSN>           system serial number change
-a, --appwt               APPWT change
-r, --reset               set learn mode
-d, --disable             disable authentication
<key>                     authentication keys
--help                    display this help and exit

autopower

The autopower command allows your system to power up automatically when power is applied after a power outage. Issuing the autopower command without any argument acts a query, with the results displaying the current state (enabled/disabled) and if enabled, the current delay time, and the results of the last attempted auto power on.

You can use the autopower command to determine if autopower is enabled, as follows:

CMC:r001i01c> autopower
==== r001i01c (PRI) ====
auto-power on is enabled (120 second delay), aborted (power already on).

Use the autopwer -d command to disable autopower, as follows:

uv44-cmc CMC:r001i01c> autopower -d
==== r001i01c (PRI) ====
auto-power on disabled

You can get a usage statement, as follows:

CMC:r001i01c> autopower --help

usage: autopower  [-edc] [-t <seconds>] [--help]
-e, --reset               enable auto-power on
-t, --time=<seconds>      time (seconds) to delay auto-power on
-d, --disable             disable auto-power on
-c, --cancel              cancelauto-power on
--help                    display this help and exit

bios

Use the bios command to get BIOS information for your system after it is powered on, as follows:

CMC:r1i1c> bios
==== 4/4 BMC(s) ====
Last booted: SGI BIOS Version 2 Revision 0 built in 20101012_1502 by ajm on Oct 12 2010 at 15:08:29

You can get a usage statement, as follows:

CMC:r1i1c> bios --help

usage: bios  [-rsuv] [--help] [TARGET]...
-r, --revision            display last BIOS revision banner
-s, --state               display current BIOS state
-u, --uptime              display time since last BIOS reset
-v, --verbose             verbose output
--help                    display this help and exit

bmc

Allows you to send a command to one or more board management controllers (BMCs). It is a shell command similar in behavior to the ssh command.

You can get a usage statement, as follows:

CMC:r1i1c> bmc --help

usage: bmc [-t] exec <command> [--timeout=<seconds>] [TARGET]...
exec                      executes command on BMC(s)
<command>                 command to execute
--timeout=<seconds>       timeout value
-t, --terse               terse mode

usage: bmc list [TARGET]...
list                      list active shells on BMC(s)

usage: bmc kill [TARGET]...
kill                      kill all active shells on BMC(s)

usage: bmc [-v] runtime [TARGET]...
runtime                   show daemon run time
-v, --verbose             verbose mode

usage: bmc reboot [TARGET]...
reboot                    initiates controller reboot

usage: bmc --help
--help                    display this help and exit

cmc

Allows you to send a command to one or more chassis manager controllers (CMCs). It is a shell command similar in behavior to the ssh command.

CMC:r1i1c> cmc --help

usage: cmc [-t] exec <command> [--timeout=<seconds>] [TARGET]...
exec                      executes command on CMC(s)
<command>                 command to execute
--timeout=<seconds>       timeout value
-t, --terse               terse mode

usage: cmc list [TARGET]...
list                      list active shells on CMC(s)

usage: cmc kill [TARGET]...
kill                      kill all active shells on CMC(s)

usage: cmc [-v] runtime [TARGET]...
runtime                   show daemon run time
-v, --verbose             verbose mode

usage: cmc reboot [TARGET]...
reboot                    initiates controller reboot

usage: cmc --help
--help                    display this help and exit

config

The CMC config command shows your system configuration, as follows:

CMC:r1i1c> config -v

CMCs:            1
        r001i01c UV1000 SMN

BMCs:            4
        r001i01b00 IP93-BASEIO
        r001i01b01 IP93-DISK
        r001i01b02 IP93
        r001i01b03 IP93

Partitions:      1
        partition000 BMCs:    4

Accessories:     0

You can get a usage statement, as follows:

CMC:r1i1c> config --help 
usage: config  [-tvd] [-a <ip>@<location>] [--pcheck] [--plist] [<TARGET>]... [--help]
-t, --terse               terse output
-v, --verbose             verbose output
-d, --debug               debug output
-a, --acc=<ip>@<location> 
        configure accessory location
        <location> is <rack>.<uposition> for IO
        <location> is <rack>.<0|1> for PDUs (0=left, 1=right)

--pcheck                  check for targets crossing partitions
--plist                   list partitions targeted
--help                    display this help and exit

The -t/--terse option produces a terse configuration report.

On an SGI Altix UV 100 system with two IRUs, it produces a terse configuation report similar to the following:

SSN: UVL-00000001, CMCs: 2, BMCs 4/4, Partitions: 1, Accessories: 0
r001i01c b-00-01
r001i02c b-00-01

On an SGI Altix UV 100 system with eight IRUs, it produces a terse configuation report similar to the following:

SSN: UV-00000048, CMCs: 16, BMCs 192/192, Partitions: 5, Accessories: 0
r001i01c b-00-01-02-03-04-05-06-07-08-09-10-11-12-13-14-15 r-00-01-02-03
r001i23c b-00-01-02-03-04-05-06-07-08-09-10-11-12-13-14-15 r-00-01-02-03
r001q42c r-00-01-02-03
r001q43c r-00-01-02-03
r002i01c b-00-01-02-03-04-05-06-07-08-09-10-11-12-13-14-15 r-00-01-02-03
r002i23c b-00-01-02-03-04-05-06-07-08-09-10-11-12-13-14-15 r-00-01-02-03
r002q42c r-00-01-02-03
r002q43c r-00-01-02-03
r003i01c b-00-01-02-03-04-05-06-07-08-09-10-11-12-13-14-15 r-00-01-02-03
r003i23c b-00-01-02-03-04-05-06-07-08-09-10-11-12-13-14-15 r-00-01-02-03
r003q42c r-00-01-02-03
r003q43c r-00-01-02-03
r004i01c b-00-01-02-03-04-05-06-07-08-09-10-11-12-13-14-15 r-00-01-02-03
r004i23c b-00-01-02-03-04-05-06-07-08-09-10-11-12-13-14-15 r-00-01-02-03
r004q42c r-00-01-02-03

For a single Altix UV 1000 IRU without blades in slots 0 through 7 (or router blades), this output shows the 'holes' for blades not present, similar to the following:

SSN: UV-00000021, CMCs: 1, BMCs 8/8, Partitions: 1, Accessories: 2
r001i01c b-  -  -  -  -  -  -  -  -08-09-10-11-12-13-14-15 r-  -  -  -  

Also, on VT100 compliant terminals, it will use the following character attributes:

Reverse red - blade is connected, but not configured

Reverse yellow - blade is disabled (see hwcfg command)

console (uvcon)

The console (uvcon) command allows allows you to open a console window on the CMC or BMC or even a compute blade. Use CTRL -] q to exit. A usage statement is, as follows:

CMC:r014i01c> console --help

usage: console [-bnd23] [--steal] [--spy] [--kill] [--notty] [--nocache] [--clea                                               r] [TARGET]
-b, --baseio                   specifies baseio bmc console
-n, -0, --normal               specifies node BMC console (normal channel)
-d, -1, --debug                specifies node BMC console (debug channel)
-2, --chan2                    specifies node BMC console (channel 2)
-3, --chan3                    specifies node BMC console (channel 3)
--steal                        steal the console
--spy                          spy the console
--kill                         kill all other uvcon sessions
--notty                        disables tty interventions
--nocache                      don't return cached output
--clear                        clear cached output
TARGET                         console target

 escape codes:
    ctrl-] s    steal console
    ctrl-] r    release console
    ctrl-] c    connection status
    ctrl-] ?|h  this help

usage: console -d[band23cCft] [-l <count>] [TARGET]...
-d, --dump                     dump cached console output
-b, --baseio                   specifies baseio bmc console
-a, --all                      all node BMC consoles
-n, -0, --normal               specifies node BMC console (normal channel)
-d, -1, --debug                specifies node BMC console (debug channel)
-2, --chan2                    specifies node BMC console (channel 2)
-3, --chan3                    specifies node BMC console (channel 3)
-l, --lines=<count>            limit output to last <count> lines
-c, --clear                    clear cached output after dumping
-C, --CLEAR                    clear cached output without dumping
-f, --full                     full dump (default is since last reset)
-t, --tag                      prefix each line with source
TARGET                         console target

usage: console [-bnd23] -i <input> [TARGET]...
-i, --input=<input>            backdoor console input
-b, --baseio                   specifies baseio bmc console
-n, -0, --normal               specifies node BMC console (normal channel)
-d, -1, --debug                specifies node BMC console (debug channel)
-2, --chan2                    specifies node BMC console (channel 2)
-3, --chan3                    specifies node BMC console (channel 3)
TARGET                         console target

usage: console --help
--help                         display this help and exit

Note that the following character sequences are available interactively one a console session is started:

console: escape codes:                              
console:    ctrl-] s    steal console               
console:    ctrl-] r    release console             
console:    ctrl-] c    connection status           
console:    ctrl-] ?|h  this help

flashbios

Use the flashbios command to flash the latest BIOS located in the /work/bmc/common directory on your CMC. For an example of how this command is used, see “Upgrading System BIOS” in Chapter 2.

You can get a usage statement, as follows:

CMC:r1i1c> flashbios --help
Illegal option --
NAME
        flashbios -- Flash UV BIOS from CMC

SYNOPSIS
        flashbios [-e] [-n] [-p] [-o] <flashfile> [<target> [...<target>]]
        flashbios -r <flashfile>

DESCRIPTION
        The file specified by flashfile is flashed into the flash devices
        on all nodes of the UV system.  By default the system will be
        automatically reset after the flash completes.

        The BIOS image file <flashfile> must be located in the directory
        /work/bmc/common on the CMC.

        By default, BIOS is updated on all compute blades in the system.
        The flash can be restricted to a subset of the full system by
        specifying one or more targets. Some examples of blade targets:

                r1i23b4         blade 4 in the IRU @ rack 1, u-position 23
                r2i1b*          all blades in IRU @ rack 2i1
                r4i*            all blades in all IRUs in rack 4
                p2              all blades in partition 2

        (These are the same targets accepted by other CMC commands).
        Any number or combination of targets can be used.


        The following options are available:

        -e      Erase BIOS variables and BIOS scratch space while
                resetting the system.  This option will be ignored
                if '-n' is also specified.

        -n      Do not automatically reset the system.

        -o      Allow flashing across partitions in a multiple partition system

        -p      Power cycle after flashing.

        -r      Do not flash, instead report the Revision (BIOS banner) string
                from the BIOS image file.

hwcfg

The hwcfg command can be used to access hardware override variables.

CMC:r1i1c> hwcfg -a -v
BLADE_DISABLE=no
DEBUG_SW=0x0
HUB_CORE_SPEED=400
ICH_DISABLE=no
IORISER_DISABLE=no
MAX_CORES=0
NL5_CABLE_ENABLE=yes
NL5_ENABLE=yes
NL5_HUB2_WAR=no
NL5_NEAR_LB=no
NL5_RATE=6.25
NL5_SCRAMBLE=0x0
PARTITION=0
SMT_ENABLE=no
SOCKET_DISABLE=no

Here is an example showing a system with four partition.

uv32-cmc CMC:r1i1c> hwcfg -a -v
NL5_RATE=5.0
PARTITION=1 ................................................ 16/64 BMC(s)
PARTITION=2 ................................................ 16/64 BMC(s)
PARTITION=3 ................................................ 16/64 BMC(s)
PARTITION=4 ................................................ 16/64 BMC(s)

You can use hwcfg -c to clear the four partitions, as follows:

uv32-cmc CMC:r1i1c> hwcfg -c partition
PARTITION=0 <PENDING RESET>

You can get a usage statement, as follows:

CMC:r1i1c> hwcfg --help

usage: hwcfg  [-lhadcv] [var[=val]]... [--help] [TARGET]...

var[=val]                 variable [and value to set]
-l, --list                list variables available
-h, --hidden              include hidden variables
-a, --all                 show variable(s) regardless of override state
-d, --default             show variable(s) default value if overriden
-c, --clear               clear overridden variable(s) to default value
-v, --verbose             show per BMC output, repeat for maximum verbosity
--help                    display this help and exit, use with variable(s) to get specific help


log

Provides a log of various operations performed on the CMC.

You can get a usage statement, as follows:

uv44-cmc CMC:r001i01c> log --help

usage: log  [-pacewnidmr] [--help] [TARGET]...
-p, --panic               select log type
-a, --alert               select log type
-c, --critical            select log type
-e, --error               select log type
-w, --warning             select log type
-n, --notice              select log type
-i, --info                select log type
-d, --debug               select log type
-m, --merge               prevent merging of selected logs
-r, --reset               reset log
--help                    display this help and exit

power

The CMC power command allows you to power on, power off, reset, cycle, get status and invoke the kernel debugger (KDB). When using the power command, you no longer have to power up the individual rack unit (IRU). When you issue the power command, it checks to see if the IRU is powered on, if not, it will power it up first and then the compute blades.

You can get a usage statement, as follows:

CMC:r1i1c> power --help

usage: power [-vchosw] on|up [bmc] [--noio] [TARGET]...
on|up                     turn power on
bmc                       turn aux power on
--noio                    do not power on accessories (IO)
-v, --verbose             verbose output
-c, --clear               clear EFI variables (system/partition targets only)
-h, --hold                hold in reset
-o, --override            override partition check
-s, --single              single node boot
-w, --watch               watch boot progress

usage: power [-vo] off|down [bmc] [--noio] [--nochassis] [TARGET]...
off|down                  turn power off
bmc                       turn aux power off
--noio                    do not power off accessories (IO)
--nochassis               do not power off chassis power
-v, --verbose             verbose output
-o, --override            override partition check

usage: power [-vchosw] reset [bmc|iobmc] [TARGET]...
reset                     system reset
bmc|iobmc                 BMC reset
-v, --verbose             verbose output
-c, --clear               clear EFI variables (system/partition targets only)
-h, --hold                hold in reset
-o, --override            override partition check
-s, --single              single node boot
-w, --watch               watch boot progress

usage: power [-vchosw] cycle [bmc] [--noio] [--nochassis] [TARGET]...
cycle                     cycle power off on
bmc                       cycle aux power
--noio                    do not power cycle accessories (IO)
--nochassis               do not power cycle chassis power
-v, --verbose             verbose output
-c, --clear               clear EFI variables (system/partition targets only)
-h, --hold                hold in reset
-o, --override            override partition check
-s, --single              single node boot
-w, --watch               watch boot progress

usage: power [-v10ud] [status] [TARGET]...
status                    show power status
-v, --verbose             verbose output
-1, --on                  show only blades with on status
-0, --off                 show only blades with off status
-u, --unknown             show only blades with unknown status
-d, --disabled            show only blades with disabled status

usage: power [-ov] nmi|debug [TARGET]...
nmi|debug                 issue NMI
-o, --override            override partition check
-v, --verbose             verbose output
usage: power [-v] margin [high|low|norm|<value>] [TARGET]...
margin                    power margin control
high|low|norm|<value>     margin state
-v, --verbose             verbose output

usage: power cancel [TARGET]...
cancel                    cancel outstanding power action

usage: power --help
--help                    display this help and exit

sensor

Only valid for CMC data in this form. Use the sensor command to get system temperatures, fan speed, and voltage information and so on, as follows:

CMC:r1i1c> sensor

Use the command from the cmc or bmc, as follows:

cmc sensor
bmc sensor

uvcon

The uvcon command is now just an alias to the console command. See “console (uvcon)”.

version

Use the version command to determine the CMC firmware version, as follows:

uv44-cmc CMC:r001i01c> version
SGI Chassis Manager Controller, Firmware Rev. 1.3.16   [Bootloader 0.6.0]

You can also use the version command do determine the BMC firmware version, as follows:

uv44-cmc CMC:r001i01c> bmc version
==== r001i01b00 ====
SGI UV BMC, Firmware Rev. 1.3.20   [Bootloader 0.5.0, FPGA Rev. 0x41]
==== r001i01b01 ====
SGI UV BMC, Firmware Rev. 1.3.20   [Bootloader 0.5.0, FPGA Rev. 0x41]

You can also ssh to the BMC and use the version command, as follows:

uv44-cmc CMC:r001i01c> ssh bmc0

SGI UV BMC, Firmware Rev. 1.3.20

BMC:r001i01b00> version
SGI UV BMC, Firmware Rev. 1.3.20   [Bootloader 0.5.0, FPGA Rev. 0x41]

You can also ssh to BaseIO blade BMC and use the version command, as follows:

uv44-cmc CMC:r001i01c> ssh ibmc0

SGI UV BMC, Firmware Rev. 1.3.9
r001i01b00i> version
SGI Chassis Manager Controller, Firmware Rev. 1.3.9   [Bootloader 0.3.0]