Upgrade the SLX-OS Software with ONIE

Before you begin

  • Decide on a supported method of transferring the SLX-OS software (firmware).
    • Local or remote mounted file system, such as:
      • Prepared USB 3.0 disk inserted into the device
      • Remote NFS share mounted inside the ONIE shell
    • HTTP
    • FTP (anonymous server access only)
    • TFTP
  • Throughout the installation process, a serial console must be connected to the device.
  • The out-of-band management Ethernet interface must be connected if you are using a remote NFS share, HTTP, FTP, or TFTP:
    • Availability of a DHCP server on the LAN for this Ethernet interface may allow you to skip the need to manually configure the ONIE to connect to one of the network-based methods of transferring the software.
    • If a DHCP server is not available, you need the default gateway, network mask, and an IP address that is not in use on the network to which the Ethernet interface is connected.
  • For step 6, have a method of storing the recovered startup-config to an external server using SCP or a mounted USB device.

About this task

Perform the following steps from the serial console.

Procedure

  1. Access the ONIE Recovery Shell.
    1. Reboot the SLX device using the CLI or power-cycle.
    2. When the BIOS splash screen is displayed, repeatedly press the down arrow key to access the GRUB boot menu and stop the boot timer.
    3. Select ONIE from the first menu, and immediately press the down arrow to stop the boot timer.
    4. Select ONIE: Rescue, and press Enter when prompted.
      The ONIE shell opens. At this point, you can use ONIE for recovering or upgrading the SLX device.
  2. If you have a DHCP server running on the network, skip to step 5.
  3. If you are using a USB 3.0 device to recover the SLX, skip to step 7.
  4. Configure static networking on eth0 for ONIE.
    1. Add the IP address to the eth0 interface using the ip addr add / dev eth0 command.
      ONIE:/ # ip addr add 10.25.101.199/22 dev eth0
    2. Configure the default gateway using the ip route add default via <GATEWAY>_IP dev eth0 command.
      ONIE:/ # ip route add default via 10.25.100.1 dev eth0
  5. Check network connectivity to the server hosting the software.
    1. Ping the remote server that will be used to transfer the software.
      PING 10.25.101.61 (10.25.101.61): 56 data bytes
      64 bytes from 10.25.101.61: seq=0 ttl=64 time=0.259 ms
      64 bytes from 10.25.101.61: seq=1 ttl=64 time=0.252 ms
      64 bytes from 10.25.101.61: seq=2 ttl=64 time=0.300 ms
      64 bytes from 10.25.101.61: seq=3 ttl=64 time=0.291 ms
      64 bytes from 10.25.101.61: seq=4 ttl=64 time=0.247 ms
      
      --- 10.25.101.61 ping statistics ---
      5 packets transmitted, 5 packets received, 0% packet loss
      round-trip min/avg/max = 0.247/0.269/0.300 ms
    2. If the ping fails, use the ip addr, ip route show, and ifconfig commands to gather information on the connection state, and then resolve the issue using the commands in step 4.
      Note

      Note

      If you plan to use a network-based recovery (such as NFS, FTP, HTTP, or TFTP), ensure that the network is operational and that the host with the software is reachable before proceeding with the rest of this procedure.
  6. (Optional for SLX 9250 and SLX 9150 only) Recover the startup-config file if you have no backups.
    You cannot perform this step if you have started the onie-nos-install command.
    1. Run the mkdir /slxfs and mount /dev/sda6 /slxfs commands.
      You may see a warning, but the file system should mount.
      ONIE:/ # mkdir /slxfs
      ONIE:/ # mount /dev/sda6 /slxfs
      EXT4-fs (sda6): couldn't mount as ext3 due to feature incompatibilities
      ONIE:/ #
    2. Copy the startup-config to the USB 3.0 device or remote server using the appropriate command and information.
      ONIE:/ # scp /slxfs/var/config/vcs/scripts/startup-config
      user@10.25.101.61:~/device.cfg
      Host 10.25.101.61 is not in the trusted hosts file.
      Do you want to continue connecting? (y/n) y
      user@10.25.101.61's password:
      startup-config                                       100% 8451     8.3KB/s  00:00    
      ONIE:/ # cp /slxfs/var/config/vcs/scripts/startup-config
      /media/brocade/config/device.cfg
      ONIE:/ #
    3. Unmount the SLX OS partition using the umount /slxfs command.
      Ensure that the console session is at the root of the file system before running the umount command.
    Note

    Note

    Steps 7-11 describe the options for recovery. Choose one, depending on whether you configured networking or are using the USB 3.0 device. For SLX 9540 devices, use only the NFS or USB-based recovery. These devices do not support the onie-nos-install command.
  7. Perform a USB disk-based recovery.
    1. On a computer, download and decompress the software tarball using the recommended tools.
    2. Transfer the resulting directory to an inserted USB 3.0 device.
    3. Eject or unmount the USB device and insert it into the correct port of the SLX device.
    4. Run the fdisk -l command, and locate the device identifier of the inserted USB device.
      The USB device is generally the last device listed. In the following example, /dev/sdb is the USB device, and /dev/sdb1 is the main partition you are working with.
      ONIE:/ # fdisk -l
      Disk /dev/sda: 128.0 GB, 128035676160 bytes
      256 heads, 63 sectors/track, 15505 cylinders
      Units = cylinders of 16128 * 512 = 8257536 bytes
      
         Device Boot      Start         End      Blocks  Id System
      /dev/sda1               1      15506   125034839+ ee EFI GPT
      Disk /dev/sdb: 123.0 GB, 123010547712 bytes
      47 heads, 3 sectors/track, 1703936 cylinders
      Units = cylinders of 141 * 512 = 72192 bytes
      
         Device Boot      Start         End      Blocks  Id System
      /dev/sdb1                   15     1703936   120126464  83 Linux
      ONIE:/ #
    5. Run the mkdir /media and mount /dev/ /media commands.
      You may see a warning, but the disk should mount.
      ONIE:/ # mkdir /media
      ONIE:/ # mount /dev/sdb1 /media
      EXT4-fs (sdb1): couldn't mount as ext3 due to feature incompatibilities
      ONIE:/ #
    6. Change directory into the SLX-OS software that you want to install and start the installation using the onie-nos-installer file:// or the ./install_pbr/onie-installer-avalanche command.
    7. Select the binary file for the SLX device you are working on.
      Note

      Note

      For SLX 9640 devices, you must select the SLXOS_SWBD4001-20.1.1-ONIE.bin file.
      ONIE:/ # cd /media/brocade/firmware/slxos20.1.1
      ONIE:/media/brocade/firmware/slxos20.1.1 # ls
      SLXOS_SWBD3006-20.1.1-ONIE.bin
      SLXOS_SWBD4001-20.1.1-ONIE.bin
      SWBD2500
      SWBD2900
      SWBD4000
      breeze_tools
      breeze_tools.tgz
      common
      install_cr
      install_pbr
      libbrcmsdk.a.SWBD3006.tgz
      libbrcmsdk.a.SWBD4000.tgz
      libbrcmsdk.a.SWBD4001.tgz
      oss-binaries-x86_64-ubuntu-14.04-rootfs.tar.gz
      preinst
      pubkey.pem
      release.xlist
      signature2.tar
      signature2.tar.sig
      slx20.1.1_mib.tar.gz
      slx20.1.1_proto_models.tar.gz
      slx20.1.1_yang.tar.gz
      ONIE:/media/brocade/firmware/slxos20.1.1 # onie-nos-install
      file://SLXOS_SWBD3006-20.1.1-ONIE.bin
      discover: Rescue mode detected. No discover stopped.
      <further output omitted>
      The SLX device reboots and loads into SLX-OS with no further user input.
  8. Perform an NFS-based recovery.
    1. On a Linux device, configure a NFS share, download and decompress the software tarball using the recommended tools, and move the resulting directory to the root of the NFS share.
    2. On the SLX device, configure and verify network connectivity to the server.
    3. Run the mkdir /media and mount :/path/to/nfs/share/ /media commands.
      If you get an error, troubleshoot the mount command. You may need more parameters or a more explicit path.
      ONIE:/ # mkdir /media
      ONIE:/ # mount -o tcp,nolock,rsize=32768,wsize=32768 10.31.2.100:/builds/
      /media
      ONIE:/ #
    4. Change directory into the software you want to install, and start the installation using the onie-nos-installer file:// or the ./install_pbr/onie-installer-avalanche command.
    5. Select the binary file for the SLX device you are working on.
      Note

      Note

      For SLX 9640 devices, you must select the SLXOS_SWBD4001-20.1.1-ONIE.bin file.
      ONIE:/ # cd /media/slxos/slxos20.1.1/slxos20.1.1/
      ONIE:/media/slxos/slxos20.1.1/slxos20.1.1 # ls
      SLXOS_SWBD3006-20.1.1-ONIE.bin
      SLXOS_SWBD4001-20.1.1-ONIE.bin
      SWBD2500
      SWBD2900
      SWBD4000
      breeze_tools
      breeze_tools.tgz
      common
      install_cr
      install_pbr
      libbrcmsdk.a.SWBD3006.tgz
      libbrcmsdk.a.SWBD4000.tgz
      libbrcmsdk.a.SWBD4001.tgz
      oss-binaries-x86_64-ubuntu-14.04-rootfs.tar.gz
      preinst
      pubkey.pem
      release.xlist
      signature2.tar
      signature2.tar.sig
      slx20.1.1_mib.tar.gz
      slx20.1.1_proto_models.tar.gz
      slx20.1.1_yang.tar.gz
      ONIE:/media/slxos/slxos20.1.1/slxos20.1.1 # onie-nos-install
      file://SLXOS_SWBD3006-20.1.1-ONIE.bin
      discover: Rescue mode detected. No discover stopped.
      <further output omitted>
      This process takes approximately 15 to 20 minutes to complete. When the process is complete, the SLX reboots and loads into SLX-OS with no further user input.
  9. (Not supported for SLX 9540) Perform an HTTP-based recovery.
    1. On a web server, download and decompress the software tarball using the recommended tools and move the resulting directory to the root of the web server.
    2. Modify the permissions of the directory to allow access for the web server daemon.
    3. Verify that the software directory is accessible by using a web browser to access the directory.
    4. On the SLX device, configure and verify network connectivity to the server.
    5. Run the onie-nos-install http://<URL_TO_BIN> command with the URL to the applicable binary for the SLX device.
      ONIE:/ # onie-nos-install
      http://10.25.101.70/slxos20.1.1/SLXOS_SWBD3006-20.1.1-ONIE.bin
      discover: Rescue mode detected. No discover stopped.
      Info: Attempting http://10.25.101.70/slxos20.1.1/SLXOS_SWBD3006-20.1.1
      -ONIE.bin...
      Connecting to 10.25.101.70 (10.25.101.70:21)
      installer            100% *******************************|  1848M  0:00:00 
      ETA
      ONIE: Executing installer: http://10.25.101.70/slxos20.1.1/SLXOS_SWBD3006-
      20.1.1-ONIE.bin
      <further output omitted>
  10. (Not supported for SLX 9540) Perform an FTP-based recovery.
    1. On an FTP server, download and decompress the software tarball using the recommended tools and move the resulting directory to the root of the web server.
      Modify the permissions of the directory to allow access for the FTP server daemon. The FTP server must allow anonymous access.
    2. Verify that the software directory is accessible by using an FTP client to access the directory.
    3. On the SLX device, configure and verify network connectivity to the server.
    4. Run the onie-nos-install ftp://<path/to/bin> command with the URL to the applicable binary for the SLX device.
      ONIE:/ # onie-nos-install
      ftp://10.25.101.70/pub/slxos20.1.1/SLXOS_SWBD3006-20.1.1-ONIE.bin
      discover: Rescue mode detected. No discover stopped.
      Info: Attempting ftp://10.25.101.70/pub/slxos20.1.1/SLXOS_SWBD3006-20.1.1
      -ONIE.bin...
      Connecting to 10.25.101.70 (10.25.101.70:21)
      installer            100%|*******************************|  1848M  0:00:00
      ETA
      ONIE: Executing installer: ftp://10.25.101.70/pub/slxos20.1.1/SLXOS_SWBD3006-
      20.1.1-ONIE.bin
      <further output omitted>
  11. (Not supported for SLX 9540) Perform a TFTP-based recovery.
    1. On a TFTP server, download and decompress the software tarball using the recommended tools and move the resulting directory to the root of the TFTP server.
    2. Modify the permissions of the directory to allow access for the TFTP server daemon.
    3. On the SLX device, configure and verify network connectivity to the server.
      TFTP may appear to be non-operational while it transfers the file.
    4. Run the onie-nos-install tftp://<path/to/bin> command with the URL to the applicable binary for the SLX device.
      ONIE:/ # onie-nos-install tftp://10.25.101.60/slxos20.1.1/SLXOS_SWBD3006-
      20.1.1-ONIE.bin
      discover: Rescue mode detected. No discover stopped. 
      Info: Attempting tftp://10.25.101.60/slxos20.1.1/SLXOS_SWBD3006-20.1.1
      -ONIE.bin ...
      slxos20.1.1/SL   0% |                    |   873k            0:36:07 ETA 
      <output omitted> 
      ONIE: Executing installer: tftp://10.25.101.60/slxos20.1.1/SLXOS_SWBD3006-
      20.1.1-ONIE.bin
      <further output omitted>