Updating Shelf Information

If the shelf name or COB-specific Shelf IP Info is changed, each COB will need to have its cached value updated. This is most easily done by issuing the COB Cold Data Reset command. This is the moral equivalent of removing the board from the slot, though it does not actually remove Management Power. This command cycles the COB payload power (DPMs, DTM, RTM, etc) and invalidates all cached state in the IPMC before resetting the IPMC. After this the IPMC will reacquire the Shelf Info from the Shelf Manager, and the RCEs will get these refreshed values when they boot.

Until there is an SDK command to send the Cold Data Reset command (0xF9), one can use ipmitool as described on Interacting with the COB IPMC via the Shelf Manager.

Example Shelf Manager

Minimum requirements

  • Network connectivity
  • A name for the shelf
  • Many other configuration parameters exist which can be set up as desired
  • See the manual for details
  • An older version (but newer than the version we have installed on most of our shelf managers) of the manual is here

Shelf Manager setup

There are multiple ways to do this. One method is described here.

  • Get a 9 pin serial cable and connect one end to the shelf manager module and the other to a computer
  • Install a remote terminal server program
    • We use minicom with a USB hub
    • In the example below usb7 is the port to which the computer end of the serial cable is attached
  • Establish communications with the shelf manager

    $ minicom usb7
    
    
    Welcome to minicom 2.1
    
    OPTIONS: History Buffer, F-key Macros, Search History Buffer, I18n 
    Compiled on Jul 26 2006, 06:38:12.
    
    Press CTRL-A Z for help on special keys
    
    
    shmm500 login: root
    Password: 
    # 
    
    • Use the root account
    • The password is initially blank
      • It can be changed if desired
  • Provide the shelf manager with a network configuration

    clia setlanconfig 1 3 "172.21.6.22"
    clia setlanconfig 1 6 "255.255.255.0"
    clia setlanconfig 1 12 "172.21.6.1"
    
    • The above example sets the IP address, the subnet mask and the default gateway IP address, respectively
  • Give the shelf a name

    clia shelfaddress "darwin"
    
  • If you need to find the MAC address of the Shelf Manager you can execute

    clia getlanconfig 1 5
    
  • Add the name/IP combination to the DNS configuration
    • Edit /var/named/lab1.reg.zone
    • Add a line

      darwin-sm    A    172.21.6.22
      
    • Restart the service

      sudo service named restart
      
  • Reboot the shelf manager
    • From the '#' prompt, enter:

      reboot
      
    • Another method is to toggle the board's extraction handle

Testing the setup

Any of the following tests should be sufficient.

  • Try logging in over the network

    ssh root@darwin-sm
    
  • The ipmi_ commands should now work
  • Try using the web interface

    konqueror http://darwin-sm
    
  • ping the board

Setting the Shelf IP Information

Once the Shelf Manager is set and you can ping it, you will be able to set the COB-specific Shelf IP Information. There are 3 commands in the SDK which manipulate the Shelf IP info, they are display_shelf_ip_info, set_shelf_ip_info, and delete_shelf_ip_info. The help for set_shelf_ip_info describes the parameters available. 

 

Usage is: set_shelf_ip_info --shelf <shelf_ip> [OPTIONS]

Required arguments:
 -s,--shelf=SHELF_IP                 IP address of shelf with FRU info to set

Optional arguments:
 When specified w/o parameters, the optional arguments will assume 
 their default values. When omitted, the values present in the Shelf
 FRU Information will be retained.

 -i, --vlan=VLAN_ID                  VLAN ID (12-bits)
 -u, --untagged=DISCARD              When DISCARD is 1, incoming
                                     untagged frames will be discarded.
 -t, --tagged=DISCARD                When DISCARD is 1, incoming
                                     tagged frames will be discarded.
 -x, --boundary-violations=DISCARD   When DISCARD is 1, incoming
                                     boundary violations are discarded.
 -b, --group-base=BASE_IP            BASE_IP is the base address for
                                     the block of addresses available
                                     to the shelf. Host ID of all ones
                                     or all zeros are not permitted.
 -e, --group-end=END_IP              END_IP is the end address for
                                     the block of addresses available
                                     to the shelf. Host ID of all ones
                                     or all zeros are not permitted.
 -m, --subnet-mask=SUBNET_MASK       SUBNET_MASK is the subnet mask
                                     for the shelf. It defines the
                                     network assigned to the shelf.
 -g, --gateway=GATEWAY_IP            GATEWAY_IP is the IP address
                                     of the  gateway


 -d, --dry-run                       When this option is used, the
                                     nothing is written back to the shelf.
 -f, --force                         When this option is used, write to
                                     the shelf even if there are no changes.
                                     When there is no record present in the
                                     shelf, this can be used w/o any other
                                     configuration options to create a 
                                     default record
 -v, --verbose=VERBOSITY             VEBOSITY can range from 1 to 3.

Return Value:
 0 if OK
 1 if there is a problem with the arguments provided
 2 if there are problems communicating with the shelf

Applying updates

  • TBD
  • No labels