Skip to main content
Cluster and storage switches

Install Cumulus Linux in ONIE mode

Contributors netapp-yvonneo netapp-jolieg

Follow this procedure to install Cumulus Linux (CL) OS when the switch is running in ONIE mode.

Note Cumulus Linux (CL) OS can be installed either when the switch is running ONIE or Cumulus Linux (see Install in Cumulus mode).
About this task

You can install Cumulus Linux using Open Network Install Environment (ONIE) that allows for automatic discovery of a network installer image. This facilitates the system model of securing switches with an operating system choice, such as Cumulus Linux. The easiest way to install Cumulus Linux with ONIE is with local HTTP discovery.

Note If your host is IPv6-enabled, make sure it is running a web server. If your host is IPv4-enabled, make sure it is running DHCP in addition to a web server.

This procedure demonstrates how to upgrade Cumulus Linux after the admin has booted in ONIE.

Example 1. Steps
Cumulus Linux 4.4.3
  1. Download the Cumulus Linux installation file to the root directory of the web server. Rename this file to: onie-installer.

  2. Connect your host to the management Ethernet port of the switch using an Ethernet cable.

  3. Power on the switch.

    The switch downloads the ONIE image installer and boots. After the installation completes, the Cumulus Linux login prompt appears in the terminal window.

    Note Each time Cumulus Linux is installed, the entire file system structure is erased and rebuilt.
  4. Reboot the SN2100 switch:

    cumulus@cumulus:mgmt:~$ sudo reboot
  5. Press the Esc key at the GNU GRUB screen to interrupt the normal boot process, select ONIE, and press Enter.

  6. On the next screen, select ONIE: Install OS.

  7. The ONIE installer discovery process runs searching for the automatic installation. Press Enter to temporarily stop the process.

  8. When the discovery process has stopped:

    ONIE:/ # onie-stop
    discover: installer mode detected.
    Stopping: discover...start-stop-daemon: warning: killing process 427:
    No such process done.
  9. If the DHCP service is running on your network, verify that the IP address, subnet mask, and the default gateway are correctly assigned:

    ifconfig eth0

    ONIE:/ # ifconfig eth0
    eth0   Link encap:Ethernet  HWaddr B8:CE:F6:19:1D:F6
           inet addr:10.233.204.71  Bcast:10.233.205.255  Mask:255.255.254.0
           inet6 addr: fe80::bace:f6ff:fe19:1df6/64 Scope:Link
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:21344 errors:0 dropped:2135 overruns:0 frame:0
           TX packets:3500 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:6119398 (5.8 MiB)  TX bytes:472975 (461.8 KiB)
           Memory:dfc00000-dfc1ffff
    
    ONIE:/ # route
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    
    default         10.233.204.1    0.0.0.0         UG    0      0      0   eth0
    10.233.204.0    *               255.255.254.0   U     0      0      0   eth0
  10. If the IP addressing scheme is manually defined, do the following:

    ONIE:/ # ifconfig eth0 10.233.204.71 netmask 255.255.254.0
    ONIE:/ # route add default gw 10.233.204.1
  11. Repeat step 9 to verify that the static information is correctly entered.

  12. Install Cumulus Linux:

    # onie-nos-install http://<web-server>/<path>/cumulus-linux-4.4.3-mlx-amd64.bin
    ONIE:/ # route
    
      Kernel IP routing table
    
      ONIE:/ # onie-nos-install http://<web-server>/<path>/cumulus-linux-4.4.3-mlx-amd64.bin
    
      Stopping: discover... done.
      Info: Attempting http://10.60.132.97/x/eng/testbedN,svl/nic/files/cumulus-linux-4.4.3-mlx-amd64.bin ...
      Connecting to 10.60.132.97 (10.60.132.97:80)
      installer            100% |*|   552M  0:00:00 ETA
      ...
      ...
  13. After the installation has completed, log in to the switch.

    cumulus login: cumulus
    Password: cumulus
    You are required to change your password immediately (administrator enforced)
    Changing password for cumulus.
    Current password: cumulus
    New password: <new_password>
    Retype new password: <new_password>
  14. Verify the Cumulus Linux version: net show version

    cumulus@cumulus:mgmt:~$ net show version
    NCLU_VERSION=1.0-cl4.4.3u4
    DISTRIB_ID="Cumulus Linux"
    DISTRIB_RELEASE=4.4.3
    DISTRIB_DESCRIPTION="Cumulus Linux 4.4.3”
Cumulus Linux 5.x
  1. Download the Cumulus Linux installation file to the root directory of the web server. Rename this file to: onie-installer.

  2. Connect your host to the management Ethernet port of the switch using an Ethernet cable.

  3. Power on the switch.

    The switch downloads the ONIE image installer and boots. After the installation completes, the Cumulus Linux login prompt appears in the terminal window.

    Note Each time Cumulus Linux is installed, the entire file system structure is erased and rebuilt.
  4. Reboot the SN2100 switch:

    cumulus@cumulus:mgmt:~$ sudo reboot
    .
    .
    GNU GRUB version 2.06-3
    +-------------------------------------------------------------------------+
    | Cumulus-Linux GNU/Linux                                                 |
    | Advanced options for Cumulus-Linux GNU/Linux                            |
    | ONIE                                                                    |
    |                                                                         |
    |                                                                         |
    |                                                                         |
    |                                                                         |
    |                                                                         |
    |                                                                         |
    |                                                                         |
    |                                                                         |
    +-------------------------------------------------------------------------+
  5. Press the Esc key at the GNU GRUB screen to interrupt the normal boot process, select ONIE, and press Enter.

    .
    .
    Loading ONIE ...
    
    GNU GRUB version 2.02
    +-------------------------------------------------------------------------+
    | ONIE: Install OS                                                        |
    | ONIE: Rescue                                                            |
    | ONIE: Uninstall OS                                                      |
    | ONIE: Update ONIE                                                       |
    | ONIE: Embed ONIE                                                        |
    |                                                                         |
    |                                                                         |
    |                                                                         |
    |                                                                         |
    |                                                                         |
    +-------------------------------------------------------------------------+

    Select ONIE: Install OS.

  6. The ONIE installer discovery process runs searching for the automatic installation. Press Enter to temporarily stop the process.

  7. When the discovery process has stopped:

    ONIE:/ # onie-stop
    discover: installer mode detected.
    Stopping: discover...start-stop-daemon: warning: killing process 427:
    No such process done.
  8. Configure the IP address, subnet mask, and the default gateway:

    ifconfig eth0

    ONIE:/ # ifconfig eth0
    eth0   Link encap:Ethernet  HWaddr B8:CE:F6:19:1D:F6
           inet addr:10.233.204.71  Bcast:10.233.205.255  Mask:255.255.254.0
           inet6 addr: fe80::bace:f6ff:fe19:1df6/64 Scope:Link
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:21344 errors:0 dropped:2135 overruns:0 frame:0
           TX packets:3500 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:6119398 (5.8 MiB)  TX bytes:472975 (461.8 KiB)
           Memory:dfc00000-dfc1ffff
    ONIE:/ #
    ONIE:/ # ifconfig eth0 10.228.140.27 netmask 255.255.248.0
    ONIE:/ # ifconfig eth0
    eth0   Link encap:Ethernet HWaddr B8:CE:F6:5E:05:E6
           inet addr:10.228.140.27 Bcast:10.228.143.255 Mask:255.255.248.0
           inet6 addr: fd20:8b1e:b255:822b:bace:f6ff:fe5e:5e6/64 Scope:Global
           inet6 addr: fe80::bace:f6ff:fe5e:5e6/64 Scope:Link
           UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
           RX packets:18813 errors:0 dropped:1418 overruns:0 frame:0
           TX packets:491 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:1339596 (1.2 MiB) TX bytes:49379 (48.2 KiB)
           Memory:dfc00000-dfc1ffff
    ONIE:/ # route add default gw 10.228.136.1
    ONIE:/ # route
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    
    default         10.228.136.1    0.0.0.0         UG    0      0      0   eth0
    10.228.136.1    *               255.255.248.0   U     0      0      0   eth0
  9. Install Cumulus Linux 5.4:

    ONIE:/ # route
    
      Kernel IP routing table
    
      ONIE:/ # onie-nos-install http://<web-server>/<path>/cumulus-linux-5.4-mlx-amd64.bin
    
      Stopping: discover... done.
      Info: Attempting http://10.60.132.97/x/eng/testbedN,svl/nic/files/cumulus-linux-5.4-mlx-amd64.bin ...
      Connecting to 10.60.132.97 (10.60.132.97:80)
      installer            100% |*|   552M  0:00:00 ETA
      ...
      ...
  10. After the installation has completed, log in to the switch.

    cumulus login: cumulus
    Password: cumulus
    You are required to change your password immediately (administrator enforced)
    Changing password for cumulus.
    Current password: cumulus
    New password: <new_password>
    Retype new password: <new_password>
  11. Verify the Cumulus Linux version: nv show system

    cumulus@cumulus:mgmt:~$ nv show system
    operational         applied              description
    ------------------- -------------------- ---------------------
    hostname            cumulus              cumulus
    build               Cumulus Linux 5.4.0  system build version
    uptime              6 days, 13:37:36     system uptime
    timezone            Etc/UTC              system time zone
  12. Create a new user and add this user to the sudo group. This user only becomes effective after the console/SSH session is restarted.

    sudo adduser --ingroup netedit admin

    cumulus@sw1:mgmt:~$ sudo adduser --ingroup netedit admin
    [sudo] password for cumulus:
    Adding user 'admin' ...
    Adding new user 'admin' (1001) with group `netedit' ...
    Creating home directory '/home/admin' ...
    Copying files from '/etc/skel' ...
    New password:
    Retype new password:
    passwd: password updated successfully
    Changing the user information for admin
    Enter the new value, or press ENTER for the default
    Full Name []:
    Room Number []:
    Work Phone []:
    Home Phone []:
    Other []:
    Is the information correct? [Y/n] y
    
    cumulus@sw1:mgmt:~$ sudo adduser admin sudo
    [sudo] password for cumulus:
    Adding user `admin' to group `sudo' ...
    Adding user admin to group sudo
    Done.
    cumulus@sw1:mgmt:~$ exit
    logout
    Connection to 10.233.204.71 closed.
    
    [admin@cycrh6svl01 ~]$ ssh admin@10.233.204.71
    admin@10.233.204.71's password:
    Linux sw1 4.19.0-cl-1-amd64 #1 SMP Cumulus 4.19.206-1+cl4.4.1u1 (2021-09-09) x86_64
    Welcome to NVIDIA Cumulus (R) Linux (R)
    
    For support and online technical documentation, visit
    http://www.cumulusnetworks.com/support
    
    The registered trademark Linux (R) is used pursuant to a sublicense from LMI, the exclusive licensee of Linus Torvalds, owner of the mark on a world-wide basis.
    admin@sw1:mgmt:~$
  13. Add additional user groups for the admin user to access nv commands:

    cumulus@cumulus:mgmt:~$ sudo adduser admin nvshow
         [sudo] password for cumulus:
         Adding user `admin' to group `nvshow' ...
         Adding user admin to group nvshow
         Done.

    See NVIDIA User Accounts for more information.