-
Notifications
You must be signed in to change notification settings - Fork 39
Installation
The operating system shipped with the switch is a Fedora Remix with a
Rawhide kernel, which tracks the mainline
tree. Refer to the
Installing a New Kernel page for more
information regarding kernel versioning. It is possible to use other Linux
distributions, including unmodified Fedora, which is available here.
By default, the switch comes pre-installed with ONIE, which "defines an open 'install environment' for bare metal network switches." However, PXE installation is also possible. This document describes both methods.
Note: Installing with PXE uninstalls ONIE, which might be required by other operating systems. Re-installing ONIE is not supported.
- Getting the Installation Files
- Default Credentials
- Installing with ONIE
- Preparing the Installation
- Performing the Installation
- Uninstalling
- Installing with PXE
- Preparing the Installation
- Performing the Installation
- Customizing the Installation
- Troubleshooting
- Automatic Module Loading
The installation files are available here and are indexed by the kernel version used. Refer to the Overview page for a list of features by version.
The following files are included in the provided tarball:
- An ISO file of the Fedora Remix
- A kickstart file to automate the installation
- An ONIE installer of the Fedora Remix, if using ONIE
- A matching firmware file
User: root Password: switchdevftw
The root password can be easily changed by editing the rootpw
command in the
kickstart file. It is highly recommended to do so!
The ONIE project describes a variety of installation options. This section describes installation using an HTTP server accessible through the management port on the switch.
### Preparing the Installation The extracted contents of the ISO file, the ONIE installer and the kickstart file (e.g. `install-onie.ks`), should all be accessible through an HTTP server.To extract the contents from the ISO file, you must first mount it. Run:
$ mount -o loop,ro -t iso9660 /path/file.iso /path/iso/directory
Then copy the contents over to the HTTP server directory:
$ cp -r /path/iso/directory /path/http/server
Finally, edit the url
command in the kickstart file to point to the
extracted ISO directory.
Note: The ONIE installer assumes the kickstart file is named
install-onie.ks
and that it is located in a directory called ks
,
placed next to the ONIE installer. For example:
├── ks
│ ├── install-onie.ks
├── mlxsw-4.6.0-0.rc7.git1.1-ONIE-installer.bin
Reboot the switch and select ONIE: Resuce
in GRUB menu as the discovery
phase is unnecessary:
+----------------------------------------------------------------------------+
| ONIE: Install OS |
|*ONIE: Rescue |
| ONIE: Uninstall OS |
| ONIE: Update ONIE |
| ONIE: Embed ONIE |
| |
In ONIE prompt type:
ONIE:/ # onie-nos-install http://server/provided-ONIE-installer.bin
From this point on, the installation is completely automatic. Once it is complete, the switch reboots into the newly installed system.
### UninstallingReboot the switch and select ONIE
in the GRUB menu:
Generic (4.6.0-0.rc7.git1.1.fc25.x86_64) 23 (Generic)
Generic (0-rescue-1c9ab09884c946649fa3e1688040abde) 23 (Generic)
ONIE
Then select ONIE: Uninstall OS
. This removes the partitions used by the
OS, but keeps ONIE installed, so that a new OS can be installed using
it.
The instructions below assume that a configured PXE server is already available on the network and that the installation files are available over HTTP. However, other methods are possible.
### Preparing the InstallationAs with the ONIE installation, the extracted contents of the ISO file and the
kickstart file (e.g. install-pxe.ks
) should all be accessible via an HTTP
server.
To extract the contents from the ISO file, first mount it. Run:
$ mount -o loop,ro -t iso9660 /path/file.iso /path/iso/directory
And copy the contents over to the HTTP server directory. Run:
$ cp -r /path/iso/directory /path/http/server
In addition, the kernel executable and the initrd image should be copied over to the PXE server. Run:
$ cp /path/iso/directory/images/pxeboot/{initrd.img,vmlinuz} /tftpboot/directory/
Next, edit the url
command in the kickstart file to point to the extracted ISO
directory.
Finally, add the following lines to the /tftpboot/pxelinux.cfg/default
file
on the PXE server:
LABEL MY_LABEL
kernel directory/vmlinuz
append initrd=directory/initrd.img inst.ks=http://server/path/install-pxe.ks console=ttyS0,115200n8 modprobe.blacklist=mlxsw_pci
Make sure network boot is enabled in the BIOS (Ctrl+b) and reboot the switch.
Once up, select the recently configured PXE label (e.g. MY_LABEL
) and the
automated installation will then begin.
Once done, the switch will reboot into the newly installed system.
Customizing the Installation ----------------------------As explained above, the installation is automated using kickstart files. These files can be easily edited to provide different answers during the installation, and to select different packages to install by default. Please refer to the official kickstart documentation for more info.
To generate different ISOs with a different package selection it's possible to use mock and pungi as explained in Fedora's wiki.
Creating an ONIE-compatible installer from an ISO image is explained in ONIE's Github repository.
Troubleshooting --------------- ### Automatic Module LoadingIf the driver is not loaded following a reboot, then it's possible the driver isn't included in the initramfs. To verify that, run:
$ lsinitrd /boot/initramfs-$(uname -r).img | grep mlxsw
drwxr-xr-x 2 root root 0 Feb 3 22:28 usr/lib/modules/4.7.0-0.rc4.git2.2.fc25.x86_64/kernel/drivers/net/ethernet/mellanox/mlxsw
-rw-r--r-- 1 root root 20132 Feb 3 22:28 usr/lib/modules/4.7.0-0.rc4.git2.2.fc25.x86_64/kernel/drivers/net/ethernet/mellanox/mlxsw/mlxsw_core.ko.xz
-rw-r--r-- 1 root root 55976 Feb 3 22:28 usr/lib/modules/4.7.0-0.rc4.git2.2.fc25.x86_64/kernel/drivers/net/ethernet/mellanox/mlxsw/mlxsw_spectrum.ko.xz
-rw-r--r-- 1 root root 18560 Feb 3 22:28 usr/lib/modules/4.7.0-0.rc4.git2.2.fc25.x86_64/kernel/drivers/net/ethernet/mellanox/mlxsw/mlxsw_switchx2.ko.xz
If the output isn't similar to the above, then add the missing drivers to the
initramfs. Assuming mlxsw_spectrum
is missing:
$ dracut -f --add-drivers mlxsw_spectrum /boot/initramfs-$(uname -r).img
General information
System Maintenance
Network Interface Configuration
- Switch Port Configuration
- Netdevice Statistics
- Persistent Configuration
- Quality of Service
- Queues Management
- How To Configure Lossless RoCE
- Port Mirroring
- ACLs
- OVS
- Resource Management
- Precision Time Protocol (PTP)
Layer 2
Network Virtualization
Layer 3
- Static Routing
- Virtual Routing and Forwarding (VRF)
- Tunneling
- Multicast Routing
- Virtual Router Redundancy Protocol (VRRP)
Debugging