Giter Club home page Giter Club logo

rhel-on-bf2's Introduction

Helper scripts for booting Red Hat Enterprise Linux 8 on the NVIDIA Bluefield 2 DPU

These scripts are based off the work of Red Hat, specifically @ecohen, @egarver, @fdangelo, @bnemeth and others. To see the full git history, please use git log --follow <filename>.

The purpose of the provided scripts and Kickstart file is to enable the boot and installation of RHEL 8.4 on the NVIDIA Bluefield 2 DPU.

Prerequisites:

  • 64bit Red Hat or CentOS host computer
  • BF2 card physically installed and connected
  • Red Hat Enterprise Linux >=8.4 iso downloaded on the host computer

Quick and dirty installation:

$ git clone https://github.com/kwozyman/rhel-on-bf2
$ cd rhel-on-bf2
$ export RHEL_ISO=/path/to/redhat_iso_file
$ sh bluefield_provision.sh -a

The -a switch will run, in order:

  • Host preparation / dependency install (-i)
  • Update BF2 firmware (-f)
  • Check (and enable) SR-IOV support on the host system
  • Prepare PXE and run PXE install (-p)

After following the onscreen instructions, RHEL installation should start and you would end up with a rather standard RHEL installation with the root password of bluefield.

Do note sometimes the Real Time Clock is not synchronized right after operating system install, so you'll need to:

$ systemctl stop chronyd.service
$ chronyd -q 'server clock.redhat.com iburst'
$ hwclock --systohc --localtime

What is the actual process?

First, we need to install software dependencies for the card. These include the Mellanox rshim driver and the Mellanox firmware burning tools. The provision script's dependencies are: expect, wget and minicom

Second, the firmware is updated to a hardcoded version of BlueField-3.5.1.11601.

The host is then prepared as a PXE boot host, partly following this documentation from Red Hat so in the end we will have running dhcpd, (t)ftp and httpd servers with the kernel extracted from the iso file, PXE and Grub menus prepared.

minicom is then used to attach to the card's console and some simple expect rules navigate the menus as much as possible. Please note that one needs to manually select the 'PXE boot' option from the menu, as instructed by the onscreen prompts in the script, as it is not possible to predict the position of that particular menu item.

For the installation start, the RHEL8-bluefield.ks Kickstart file is used and should provide you at the end with a rather default RHEL install.

Troubleshooting

To force the network connection between the card and the host, the network-reset.sh script can be used. The -r switch will also reboot the card.

rhel-on-bf2's People

Contributors

bn222 avatar erig0 avatar wangzheng422 avatar kwozyman avatar zshi-redhat avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.