Intel® ESDQ for the Intel® Tiber™ Edge Platform

ID 835760
Updated 10/29/2024
Version Release 24.08
Public

author-image

By

Overview

Intel® Edge Software Device Qualification (Intel® ESDQ) for the Intel® Tiber™ Edge Platform is a qualification software package that allows customers to run an Intel-provided test suite on the target system. Its goal is to enable partners to qualify their platform to be onboarded as an edge node.

The qualification software enables customers to confirm that the Intel Tiber Edge Platform will function on the hardware they intend to use.

The following information is specific to the Intel ESDQ for the Intel Tiber Edge Platform package for edge node qualification. For documentation on the Intel ESDQ command line interface (CLI) binary, refer to Intel® ESDQ CLI Overview.

Configure & Download Intel ESDQ

For installation steps, refer to the Get Started section.

How It Works

To qualify a device using Intel ESDQ for Intel Tiber Edge Platform:

  1. Download and install the qualification software on the platform that needs to be qualified as meeting the system requirements for an edge node.
  2. Run the software on the platform and provide the needed credentials and inputs. The software runs a set of test cases to confirm that the platform is suitable for the edge node software and that it can be onboarded as an edge node on the Intel Tiber Edge Platform.
  3. When the test case run is complete, review the report that outlines the successful and failed test cases.
  4. Perform any necessary troubleshooting, and then forward the report to Intel for further troubleshooting or for obtaining qualification.

 

Target System Requirements

The Intel ESDQ for the Intel Tiber Edge Platform release supports the following validated hardware devices. Other hardware platforms with similar CPU SKUs should be functional as long as minimum hardware requirements have been met. We encourage hardware vendors to perform their own validation with the Intel ESDQ software.

Supported Target Platforms

GPU

  • Intel® Iris® Xe graphics (integrated with 13th generation Intel Core mobile processor)

Storage

  • Minimum: 256 GB hard drive and 128 GB USB drive
  • Recommended: 512 GB hard drive and 128 GB USB drive

Memory

  • 64 GB DDR5 on platforms based on Intel Core processors
  • 128 GB DDR5 on platforms based on Intel Xeon Scalable processors

Ethernet Adapters

  • Based on Intel Xeon Scalable processor:
    • Intel® Ethernet X710 Network Adapter
    • Intel Ethernet E810 Network Adapter
  • Based on Intel Core processor:
    • Intel® I226 Ethernet Controller

 

Recommended Settings for Secure Startup and Performance

Follow the BIOS settings for the Intel® ESDQ for Intel® Tiber™ Edge Platform.

Software Overview

The software consists of a qualification suite and a set of test cases applicable to the chosen profile. The suite runs the test cases to qualify the platform. The test cases consist of hardware bill-of-materials (BOM) checks, software BOM checks, checks for dependencies on the underlying operating system and firmware, and certain lightweight functional tests. The qualification suite generates a report as output, which the customer can then forward to Intel for further troubleshooting or for obtaining qualification.

The qualification suite test cases are categorized as follows:

  • BIOS
  • CPU
  • GPU
  • Memory
  • Networking
  • Operating System (OS)
  • Power Management
  • Remote Management
  • Storage
  • Telemetry and Observability
  • Security (Trusted Platform Module [TPM])
  • Software Dependencies Test

Get Started

The software for the edge node qualification is installed through the Intel Tiber Edge Platform Software Catalog. Figure 1 shows the customer journey for deploying and running the Intel ESDQ software. The steps are explained in detail in the following sections.

Figure 1. Qualification Flow for Intel ESDQ for the Intel Tiber Edge Platform

Step 1: Prerequisites

  1. Operating System Installation
  • Perform a clean operating system installation of Ubuntu 22.04 LTS on the target system on the secondary storage device or USB media drive. Then, install the Ubuntu 22.04 Cloud operating system on the primary storage device.
  • Follow the steps to install the Ubuntu 22.04 Cloud Operating System on the primary hard disk
  • Follow the installation order and recommended operating system for each platform:

Installation Order

Storage Device

Operating System

 

1

Secondary

Intel® Core™ 12th & 13th Generation Processors

Ubuntu 22.04.4 LTS Desktop

Intel® Xeon® D, Intel® Xeon® 3rd and 4th Generation Scalable Processors

Ubuntu 22.04.4 LTS Server

2

Primary

Ubuntu 22.04 Cloud

 

 

  1. Release Service ID Token

During the deployment, you are prompted to enter the Release Service ID Token.

Follow the steps to apply for Release Service access:

  1. Internet Access

Internet access is needed during installation and during qualification flow for Intel® ESDQ for Intel® Tiber™ Edge Platform.

If the lab environment requires proxy settings to access the internet, follow step 9 in the Appendix.

Step 2: Create an Account

Go to the Intel Tiber Edge Platform Software Catalog, and then navigate to the Intel ESDQ for the Intel Tiber Edge Platform module page.

Figure 2. Software Catalog

Select the package to download and sign in or register for an Intel unified credential when prompted.

Step 3: Download the Software

Sign in to the Intel Tiber Edge Platform Software Catalog using your Intel® Unified Login credentials and download the Intel ESDQ for Intel Tiber Edge Platform software. Accept the license agreement to continue the download.

Figure 3. Download the Intel® ESDQ for Intel Tiber Edge Platform package

Figure 4. Accept the license agreement

The Intel Tiber Edge Platform software is downloaded on the local system.

Copy the downloaded qualification software from the Windows* local system to the target edge node system.

Figure 5. Intel® ESDQ for Tiber™ Edge Platform software is downloaded

Step 4: Configure and Deploy

  1. Extract the package on the edge node, and then change the run permissions to edgesoftware installer.
  2. Install the qualification tool by using the ./edgesoftware install command.



    Note You will need privileged access to the target edge node system to install the qualification tool.
     
  3. Once the installation is complete, the system restarts automatically.


     

  4. Go to the Release Service Token Portal to generate the JSON web token (JWT).

  5. Sign in using your Intel® Unified ID to generate the token.

    During the deployment, you are prompted to enter the id_token.

    Note The ID Token will expire after one hour. Make sure that you regenerate the token before deploying the software.

  6. Copy the ID Token, and then enter it in the prompt.


     

  7. After the system restarts, in the directory where the edgesoftware installer script was run, verify the status of the installed components:
    • The logs for the installed components can be found in the install_pkg_status file.
    • The status of the installed components can be found in the success_install_status file.

       

Step 5: Run the Qualification

After the qualification tool is installed on the edge node, you can run the qualification CLI in two modes:

  • Interactive mode
  • Non-interactive mode

On test completion, the results will be stored in a report.zip file. The user needs to unzip the report.zip to extract the report.html

unzip $HOME/esdq/reports/report.zip

For qualification, email reports and logs to Intel:

  • Inspect the report in the following file: $HOME/esdq/reports/report.html
  • For detailed information, if required, inspect the logs captured in the following file: $HOME/esdq/logs/esdq.log
  • Email the report $HOME/esdq/reports/report.html and log file $HOME/esdq/logs/esdq.log files to Intel ESDQ for qualification. If there are errors in the qualification report, Intel will help you triage and resolve them.

You may choose to take appropriate actions to correct any issues reported. The qualification suite can be run repeatedly if such actions if needed.

Qualification of Edge Node Using Interactive Mode

  1. Use the following command to run the qualification in Interactive mode.
    cd /root/esdq
    /root/.local/bin/edgenode-qualification-cli launch
  2. In Interactive mode, select the SKU and platform in the CLI when prompted.



    Figure 6. Prompt to select the SKU and platform in interactive mode



    Figure 7. Prompt on successful completion of test cases for device qualification

Qualification of Edge Node Using Non-Interactive Mode

  1. Use the following command to run the qualification in non-interactive mode:
    $ edgenode-qualification-cli run --sku "<SKU_Name>" --profile "<Profile_Name>"
  2. In the non-interactive mode, use the CLI list command to get the SKU and profile name.
  3. List the available test configuration using the list command:
     

    /root/.local/bin/edgenode-qualification-cli list



    Figure 8. Prompt to list the edge node qualification configurations using non-interactive mode



    Figure 9: Prompt for the running of the qualification software using non-interactive mode

Known Issues

1. No uninstaller is available as part of the package. You will need to redo the operating system reimage before attempting installation.

2. SSH is blocked because of the firewall updates that occur as part of the operating system installation. You will need to use the console to access the machine after installing Intel ESDQ.

Release Notes

Version 1.0

New in this release:

  • Initial features for recommended configuration.

Appendix

Installation Steps for Ubuntu 22.04 Cloud Image on the Primary Disk

This section shows you how to install Ubuntu 22.04 LTS cloud image on the primary disk with the minimum packages required for device qualification. To complete these tasks, you need two storage devices as described below:

  • A primary storage device, that is, NVME, SSD Drive that will host the Ubuntu 22.04 LTS cloud image
  • A USB storage device that will temporarily host the Ubuntu 22.04 live disk.
  1. Start the target system with Ubuntu 22.04 Live Disk and download the cloud image with the following command:

wget https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img
  1. Once the download completes, create a directory named user_script and within it, create two files: create_user.sh and create_user.service. The contents for the two files are as follows.

    For create_user.sh, modify the following lines respectively
    • Update provide desired username with the preferred username
    • Update provide desired password with the preferred password

           Example:

           USERNAME="user"

           PASSWORD="user1234"

 

           File create_user.sh

sudo touch create_user.sh
sudo chmod +x create_user.sh
sudo bash -c 'cat <<EOF > create_user.sh
#!/bin/bash

# Script to create a user and set a password

USERNAME="provide desired username"
PASSWORD="provide desired password"
# Check if the user already exists
if id "$USERNAME" &>/dev/null; then
echo "User $USERNAME already exists."
else
# Create the user without a password
sudo useradd -m -s /bin/bash "$USERNAME"
sudo adduser $USERNAME sudo
# Set the user's password
echo "$USERNAME:$PASSWORD" | sudo chpasswd
sudo usermod -a -G sudo "$USERNAME"
echo "User $USERNAME created with the specified password."
fi
echo "start dhcp client"
sudo dhclient -v
EOF'

File create_user.service

sudo bash -c 'cat <<EOF > create_user.service
[Unit]
Description=Create a user and set the password
After=network.target

[Service]
Type=oneshot
ExecStart=/usr/local/bin/create_user.sh
RemainAfterExit=true

[Install]
WantedBy=multi-user.target
EOF'
  1. Run the following commands to convert the *.img file to *.raw file that will be used for flashing on the primary storage device.
sudo apt install qemu-utils
qemu-img convert -f qcow2 -O raw jammy-server-cloudimg-amd64.img jammy-server-cloudimg-amd64.raw
  1. Once image conversion completes, select the appropriate storage device based on where you want to flash the cloud operating system image. This example uses /dev/<devicenode>, which represents the storage device name where the image will be flashed (primary storage device)
  2. To determine the <devicenode> for flashing the image onto a bootable device, run the lsblk command. This command will provide a list of all block devices connected to your system. Identify and select the relevant device from the output, which will be formatted as /dev/<devicenode>.
  3. Use the following commands to format the selected device and flash the Ubuntu Cloud operating system from the Live Disk to the primary storage device.
sudo mkfs.ext4 /dev/<devicenode>
sudo dd if=jammy-server-cloudimg-amd64.raw of=/dev/<devicenode> bs=4M status=progress
sudo su
sgdisk –e /dev/<devicenode>
echo yes | parted ---pretend-input-tty /dev/<devicenode> resizepart 1 100GB
e2fsck -f /dev/<devicenode_rootfspartition>
resize2fs /dev/<devicenode_rootfspartition>
partprobe /dev/<devicenode>
parted /dev/<devicenode> --script mkpart primary ext4 100GB 100%
partprobe /dev/<devicenode>
exit
cd $HOME
sudo mount /dev/<devicenode_rootfspartition> /mnt
  1. The following instructions will copy the user scripts to the mount device:

sudo cp user_script/create_user.sh /mnt/usr/local/bin/
sudo chmod +x /mnt/usr/local/bin/create_user.sh
 sudo cp user_script/create_user.service /mnt/etc/systemd/system/
sudo cp user_script/create_user.service /etc/systemd/system/
  1. Create the user service:

cd /mnt
sudo ln -sf /etc/systemd/system/create_user.service etc/systemd/system/multi-user.target.wants/create_user.service
  1. (Optional) If the system is behind a network proxy, then create a /etc/environment file and add the necessary proxies.

sudo bash -c 'cat <<EOF >> etc/environment
http_proxy=http:// proxy.example.com:port
https_proxy=http://proxy.example.com:port
ftp_proxy=http://proxy.example.com:port
socks_proxy=socks:// proxy.example.com:port
no_proxy=localhost,*.example.com,*example.com,192.168.0.0/16,172.16.0.0/12,127.0.0.0/8,10.0.0.0/8,/var/run/docker.sock,.internal
EOF'
  1. Mount all required partitions for the kernel upgrade.

sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
  1. Resolve DNS in the container.

sudo rm /mnt/etc/resolv.conf
sudo touch /mnt/etc/resolv.conf
sudo cp /etc/resolv.conf /mnt/etc/resolv.conf

sudo mv /mnt/etc/apt/apt.conf.d/99needrestart /mnt/etc/apt/apt.conf.d/99needrestart.backup
  1. Enter Ubuntu operating system for the HWE kernel installation

sudo chroot /mnt /bin/bash <<EOT

apt update
#install HWE kernel with all recommended packages
apt install -y --install-recommends linux-image-generic linux-headers-generic
if [ $? -eq 0 ]; then
echo "Successfully Installed HWE kernel"
else
echo "Something went wrong in HWE kernel installtion please check!!!"
exit 1
fi
update-initramfs -u -k all

# update the latest kernel version and kernel command line parameters in grub config file
sed -i 's/GRUB_DEFAULT=.*/GRUB_DEFAULT=1/g' etc/default/grub
sed -i 's/GRUB_CMDLINE_LINUX=.*/GRUB_CMDLINE_LINUX="quiet splash plymouth.enable=0 fastboot intel_iommu=on iommu=pt pci=realloc console=tty1 console=ttyS0,115200"/' etc/default/grub

update-grub
if [ $? -eq 0 ]; then
echo "Successfully Updated Kernel grub!!"
else
echo "Something went wrong in updating the grub please check!!!"
exit 1
fi
EOT
  1. Unmount NVME disks.

sudo mv /mnt/etc/apt/apt.conf.d/99needrestart.backup /mnt/etc/apt/apt.conf.d/99needrestart

cd $HOME

sudo umount /mnt/sys
sudo umount /mnt/proc
sudo umount /mnt/dev/pts
sudo umount /mnt/dev

sudo umount /mnt
  1. Restart the device and, during the start process, select the flashed primary startup device from the BIOS menu.
  2. You might have to install open-ssh server to enable remote ssh after flashing the cloud image. Follow the steps to enable ssh.

sudo apt remove openssh-server
sudo apt install openssh-server
sudo ufw allow ssh
sudo systemctl restart ssh
  1. In the /etc/ssh/sshd_config.d/60-cloudimg-settings.conf file, change PasswordAuthentication to yes, and then restart the ssh service.

sudo systemctl restart ssh

BIOS Settings

For Platforms based on Intel Xeon Scalable Processors

 

BIOS Setup Menu

BIOS Option

Setting

Advanced > Processor Configuration

Intel® Virtualization Technology (Intel® VT)

Enabled

Advanced > Integrated IO Configuration

Intel® VT
for Directed I/O

Enabled

Advanced > Power & Performance

Workload Configuration

Balanced

 

CPU Power and Performance Policy

Performance

Advanced > Power & Performance > Uncore Power Management Power

Uncore Frequency Scaling

Enabled

 

Performance P-Limit

Enabled

Advanced > Power & Performance> CPU C State Control

Package C-State – C6 (Retention) state

Enabled

 

Processor C6

Enabled

 

C1E

Enabled

Advanced > Power & Performance> CPU P State Control

EPP Enable

Enabled

 

Enhanced Intel Speed Step Technology

Enabled

 

Intel Turbo Boost Technology

Disabled

 

Energy Efficient Turbo

Disabled

System Security

TPM Security

Enabled

System Security

Secure Boot

Enabled

Advanced > Power & Performance> Hardware PStates

Hardware P-states (HWP)

Native Mode/Native Mode NoLegacy

 

For Platforms Based on Intel Core Processors

 

BIOS Option

Setting

C State

Enabled

Turbo Mode

Enabled

Intel SpeedStep® Technology

Enabled

Intel Speed Shift

Enabled

Boot > Secure boot

Enabled

System Security > TPM Security

Enabled