About this task
The commands in this task install Red Hat OpenShift AI with the minimum components needed to support IBM Software Hub services.
| Service |
Red Hat OpenShift AI |
| IBM Knowledge Catalog Premium |
✓ |
| IBM Knowledge Catalog Standard |
✓ |
| watsonx.ai |
✓ |
| watsonx Assistant |
Required to use optional GPU features. |
| watsonx Code Assistant |
✓ |
| watsonx Code Assistant for Red Hat
Ansible Lightspeed |
✓ |
| watsonx Code Assistant for Z |
✓ |
| watsonx Code Assistant for Z Code Explanation |
✓ |
| watsonx Orchestrate |
✓ |
Use the following table to determine which version of Red Hat OpenShift AI you need to install:
| Release |
Red Hat OpenShift AI
|
| 5.1.3 (April 2025)
|
Version 2.16 |
| 5.1.2 (March 2025)
|
Version 2.16 |
| 5.1.1 (February
2025)
|
Version 2.16 |
| 5.1.0 (December
2024)
|
Version 2.13 |
Procedure
-
Log in to Red Hat
OpenShift Container Platform as a cluster
administrator.
${OC_LOGIN}
Remember:
OC_LOGIN is an alias for the oc login
command.
- Create the
redhat-ods-operator project:
oc new-project redhat-ods-operator
The command returns the following response:
namespace/redhat-ods-operator created
- Create the
rhods-operator operator group in the redhat-ods-operator project:
cat <<EOF |oc apply -f -
apiVersion: operators.coreos.com/v1
kind: OperatorGroup
metadata:
name: rhods-operator
namespace: redhat-ods-operator
EOF
The command returns the following response:
operatorgroup.operators.coreos.com/rhods-operator created
- Set the
CHANNEL_VERSION environment variable based on
the version of Red Hat OpenShift AI that you are
installing:
Version 2.13
export CHANNEL_VERSION=stable-2.13
Version 2.16
export CHANNEL_VERSION=stable-2.16
- Create the
rhods-operator operator subscription in the
redhat-ods-operator project:
cat <<EOF |oc apply -f -
apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
name: rhods-operator
namespace: redhat-ods-operator
spec:
name: rhods-operator
channel: ${CHANNEL_VERSION}
source: redhat-operators
sourceNamespace: openshift-marketplace
config:
env:
- name: "DISABLE_DSC_CONFIG"
EOF
The command returns the following response:
subscription.operators.coreos.com/rhods-operator created
- Check the status of the
rhods-operator-* pod in the redhat-ods-operator project:
oc get pods -n redhat-ods-operator
Confirm that the pod is Running. The command returns a response with the
following format:
NAME READY STATUS RESTARTS AGE
rhods-operator-56c85d44c9-vtk74 1/1 Running 0 3h57m
- Create a DSC Initialization (
DSCInitialization) object named
default-dsci in the redhat-ods-monitoring
project:
cat <<EOF |oc apply -f -
apiVersion: dscinitialization.opendatahub.io/v1
kind: DSCInitialization
metadata:
name: default-dsci
spec:
applicationsNamespace: redhat-ods-applications
monitoring:
managementState: Managed
namespace: redhat-ods-monitoring
serviceMesh:
managementState: Removed
trustedCABundle:
managementState: Managed
customCABundle: ""
EOF
- Check the phase of the DSC Initialization (
DSCInitialization)
object:
oc get dscinitialization
Confirm that the object is Ready. The command returns a response with the
following format:
NAME AGE PHASE
default-dsci 4d18h Ready
- Create a Data Science Cluster (
DataScienceCluster) object named
default-dsc:
cat <<EOF |oc apply -f -
apiVersion: datasciencecluster.opendatahub.io/v1
kind: DataScienceCluster
metadata:
name: default-dsc
spec:
components:
codeflare:
managementState: Removed
dashboard:
managementState: Removed
datasciencepipelines:
managementState: Removed
kserve:
managementState: Managed
defaultDeploymentMode: RawDeployment
serving:
managementState: Removed
name: knative-serving
kueue:
managementState: Removed
modelmeshserving:
managementState: Removed
ray:
managementState: Removed
trainingoperator:
managementState: Managed
trustyai:
managementState: Removed
workbenches:
managementState: Removed
EOF
The Red Hat
OpenShift AI Operator installs and manages the
services that are listed as Managed. Services that are Removed are
not installed.
- Wait for the Data Science Cluster object to be
Ready. To
check the status of the object,
run:
oc get datasciencecluster default-dsc -o jsonpath='"{.status.phase}" {"\n"}'
- Confirm that the status of the following pods in the
redhat-ods-applications project are Running:
kserve-controller-manager-* pod
kubeflow-training-operator-* pod
odh-model-controller-* pod
oc get pods -n redhat-ods-applications
The command returns a response with the following format:
NAME READY STATUS RESTARTS AGE
kserve-controller-manager-57796d5b44-sh9n5 1/1 Running 0 4m57s
kubeflow-training-operator-7b99d5584c-rh5hb 1/1 Running 0 4m57s
- Edit the
inferenceservice-config configuration map
in the redhat-ods-applications project:
- Log in to the Red Hat
OpenShift Container Platform
web console as a cluster administrator.
- From the navigation menu, select
.
- From the Project list, select
redhat-ods-applications.
- Click the
inferenceservice-config resource. Then, open the
YAML tab.
- In the
metadata.annotations section of the file, add
opendatahub.io/managed: 'false':
metadata:
annotations:
internal.config.kubernetes.io/previousKinds: ConfigMap
internal.config.kubernetes.io/previousNames: inferenceservice-config
internal.config.kubernetes.io/previousNamespaces: opendatahub
opendatahub.io/managed: 'false'
- Find the following entry in the file:
"domainTemplate": "{{ .Name }}-{{ .Namespace }}.{{ .IngressDomain }}",
- Update the value of the
domainTemplate field to
"example.com":
"domainTemplate": "example.com",
- Click Save.
What to do next
Now that you've installed Red Hat OpenShift AI,
you're ready to complete Installing and setting up Multicloud Object Gateway for IBM Software Hub.