RBFS Installation
Overview
RBFS software images are hosted in the RtBrick Image Store, where users can download and install role-specific images on supported hardware platforms. The Image Store provides the latest RBFS releases. For a complete list of supported hardware platforms, see the Supported Platforms section in the Platform Guide.
RBFS is also be delivered as a virtual machine image with limited functionalities for testing purposes. This document does not include information related to RBFS VM image deployments. For information about RBFS VM image deployments, see RBFS VM Image.
RBFS Installation Methods
RBFS supports multiple installation methods to accommodate different deployment requirements. Choose the method that best fits your system environment. You can install RBFS using either following manual installation steps or through Zero Touch Provisioning (ZTP) on a bare-metal switch. ONIE serves as the foundation for initial installation methods and provides a standardized environment for deploying RBFS.
This document provide information about the various RBFS installation methods. At a high level, RBFS supports two installation approaches. ONIE-based installation for initial installation on a bare-metal system, and RBFS-based installation for subsequent installation and upgrade operations. RBFS-based installation methods can be used only if RBFS is already present on the system.
| RBFS supports software reinstallations, upgrades, and other software installation tasks using CLI commands after the initial ONIE-based installation. While the ONIE-based installation methods can technically be used for reinstallations and upgrades, it is recommended to use the RBFS-based methods for their ease of use. |
The following diagram provides a high-level overview of the RBFS installation methods.
ONIE-Based Installation Methods
The ONIE-based installation methods include:
Zero Touch Provisioning: This is a fully automated installation method that enables a device to fetch installation instructions and install RBFS without manual intervention. For information on the automated installation process, see section RBFS Automated Installation (Zero Touch Provisioning).
Manual Installation: Manual installation includes two different methods:
-
Using a USB drive with the installer image: Install RBFS using a USB drive containing the RBFS installer image. This method is used when network-based installation is not available. For detailed step-by-step instructions on the installation using a USB thumb drive, see section Installing RBFS Using a USB Thumb Drive.
-
Using the URL of the remotely hosted installer image: Install RBFS by providing an HTTP URL to the RBFS installer image. ONIE downloads the image from the specified URL and installs it on the device. For detailed step-by-step instructions on the installation using the URL of the remotely hosted installer image, see section Using the URL of the remotely hosted installer image.
RBFS-Based Installation Methods
RBFS provides CLI commands for subsequent installation operations and software upgrades after the initial RBFS provisioning. These CLI commands enable installation, upgrades and recovery tasks with minimal impact to the running software. The commands include RtBrick Host system commands and RBFS CLI commands to perform software installation tasks such as downloading images, installing software on the alternate image partition, deleting existing images, and maintaining multiple software versions.
RtBrick Host Commands
You can use the Host system commands to manage RBFS images and boot behavior. These commands allow you to reboot the system using a specific image partition (Image A or Image B), permanently set the default boot target, and control whether the system reboots immediately after changing the boot configuration. The dual-image partition model enables you to install and maintain two different RBFS software versions—one on Image A and another on Image B—allowing safe upgrades, rollbacks, and version testing.
RBFS CLI Commands
You can use a set of CLI commands to manage software images and partitions on the device. These commands enable you to download software images, delete existing images, install software on a specified partition, and mark a partition as the active boot target.
RBFS also provides show commands to display software partition information and track the execution of software management jobs. You can view the list of software partitions and their installed images, monitor real-time job logs, and check the final execution status of software jobs using the show commands.
For information about the CLI commands, see the section RBFS-Based Installation Methods.
Installation Tools and Components
It is essential to familiarize with the following components before beginning the RBFS Image Download process.
Downloading RBFS Image
Before you start the installation process, download the RtBrick Host image. For details on downloading the RtBrick Host image, see the RBFS Image Download section.
RtBrick Image Store
RBFS software images are stored in the RtBrick Image Store and can be downloaded after providing the required certificate.
Image stores containing the Host installer images are published on https://releases.rtbrick.com/ and updated when new image versions are available.
The rtb-image command (CLI tool) provided by the rtbrick-imgstore package is used to interact with "image stores".
| Access to the Image Store and Debian package repositories on https://releases.rtbrick.com/ is secured using mutual TLS (mTLS). Authentication requires a valid TLS client certificate. |
RBFS Host Image
The RBFS software (NOS) available on the RtBrick Image Store is provided as the RBFS Host installer image for installation on qualified OCP-compliant switches.
RtBrick Tools
In addition to RBFS software, other RtBrick software tools are delivered in Debian package format compatible with Debian 12 (Bookworm). The software delivered as Debian 12 packages includes a set of CLI tools and/or daemons designed to facilitate working with RBFS containers and the RBFS API. Debian package repositories containing these packages are available at /https://releases.rtbrick.com/ and are updated whenever a new version becomes available.
Open Network Install Environment
The Open Network Install Environment (ONIE) comes pre-installed on OCP-compliant switches. The ONIE environment is used for installing the RtBrick Host installer image. It provides an environment for installing the RBFS software to run on those switches. For more details about ONIE, see https://opencomputeproject.github.io/onie/.
RBFS Release Versioning
An RBFS release can be defined as a set of software packages (currently, in the Debian package format). However, it is delivered as an image, either a container image or as a complete Host installation image. The Host installation image may or may not contain a container image pre-installed in it. An image can be defined as the archived root file system of a Linux OS installation with the needed software packages pre-installed and with a default configuration. In the current context, the terms 'RBFS release' and 'image' are used interchangeably.
RBFS uses the following versioning format:
<year>.<release>.<minor>[.<fix>][-<label>
Examples:
24.3.1
24.3.1.1
In the version example 24.3.1, the first number, "24," represents the year 2024. The second number, "3," indicates the release version, where "1" corresponds to the first release of the year, and this number will be incremented with each subsequent release. The third number, "1," denotes the minor release, which will also be incremented with each future minor release.
RtBrick also uses a four-number versioning format, represented as 24.3.1.1. In this format, the fourth number indicates the bug-fix release. Bug-fix releases are delivered only when necessary and are based on an existing RBFS release, such as 24.3.1. The bug-fix release numbers will also be incremented with each subsequent minor release.
Candidate releases will use a label such as "candidate.6", which will be incremented with each subsequent candidate release.
Image Formats
RtBrick images delivered through the RtBrick Image Store and the rtb-image utility have the following attributes:
-
format: This is the file format in which the image is packaged and archived. The available format ishost-installer. -
role: The role inside a network of the device which will be running the image. For example,multiservice-edgesignifies the full BNG functionality on a single image. -
platform: Identifies the hardware platform in which the image can run. For example,q2asignifies the switch ASIC Broadcom Qumran-2A. -
model: Identifies the hardware model. For example,s9510-28dcsignifies the hardware model UfiSpace S9510-28DC. -
ver-range: Identifies the image version. For example, 24.8.1 signifies the RBFS release 24.8.1.
RtBrick images intended to be installed on supported hardware devices contain format, platform, and model set accordingly to the specific switching hardware.
You can see this using sudo rtb-image list command and look for the Format column.
|
Image Partitions
An image partition is a dedicated storage area on the device where a specific version of the system software image is installed. RBFS Image partition allows the device to install multiple software images (one RBFS image per partition, for example, Image-A and Image-B). Image Partition provides an isolated environment for installing and operating software images without affecting the active system. It allows to install a new image in a partition, and if the new image fails, the system can rollback to the previous functioning image.
Each partition can boot independently. The system can switch between the partitions, if required.
| The Image Partition feature applies exclusively to RBFS image partitions. It does not apply to other partitions, such as ONIE or boot partitions. |
This image partition layout describes how RBFS organizes the storage into logical partitions, each serving a specific purpose.
| Name | Mount Point | Survives Reinstall | Description |
|---|---|---|---|
RTB-IMAGE-A |
/ (root) |
No |
One of the two bootable partition images. This partition contains the OS files and binaries for Image A. During a reinstall or software upgrade, this partition will be overwritten. |
RTB-IMAGE-B |
/ (root) |
No |
The alternate bootable system image. Similar to IMAGE-A, it holds OS files and is also overwritten during reinstall. The device usually boots into one of these partitions. |
RTB-CONFIG |
/var/config |
Yes |
Stores persistent configuration files such as user settings and system configuration. This partition survives reinstallation and the settings are preserved across upgrades. |
RTB-LOG |
/var/log |
No |
Intended to store system logs. |
RTB-CRASH |
/var/crash |
No |
Stores crash data (core dumps). |
About Self-Service Portal Sign-Up / Sign-In
RtBrick customers use the self-service portal to request access to the RBFS image download servers and request RBFS licenses. Every user of the Self-Service portal is associated with a specific organization, which is determined by the domain of their company email address. For example, all users with an email address under the domain @rtbrick.com are affiliated with RtBrick. If your email domain is not registered with RtBrick, please contact RtBrick Support for assistance.
The Self-Service portal uses OpenID/Connect to delegate user authentication to third-party authorization services. These authorization services ensure the secure storage of user credentials and provide additional security measures, including two-factor authentication and account recovery options for users who may have forgotten their passwords.
The portal suppors three authentication service providers:
-
GitHub
-
Google
-
Microsoft
When a user logs into the portal for the first time, their membership is created. The member will be assigned to an organization based on the domain of their email address. This domain must be a trusted domain, meaning it should be listed in the trusted domains list of exactly one organization.
| Attempts to sign up / sign in to the portal with an email address of an untrusted domain will be rejected. |
GitHub allows users to create new accounts for free. A user must declare their company email address as the public email in their GitHub profile to enable the portal to read the email address during the OpenID/Connect authentication process.
| A user cannot sign up / sign in to the portal if the portal is not allowed to read the user’s email address. |
The user must confirm that the portal has permission to access the email address from their user profile for the sign-up process. After the initial sign-up, subsequent logins will not require the user to grant access to their profile again.
Microsoft allows domain administrators to decide which sites can delegate authentication to the Microsoft’s OpenID/Connect authorization services. This adds an additional level of security, because a user can not accidentally share profile data with an untrusted site.
A user will only be prompted for granting the portal access to its profile if the domain administrator has allowed the portal to delegate the login to Microsoft for its organization. In case the portal is not allowed to delegate authentication to Microsoft for the paritcular organization, the user attempting to sign-up to the portal will be prompted to request a domain administrator to grant the portal access to Microsoft authentication services.
In large enterprises with strict security processes granting the portal access to Microsoft authentication service might take a considerable amount of time. An alternative would be to create a GitHub account.
About Using the Self-Service Portal
The Self-Service Portal can be used for generating and uploading client certificates. Also, it is required for obtaining new RBFS licenses or extend the existing licenses. For more information, see the Uploading the Certificate to the Self-Service Portal section of the RBFS Image Download Guide and Managing Licenses via Self-Service Portal section of the RBFS Licensing Guide.