Chapter 2. Setting up a project and storage
2.2. Setting up your data science project
Before you begin, make sure that you are logged in to Red Hat OpenShift AI.
Procedure
On the navigation menu, select Data Science Projects. This page lists any existing projects that you have access to. From this page, you can select an existing project (if any) or create a new one.
Note that it is possible to start a Jupyter notebook by clicking the Launch standalone notebook server link, selecting a notebook image, and clicking Start server. However, it would be a one-off Jupyter notebook run in isolation. To implement a data science workflow, you must create a data science project (as described in the following procedure). Projects allow you and your team to organize and collaborate on resources within separated namespaces. From a project you can create multiple workbenches, each with their own IDE environment (for example, JupyterLab), and each with their own connections and cluster storage. In addition, the workbenches can share models and data with pipelines and model servers.
If you are using your own OpenShift cluster, click Create project.
NoteIf you are using the Red Hat Developer Sandbox, you are provided with a default data science project (for example,
myname-dev
). Select it and skip over the next step to the Verification section.Enter a display name and description.
Verification
You can see your project’s initial state. Individual tabs provide more information about the project components and project access permissions:

- Workbenches are instances of your development and experimentation environment. They typically contain IDEs, such as JupyterLab, RStudio, and Visual Studio Code.
- Pipelines contain the data science pipelines that are executed within the project.
- Models allow you to quickly serve a trained model for real-time inference. You can have multiple model servers per data science project. One model server can host multiple models.
- Cluster storage is a persistent volume that retains the files and data you’re working on within a workbench. A workbench has access to one or more cluster storage instances.
- Connections contain configuration parameters that are required to connect to a data source, such as an S3 object bucket.
- Permissions define which users and groups can access the project.
Next step
2.3. Storing data with connections
Add connections to workbenches if you want to connect your project to data inputs and object storage buckets. A connection is a resource that contains the configuration parameters needed to connect to a data source or data sink, such as an AWS S3 object storage bucket.
For this tutorial, you need two S3-compatible object storage buckets, such as Ceph, Minio, or AWS S3. You can use your own storage buckets or run a provided script that creates the following local Minio storage buckets for you:
- My Storage - Use this bucket for storing your models and data. You can reuse this bucket and its connection for your notebooks and model servers.
- Pipelines Artifacts - Use this bucket as storage for your pipeline artifacts. A pipeline artifacts bucket is required when you create a pipeline server. For this tutorial, create this bucket to separate it from the first storage bucket for clarity.
Also, you must create a connection to each storage bucket. You have two options for this tutorial, depending on whether you want to use your own storage buckets or use a script to create local Minio storage buckets:
- If you want to use your own S3-compatible object storage buckets, create connections to them as described in Creating connections to your own S3-compatible object storage.
- If you want to run a script that installs local MinIO storage buckets and creates connections to them, follow the steps in Running a script to install local object storage buckets and create connections.
While it is possible for you to use one storage bucket for both purposes (storing models and data as well as storing pipeline artifacts), this tutorial follows best practice and uses separate storage buckets for each purpose.
2.3.1. Creating connections to your own S3-compatible object storage
If you have existing S3-compatible storage buckets that you want to use for this tutorial, you must create a connection to one storage bucket for saving your data and models. If you want to complete the pipelines section of this tutorial, create another connection to a different storage bucket for saving pipeline artifacts.
If you do not have your own s3-compatible storage, or if you want to use a disposable local Minio instance instead, skip this section and follow the steps in Running a script to install local object storage buckets and create connections. The provided script automatically completes the following tasks for you: creates a Minio instance in your project, creates two storage buckets in that Minio instance, creates two connections in your project, one for each bucket and both using the same credentials, and installs required network policies for service mesh functionality.
Prerequisites
To create connections to your existing S3-compatible storage buckets, you need the following credential information for the storage buckets:
- Endpoint URL
- Access key
- Secret key
- Region
- Bucket name
If you don’t have this information, contact your storage administrator.
Procedure
Create a connection for saving your data and models:
- In the OpenShift AI dashboard, navigate to the page for your data science project.
Click the Connections tab, and then click Add connection.
- In the Add connection modal, for the Connection type select S3 compatible object storage - v1.
Complete the Add connection form and name your connection My Storage. This connection is for saving your personal work, including data and models.
NoteSkip the Connected workbench item. You add connections to a workbench in a later section.
- Click Add connection.
Create a connection for saving pipeline artifacts:
NoteIf you do not intend to complete the pipelines section of the tutorial, you can skip this step.
- Click Add connection.
Complete the form and name your connection Pipeline Artifacts.
NoteSkip the Connected workbench item. You add connections to a workbench in a later section.
- Click Add connection.
Verification
In the Connections tab for the project, check to see that your connections are listed.

Next steps
If you want to complete the pipelines section of this tutorial, go to Enabling data science pipelines.
Otherwise, skip to Creating a workbench.
2.3.2. Running a script to install local object storage buckets and create connections
For convenience, run a script (provided in the following procedure) that automatically completes these tasks:
- Creates a Minio instance in your project.
- Creates two storage buckets in that Minio instance.
- Generates a random user id and password for your Minio instance.
- Creates two connections in your project, one for each bucket and both using the same credentials.
- Installs required network policies for service mesh functionality.
The script is based on a guide for deploying Minio.
The Minio-based Object Storage that the script creates is not meant for production usage.
If you want to connect to your own storage, see Creating connections to your own S3-compatible object storage.
Prerequisites
You must know the OpenShift resource name for your data science project so that you run the provided script in the correct project. To get the project’s resource name:
In the OpenShift AI dashboard, select Data Science Projects and then click the ? icon next to the project name. A text box appears with information about the project, including its resource name:

The following procedure describes how to run the script from the OpenShift console. If you are knowledgeable in OpenShift and can access the cluster from the command line, instead of following the steps in this procedure, you can use the following command to run the script:
oc apply -n <your-project-name/> -f https://github.com/rh-aiservices-bu/fraud-detection/raw/main/setup/setup-s3.yaml
Procedure
In the OpenShift AI dashboard, click the application launcher icon and then select the OpenShift Console option.
In the OpenShift console, click + in the top navigation bar.
Select your project from the list of projects.
Verify that you selected the correct project.
Copy the following code and paste it into the Import YAML editor.
NoteThis code gets and applies the
setup-s3-no-sa.yaml
file.--- apiVersion: v1 kind: ServiceAccount metadata: name: demo-setup --- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: demo-setup-edit roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: edit subjects: - kind: ServiceAccount name: demo-setup --- apiVersion: batch/v1 kind: Job metadata: name: create-s3-storage spec: selector: {} template: spec: containers: - args: - -ec - |- echo -n 'Setting up Minio instance and connections' oc apply -f https://github.com/rh-aiservices-bu/fraud-detection/raw/main/setup/setup-s3-no-sa.yaml command: - /bin/bash image: image-registry.openshift-image-registry.svc:5000/openshift/tools:latest imagePullPolicy: IfNotPresent name: create-s3-storage restartPolicy: Never serviceAccount: demo-setup serviceAccountName: demo-setup
- Click Create.
Verification
In the OpenShift console, you should see a "Resources successfully created" message and the following resources listed:
-
demo-setup
-
demo-setup-edit
-
create-s3-storage
-
In the OpenShift AI dashboard:
- Select Data Science Projects and then click the name of your project, Fraud detection.
Click Connections. You should see two connections listed:
My Storage
andPipeline Artifacts
.
Next steps
If you want to complete the pipelines section of this tutorial, go to Enabling data science pipelines.
Otherwise, skip to Creating a workbench.
2.4. Enabling data science pipelines
If you do not intend to complete the pipelines section of the workshop you can skip this step and move on to the next section, Create a Workbench.
In this section, you prepare your tutorial environment so that you can use data science pipelines.
In this tutorial, you implement an example pipeline by using the JupyterLab Elyra extension. With Elyra, you can create a visual end-to-end pipeline workflow that can be executed in OpenShift AI.
Prerequisite
- You have installed local object storage buckets and created connections, as described in Storing data with connections.
Procedure
- In the OpenShift AI dashboard, on the Fraud Detection page, click the Pipelines tab.
Click Configure pipeline server.
In the Configure pipeline server form, in the Access key field next to the key icon, click the dropdown menu and then click Pipeline Artifacts to populate the Configure pipeline server form with credentials for the connection.
- Leave the database configuration as the default.
- Click Configure pipeline server.
Wait until the loading spinner disappears and Start by importing a pipeline is displayed.
ImportantYou must wait until the pipeline configuration is complete before you continue and create your workbench. If you create your workbench before the pipeline server is ready, your workbench will not be able to submit pipelines to it.
If you have waited more than 5 minutes, and the pipeline server configuration does not complete, you can try to delete the pipeline server and create it again.
You can also ask your OpenShift AI administrator to verify that self-signed certificates are added to your cluster as described in Working with certificates.
Verification
- Navigate to the Pipelines tab for the project.
Next to Import pipeline, click the action menu (⋮) and then select View pipeline server configuration.
An information box opens and displays the object storage connection information for the pipeline server.