Fabric-wide Firmware Download

Use this procedure to upgrade the firmware of SLX devices in a Clos fabric.

This is the recommended method for upgrading the firmware of devices in a Clos fabric. It describes how to upgrade the device of standby EFA node and MCT leaf pairs, force a failover to change the active node to standby, and then upgrade the SLX of new standby node and remaining MCT leaf pairs.

To upgrade firmware in a non-Clos configuration, see Upgrade Device Firmware in a High Availability Deployment.

  1. On the TPVM, determine which EFA node is the standby node.
    1. Run the EFA efactl status script (or the efa status command, as an alternative).
      $ efa status
      +-----------+---------+--------+ 
      | Node Name | Role    | Status | 
      +-----------+---------+--------+ 
      | tpvm1     | active  | up     | 
      +-----------+---------+--------+ 
      | tpvm2     | standby | up     | 
      +-----------+---------+--------+ 
      
  2. Prepare and run the firmware download on the devices in the fabric, in batches. In batch-1, add the device that hosts the standby node and devices on right side of the fabric. The diagram that follows illustrates the right and left devices in the batches of a fabric.
    Click to expand in new window
    Batches for fabric-wide update
    Batches for fabric-wide update
    1. Prepare the firmware download.
      $ efa inventory device firmware-download prepare add 
      --ip <device IPs separated by comma> --firmware-host <IP of firmware download host> 
      --firmware-directory <path to target firmware build> 
      
      The command returns the following information in a table: IP address, host name, model, chassis name, ASN, role, current firmware, firware host, firmware directory, target firmware, and last update time.
    2. Download the firmware with or without the –noAutoCommit and –noMaintMode options, as desired.
      $ efa inventory device firmware-download execute 
      --fabric <fabric name> --noAutoCommit –noMaintMode 
      
      Firmware Download Execute [success] 
      
      --noAutoCommit    Configure Auto commit in Firmware Download 
      --noMaintMode     Configure Maintenance Mode in Firmware Download 
    3. Monitor the progress of the firmware download.
      $ efa inventory device firmware-download show 
      --fabric <fabric name> 
    4. Repeat step c until the firmware download is complete.
      Each time you repeat step c, the command returns a table that details the progress of the firmware download. The download is complete when the Update State column shows Completed and the Status column shows Firmware Not Committed when –noAutoCommit is used and Firmware Committed without –noAutoCommit.
  3. Perform a high availability failover.
    1. On the device that hosts the active node, stop and start the TPVM to initiate a failover.
      device# tpvm stop
      stop succeeds
      
      device# tpvm start
      start succeeds
      After failover, the active node becomes the standby node.
  4. In batch-2, add the device that hosts the standby node (previously Active) and devices on the left side of the fabric. This should be executed from the current Active EFA. Repeat steps 2a through 2d to download firmware on devices in batch-2.
    The download is complete when the Update State column shows Completed on all devices. The Status column shows Firmware Not Committed when –noAutoCommit is used and Firmware Committed without –noAutoCommit.
  5. Commit the firmware across all devices in the fabric.
    $ efa inventory device firmware-download commit –fabric <fabric name> 
    
    OR 
    
    $ efa inventory device firmware-download commit –ip <IP address of all devices in fabric>
    The download is complete when the Update State column shows Completed on all devices and the Status column shows Firmware Committed.