Skip to main content
This tutorial shows you how to deploy the Red Hat AI Inference Stack for Kubernetes on CoreWeave Kubernetes Service (CKS). The stack provides GPU-based LLM inference using llm-d, KServe, Istio, and the Gateway API so you can run and serve models such as GPT-OSS on your CKS cluster. In this tutorial, you’ll:
  • Deploy the Red Hat AI Inference Stack (cert-manager, Istio, LWS operator, and KServe) on your CKS cluster.
  • Create and verify the inference gateway for routing requests to models.
  • Deploy a hello-world model (GPT-OSS) and send a chat completion inference request.

What you'll need

Before you start, you must have:
  • A Red Hat Registry service account or Red Hat pull secret for registry.redhat.io.
  • A CoreWeave Kubernetes Service (CKS) cluster with GPU Nodes.
  • kubectl installed and configured to access your cluster.
  • KUBECONFIG set to an absolute path (required by the deployment scripts).

What you'll use

You’ll use these tools:
  • git: To clone the rhaii-on-xks repository.
  • make: To deploy components and run validation.
  • jq: To copy the Red Hat pull secret into namespaces (used in later steps).

Prerequisites

Before you start, confirm that you’ve completed the following.

Cluster readiness

Your cluster is ready. To verify the available GPU Nodes, run:
You should see one or more Nodes listed with GPU capacity in the output.

Red Hat access token

You need a Red Hat pull secret so the cluster can pull images from registry.redhat.io. To get a Red Hat service account:
  1. Go to https://access.redhat.com/terms-based-registry/.
  2. Click New Service Account.
  3. Create the account and note the username (for example, 12345678|myserviceaccount).
  4. On the OpenShift Secret tab, download the service account token.
  5. Convert the service account token to JSON:
    Replace PULL-SECRET.yaml with your file name. The auth.json file should look like the following:
  6. Create the directory and copy auth.json to ~/.config/containers:

KUBECONFIG

Ensure KUBECONFIG is set to an absolute path:

Clone the repository

Clone the Red Hat AI Inference Stack repository and change into its directory:

Deploy prerequisites

Use make to deploy all stack components that llm-d depends on (cert-manager, Istio, LWS operator, and KServe):
When the deployment finishes, run:
You should see output similar to the following, with components in Running state and readiness checks passing:
Expected output after make status
For full deployment details, see the Red Hat guide on configuring the inference gateway.

Create the inference gateway

Deploy the inference gateway so you can route requests to your models:
Verify the gateway is programmed:
You should see the inference-gateway in the opendatahub namespace with an ADDRESS and PROGRAMMED set to True:
Expected gateway output

Deploy and test a sample model

After the gateway is running, you can deploy a model and send inference requests. This section uses the redhat-inference example from the CoreWeave doc-examples repository.

Set up the namespace

Create a namespace for the deployment. This example uses llm-d-rhaii:
Copy the Red Hat pull secret into the namespace and configure the default service account to use it:

Download and deploy the model

Clone the following repository:
Navigate to the redhat-inference directory:
Deploy the following files:
After the download job completes, deploy the model:

Send an inference request

In a separate terminal, port-forward the inference gateway:
Send a chat completion request to the endpoint:
You should receive a JSON response with the model output similar to the following:
Expected response
You’ve now deployed and tested a model with the Red Hat AI Inference Stack.

Next steps

Last modified on June 10, 2026