Intel® QAT Device Plugin

ID 724753
Updated 11/29/2021
Version Latest
Public

author-image

By

Accelerate compute-intensive workloads for security, encryption, authentication and compression with Intel® QuickAssist Technology (Intel® QAT), orchestrated by Kubernetes

Read documentation

Overview

Figure 1. Intel QAT device

The Intel® QAT device plugin provides support for Intel QAT devices under Kubernetes and enables you to harness Intel devices to increase performance and efficiency across applications and platforms, including cloud, networking, big data and storage. 

Use Cases in Cloud: Boost throughput in the cloud Networking; Achieve more efficient networking Big Data: Reduce overall data size in big data Storage: Decrease storage demands

Learn more about QAT here.

The supported devices are determined by the VF device drivers available in your Linux Kernel. See the Prerequisites section for more details. Supported Devices include, but may not be limited to, the following:

Design and Architecture

 The QAT plugin can take a number of command line arguments, summarised in the following table:

flag argument meaning
-dpdk-driver string DPDK Device driver for configuring the QAT device (default: vfio-pci)
-kernel-vf-drivers string Comma separated VF Device Driver of the QuickAssist Devices in the system. Devices supported: DH895xCC,C62x,C3xxx and D15xx (default: dh895xccvf,c6xxvf,c3xxxvf,d15xxvf)
-max-num-devices int maximum number of QAT devices to be provided to the QuickAssist device plugin (default: 32)
-mode string plugin mode which can be either dpdk or kernel (default: dpdk)

The plugin also accepts a number of other arguments related to logging. Please use the -h option to see the complete list of logging related options.

Installation and Usage

The component can be installed either using a DaemonSet or running 'by hand' on each node.

See detailed step-by-step instructions here.

Deploy via Device Plugin Operator

Kubernetes* and Intel Quick Assist Technology accelerated Envoy*

Here is an example for getting Intel Quick Assist Technology (QAT) accelerated Envoy* running on a bare-metal Kubernetes* cluster. You may need to adapt some commands to your particular cluster setup. You need to first install the QAT driver on every node which has QAT hardware installed. The driver used in this setup is located at https://01.org/sites/default/files/downloads/qat1.7.l.4.10.0-00014.tar.gz, and the package contains a README file which explains the installation.

See the rest of deployment steps here.

Test and benchmark the setup with and without QAT acceleration using K6.

Demo Videos

Intel® QuickAssist Technology Device Plugin with DPDK

The DPDK demo performs the following steps: 1. Validate the status of the Kubernetes cluster. 2. Deploy Intel® QAT device plugin directly on the host. 3. Build the DPDK image. 4. Deploy a pod to run an example DPDK application. 5. Manually execute the dpdk-test-crypto-perf application to review the logs and evaluate the data.

Intel® QuickAssist Technology Device Plugin OpenSSL demo video

The screencast demonstrates the deployment of the Intel® QAT Device Plugin for Kubernetes and executes a sample QAT accelerated OpenSSL workload with the OCI compatible Kata Containers runtime, a lightweight Virtual Machine (VM) that feels and performs like traditional containers, but provides the workload isolation and security advantages of VMs. The demo begins with a fully configured Kubernetes cluster and Kata Containers runtime for workloads.