RHEL(Red Hat Enterprise Linux) Installation

This chapter provides step-by-step instructions for installing Red Hat Enterprise Linux (RHEL) 9.4 on the EnGenius SmartNIC platform using a serial console connection and a bootable USB installation media.

Installing RHEL via Serial Console

Serial Console

  • Console Access: Mini-USB serial console

  • Installation Media: Bootable USB drive

  • OS Version: RHEL 9.4

Installation Workflow

The installation process consists of the following steps:

Step-1: Prepare a RHEL Kickstart ISO

  • Generate a Kickstart-enabled RHEL 9.4 installation image with required system settings for EnGenius SmartNIC.

Step-2: Create a Bootable USB Drive

  • Write the customized Kickstart ISO to a USB flash drive to be used as the installation media

Step-3: Install RHEL on EnGenius SmartNIC

  • Connect to the EnGenius SmartNIC through the mini-USB serial console and complete the RHEL installation using the USB drive.

1

Prepare RHEL kickstart ISO

  1. Prepare RHEL base build environment

  2. Install ‘mkksiso’ tool on build environment

sudo dnf install lorax -y
  1. Download RHEL ISO and upload it to build environment.

  2. Login to the build environment.

  3. Edit kickstart file

vim <kickstart_file_name>

  • Edit the settings as below:

# Root Password
# This example sets the root password to ‘redhat’. Please modify it according to your requirements.
 
rootpw redhat
 
# System language lang en_US.UTF-8 
 
# System timezone 
timezone America/New_York --utc 
 
# Use text mode install  text 
 
# Accept the license  eula --agreed 
 
# Do not configure the X Window System  skipx 
 
# Partitioning 
clearpart --all --initlabel 
autopart --type=lvm --noswap 
 
# Include kernel arguments required for booting into the installed media
bootloader --location=mbr --driveorder=sda --append="8250.nr_uarts=4  console=ttyS0,115200n8" 
 
repo --name="BaseOS" --baseurl=file:///run/install/repo/BaseOS 
repo --name="AppStream" --baseurl=file:///run/install/repo/AppStream 
 
%packages --ignoremissing 
@^server-product-environment  @core 
@base 
@Development Tools 
dnf 
openssh-server 
openssh-clients 
dhcp-client 
%end 
 
%post 
# Enable ssh login on boot 
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config  systemctl restart sshd.service 
systemctl enable [email protected] 
 
%end 
 
reboot 

Modifications

(1) Password: redhat

  • It can be modified to your needs.

(2) Includes kernel arguments with serial console settings

  • --append="8250.nr_uarts=4 console=ttyS0,115200n8"

(3) Enable ttyS0.service to output the serial console signal.

  • Setup「%post」section to append the following settings.

systemctl enable [email protected]

  1. Query ‘ISO volume ID’ of RHEL ISO which was downloaded in (3).

sudo isoinfo -d -i <RHEL_ISO_ name>.iso | grep "Volume id"

  1. Build a new kickstart ISO with the mkksiso’ tool.

sudo lorax/src/bin/mkksiso --ks <kickstart_file_name> --rm "rd.live.check" -c "8250.nr_uarts=4 console=ttyS0,115200n8 inst.ks=hd:LABEL=:/kickstart.ks" <RHEL_ISO_ name>.iso <New_KS_ISO_name >.iso

Modifications

(1) Set up serial console settings

  • 8250.nr_uarts=4 console=ttyS0,115200n8

(2) Set up ttyS0.service default enable

(3) Enable ttyS0.service to output the serial console signal.

  • -rm “rd.live.check”’

2

Make a bootable USB drive

1. Plug the USB drive on build environment

2. Using the DD tool to flash the ISO image to USB drive.

sudo dd if=<New_KS_ISO_name >.iso of=/dev/<USB_Drive> bs=10M status=progress
3

Install RHEL on ESN904

  1. Plug the bootable USB drive (which is made by step-2) into the EnGenius SmartNIC USB port

  2. Press the RESET button to trigger the EnGenius SmartNIC power reset

  3. Setup control environment (NB/PC/Server) to connect to the EnGenius SmartNIC mini-USB console port.

  4. Run console tool (ex, Tera-Term) on the control environment, and set console settings as below:

  5. Connect and log in to BMC OS

    • Default Acc/Pwd : root / 0penBmc

    • PS: ‘0’ is zero

  6. Execute console redirect tool to redirect CPU serial output to fount panel mini-USB console port. obmc-console-client -e “~.”

    • -e” option for setting up the escape character. Console output will go back to BMC's serial output when the user types in it.

    • The default escape character is「~.」

  7. Press ‘ESC’ button when BIOS showing message as below to enter BIOS setup menu.

    • The EnGenius SmartNIC boot-up will take approximately 3–5 minutes, since it has PFR(Intel Platform Firmware Resilience) features to protect firmware security, and it take sometimes to check firmware validation when system bootup.

  8. Enter BIOS menu, press ‘↑’ and ’↓’ to select ‘Boot Manager’ entry.

  9. Select the ‘USB’ item to boot from USB

    • It is a one-time setting,, only active this time.

  10. The system will start to install RHEL automatically.

  1. The system will auto-reboot after installation is completed, and then it will be ready.

Installation via BMC iKVM

This guide describes how to install RHEL 9.4 on ESN904. The procedure uses BMC iKVM graphic connectivity and a bootable USB drive to install RHEL on ESN904.

Procedure

Step-1: Make a bootable USB drive

  • This section describes how to make a bootable USB drive for RHEL installation.

Step-2: Install RHEL on ESN904 via BMC iKVM

  • The BMC of ESN904 provides graphic connectivity features, which are called iKVM. This step describes how to use it to install RHEL on ESN904.

Step-3:Modify OS settings

  • Since RHEL default without console settings and disabled related service. This section describes how to set them to enable the OS output serial console signal to the front panel mini-USB console port.

2

Install RHEL on ESN904 via BMC iKVM

  1. Plug the bootable USB drive (which is made by step-1) on ESN904 USB-A port

  2. Connect the RJ45 cable to ESN904’s management port and set up network

    topology as below:

    1. Default BMC IP is 192.168.1.202

    2. If you want to change BMC IP to others or DHCP, please follow <Note-1> or <Note-2> or <Note-3> to modify it.

  3. Launch web browser on Control node and login it.

    1. Current design only supports https, please use URL: ‘https://<BMC_IP>’ to connect BMC web

    2. Default settings as below:

      BMC IP

      192.168.1.202

      Account

      root

      Password

      0penBmc

Note: password ‘0’ is zero, not latter O.

  1. Select ‘Option’ -> ‘KVM(Insyde)’

  2. Select ‘HTML5 iKVM Viewer’

  3. After (5), it will pop up a new window, then show the host graphics output.

  4. Press the REST button to trigger ESN904 power reset

  5. Press the ‘ESC’ button when the BIOS showing message below to enter the BIOS setup menu

    1. ESN904 bootup will take approximately 3~5 min, since it has PFR(Intel Platform Firmware Resilience) features to protect firmware security, and it needs to take some time to check firmware validity when system bootup.

  6. Enter BIOS menu, press ‘↑’ and ’↓’ to select ‘Boot Manager’ entry.

  7. Select the ‘USB’ item to boot from USB

    1. It is one-time setting, only be activated this time.

  8. System will boot from USB. Please select ‘Install Red Hat Enterprise Linux 9.4' and follow the instructions to install the OS.

3

Modify OS settings

  1. Log in to the OS using the account/password in Step-2.

  2. Enable serial console output service. sudo systemctl enable [email protected]

  3. Check the ttyS0 service is ‘active (running)’ sudo systemctl status [email protected]

  4. Modify GRUB settings to include console settings. sudo grubby --args “8250.nr_uarts=4” --update-kernel DEFAULT

    sudo grubby --args “console=ttyS0,115200n8” --update-kernel DEFAULT

  1. Check GRUB information included modifications sudo grubby --info DEFAULT

4

Check serial console output

  1. Setup control environment (NB/PC/Server) to connect to the EnGenius SmartNIC min-USB console port.

  2. Run console tool (ex, Tera-Term) on the control environment, and setup console settings as below:

  3. Connect and login to BMC OS.

  • Default Acc/Pwd: root / 0penBmc

  • PS: ‘0’ is zero

  1. Execute console redirect tool to redirect CPU serial output to fount panel mini-USB console port. obmc-console-client -e “~.”

  • -e” option for setting up the escape character. Console output will be back to BMC's serial output when the user types in it.

  • The default escape character is「~.」

  1. Now it is showing the CPU console.

Note 1: How to change BMC IP (via console)

  1. Follow <Step-4> (1) ~ (3) to connect to BMC console.

  2. Setup interface ‘eth0’ as you wish. ifconfig eth0

Note 2: How to setup BMC IP as DHCP mode (via console)

  1. Follow <Step-4> (1) ~ (3) to connect to BMC console.

  2. Setup interface ‘eth0’ as you wish. ifconfig eth0

Note 3: How to setup BMC IP as DHCP mode (via Redfish)

  1. Follow (1) ~ (2) to set up network connection.

  2. Execute curl on the remote side to invoke Redfish API curl -k -H "X-Auth-Token: $token" -H "Content-Type: application/json" -X PATCH https://<BMC_IP>/redfish/v1/Mnagers/bmc/EthernetInterfaces/eth0 -d '{"DHCPv4": {"DHCPEnabled": true}}'

Last updated