Get Up and Running with FPGAs in Rancher Kubernetes Clusters

  • Build out your infrastructure for a Kubernetes cluster
  • Install Kubernetes
  • Install the FPGA-operator via Helm

Getting Up and Running with Rancher and Available FPGA Resources-

Rancher is a multi-cluster management solution that spawns Kubernetes instances using either local or cloud resources. Recently, Amazon AWS and Microsoft Azure made available FPGA instances to the public in order to leverage the needs for application acceleration.

  1. Installs the right FPGA drivers
  2. Instantiates the InAccel CSI and Device Plugins
  3. Deploys and starts InAccel Coral Resource Manager and Coral Monitor

FPGA drivers-

InAccel performs all the checks required to install the right drivers for each specific OS type and version.

CSI and Device plugins-

InAccel has developed a Device plugin based on the Kubernetes standard, that works for all FPGA devices and is able to announce and keep track of all the FPGAs of a cluster. It has also developed a CSI plugin that eases the deployment of FPGA accelerated pods by performing any required actions regarding volumes that have to be mounted etc.

Coral Resource Manager and Monitor-

InAccel Coral is the framework that manages, orchestrates and scales FPGA resquests accross a cluster of available FPGA resources. InAccel Coral Monitor is the tool for visualizing the state of each FPGA including structural information (temperature, power etc.) as well as information about its current configuration (loaded bitstream, number and name of the kernels, memory connections and usage, execution time for each accelerated request etc.).

Prerequisites

Here is the bill of materials (BOM) for getting up and running with FPGAs in Rancher:

  1. Rancher
  2. InAccel FPGA Operator
  3. Infrastructure — we’ll use FPGA nodes on AWS

Process Steps

Install a Kubernetes cluster with FPGAs-

With Rancher installed, we will first build and configure a Kubernetes cluster (you can use any cluster with FPGAs.)

Set Up the FPGA Operator

It is time to setup a catalog in Rancher using the FPGA Operator repository.

Make use of the FPGAs

Now that FPGAs are accessible, we can deploy an FPGA-capable workload. We can also verify that this installation was successful by looking at the cluster details in Rancher. We see that the FPGA Operator has kindly labeled our nodes for FPGA usage.

Deploy an FPGA-Capable workload

We open the Cluster Explorer in Rancher and select Pods from the left menu column. Then from the right top corner we select Create from YAML.

Conclusion-

This simplified approach to getting Kubernetes up and running with FPGAs takes advantage of these two things:

  • The FPGA Operator from InAccel
  • Rancher’s cluster deployment and catalog app integration

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
InAccel

InAccel

Applications Acceleration instantly