Installing watsonx.data intelligence

An instance administrator can install watsonx.data intelligence on IBM Software Hub Version 5.2.

Who needs to complete this task?

Instance administrator To install watsonx.data intelligence, you must be an instance administrator. An instance administrator has permission to install software in the following projects:

The operators project for the instance

The operators for this instance of watsonx.data intelligence are installed in the operators project.

In the installation commands, the ${PROJECT_CPD_INST_OPERATORS} environment variable refers to the operators project.

The operands project for the instance

The custom resources for the control plane and watsonx.data intelligence are installed in the operands project.

In the installation commands, the ${PROJECT_CPD_INST_OPERANDS} environment variable refers to the operands project.

When do you need to complete this task?

Review the following options to determine whether you need to complete this task:

  • If you want to install multiple services at the same time, follow the process in Running a batch installation of solutions and services instead.
  • If you didn't install watsonx.data intelligence as part of a batch installation, complete this task to add watsonx.data intelligence to your environment.

    Repeat as needed If you are responsible for multiple instances of IBM Software Hub, you can repeat this task to install more instances of watsonx.data intelligence on the cluster.

Information you need to complete this task

Review the following information before you install watsonx.data intelligence:

Version requirements

All of the components that are associated with an instance of IBM Software Hub must be installed at the same release. For example, if the IBM Software Hub control plane is installed at Version 5.2.2, you must install watsonx.data intelligence at Version 5.2.2.

Environment variables

The commands in this task use environment variables so that you can run the commands exactly as written.

  • If you don't have the script that defines the environment variables, see Setting up installation environment variables.
  • To use the environment variables from the script, you must source the environment variables before you run the commands in this task. For example, run:
    source ./cpd_vars.sh
Security context constraint

watsonx.data intelligence works with the default Red Hat® OpenShift® Container Platform security context constraint, restricted-v2.

Common core services

watsonx.data intelligence requires the IBM Software Hub common core services.

If the common core services are not installed in the operands project for the instance, the common core services are automatically installed when you install watsonx.data intelligence. The common core services installation increases the amount of time the installation takes to complete.

Storage requirements
You must specify storage classes when you install watsonx.data intelligence. The following storage classes are recommended. However, if you don't use these storage classes on your cluster, ensure that you specify a storage class with an equivalent definition.
Storage Notes Storage classes
OpenShift Data Foundation When you install the service, specify file storage and block storage.
  • File storage: ocs-storagecluster-cephfs
  • Block storage: ocs-storagecluster-ceph-rbd
IBM Fusion Data Foundation When you install the service, specify file storage and block storage.
  • File storage: ocs-storagecluster-cephfs
  • Block storage: ocs-storagecluster-ceph-rbd
IBM Fusion Global Data Platform When you install the service, specify file storage and block storage.
  • File storage:

    Either of the following storage classes:

    • ibm-spectrum-scale-sc
    • ibm-storage-fusion-cp-sc
  • Block storage:

    Either of the following storage classes:

    • ibm-spectrum-scale-sc
    • ibm-storage-fusion-cp-sc
IBM Storage Scale Container Native When you install the service, specify file storage and block storage.
  • File storage: ibm-spectrum-scale-sc
  • Block storage: ibm-spectrum-scale-sc
Portworx When you install the service, the --storage_vendor=portworx option ensures that the service uses the correct storage classes.
  • File storage: portworx-rwx-gp3-sc

    (Equivalent to portworx-shared-gp3 in older installations)

  • Block storage:
    • portworx-couchdb-sc
    • portworx-elastic-sc
    • portworx-gp3-sc
NFS When you install the service, specify file storage and block storage.
  • File storage: managed-nfs-storage
  • Block storage: managed-nfs-storage
Amazon Elastic storage When you install the service, specify file storage and block storage.

File storage is provided by Amazon Elastic File System. Block storage is provided by Amazon Elastic Block Store.

  • File storage: efs-nfs-client
  • Block storage:

    Either of the following storage classes:

    • gp2-csi
    • gp3-csi
NetApp Trident When you install the service, specify file storage and block storage.
  • File storage: ontap-nas
  • Block storage: ontap-nas
Nutanix Not supported. Not applicable.

Before you begin

This task assumes that the following prerequisites are met:

System requirements
This task assumes that the cluster meets the minimum requirements for watsonx.data intelligence.
Where to find more information
If this task is not complete, see System requirements.
Workstation
This task assumes that the workstation from which you will run the installation is set up as a client workstation and has the following command-line interfaces:
  • IBM Software Hub CLI: cpd-cli
  • OpenShift CLI: oc
Where to find more information
If this task is not complete, see Setting up a client workstation.
Control plane
This task assumes that the IBM Software Hub control plane is installed.
Where to find more information
If this task is not complete, see Installing an instance of IBM Software Hub.
Private container registry
If your environment uses a private container registry (for example, your cluster is air-gapped), this task assumes that the following tasks are complete:
  1. The watsonx.data intelligence software images are mirrored to the private container registry.
    Where to find more information
    If this task is not complete, see Mirroring images to a private container registry.
  2. The cpd-cli is configured to pull the olm-utils-v3 image from the private container registry.
    Where to find more information
    If this task is not complete, see Pulling the olm-utils-v3 image from the private container registry.
Load balancer
The load balancer timeout settings are adjusted for watsonx.data intelligence.
Where to find more information
If this task is not complete, see Changing load balancer settings.
GPU operators
If you plan to use features that require GPUs, this task assumes that the operators required to use GPUs are installed.
Where to find more information
If this task is not complete, see Installing operators for services that require GPUs.
Red Hat OpenShift AI
If you plan to use features that require Red Hat OpenShift AI, this task assumes that Red Hat OpenShift AI is installed.
Where to find more information
If this task is not complete, see Installing Red Hat OpenShift AI.

Procedure

Complete the following tasks to install watsonx.data intelligence:

  1. Specifying installation options
  2. Installing the service
  3. Validating the installation
  4. What to do next

Specifying installation options

If you plan to install watsonx.data™ intelligence, you can specify installation options in a file named install-options.yml in the cpd-cli work directory (For example: cpd-cli-workspace/olm-utils-workspace/work).

The parameters are optional. If you do not set these installation parameters, the default values are used. Uncomment the parameters that you want to override and update the values appropriately.

The sample YAML content uses the default values.

################################################################################
# watsonx.data intelligence parameters
################################################################################
#custom_spec:
#  watsonx_dataintelligence:
#    enableAISearch: false
#    enableDataGovernanceCatalog: true
#    enableKnowledgeGraph: true
#    enableDataQuality: false
#    enableDataLineage: true
#    enableDataProduct: true
#    enableGenerativeAICapabilities: true
#    enableSemanticEnrichment: true
#    enableSemanticEmbedding: false
#    enableTextToSql: false
#    enableModelsOn: cpu
#    customModelTextToSQL: granite-3-3-8b-instruct
Property Description
enableAISearch Specify whether to enable LLM-based semantic search for assets and artifacts across all workspaces.
Default value
false
Valid values
false
Do not enable LLM-based semantic search.
true
Enable LLM-based semantic search.
If you set enableAISearch: true, you must set at least one of the following options to true:
  • enableDataGovernanceCatalog

    By default, enableDataGovernanceCatalog is set to true.

  • enableDataProduct

    By default, enableDataProduct is set to true.

enableDataGovernanceCatalog Specify whether to enable data governance and catalog features.
Default value
true
Valid values
false
Do not enable the data governance and catalog features.
true
Enable the data governance and catalog features.
You must set enableDataGovernanceCatalog: true if you plan to use the following features:
  • Data quality (enableDataQuality: true)
  • Knowledge graph (enableKnowledgeGraph: true)
Tip: You can enable LLM-based search on the assets and artifacts in the catalog by setting enableAISearch: true.
enableKnowledgeGraph Specify whether to enable the knowledge graph feature. The knowledge graph provides the following capabilities:
  • Relationship explorer
  • Business term relationship search
Prerequisite
This feature requires the data governance catalog. You must set enableDataGovernanceCatalog:true.
Default value
true
Valid values
false
Do not enable the knowledge graph feature.
true
Enable the knowledge graph feature.
enableDataQuality Specify whether to enable data quality features in projects so that you can measure, monitor, and maintain the quality of your data to ensure the data meets your expectations and standards for specific use cases.
Important: When you enable the data quality feature, DataStage Enterprise is automatically installed.

If you did not purchase a separate DataStage license, use of DataStage Enterprise is limited to creating, managing, and running data quality rules. For examples of accepted use, see Enabling additional features after installation or upgrade for watsonx.data intelligence.

Prerequisite
This feature requires the data governance catalog. You must set enableDataGovernanceCatalog:true.
Default value
false
Valid values
false
Do not enable the data quality feature.
true
Enable the data quality feature.
enableDataLineage

Specify whether to enable data lineage features.

Data lineage is the process of tracking data as it is moved and used by different software tools. Lineage tracks where data came from, how it was transformed, and where the data was moved to.

Default value
true
Valid values
false
Do not enable data lineage features.
true
Enable data lineage features.
enableDataProduct

Specify whether to enable data sharing features.

When you enable data sharing, data producers can package data and data-related assets into data products so that data consumers have access to secure, high quality data

Default value
true
Valid values
false
Do not enable data sharing features.
true
Enable data sharing features.
Tip: You can enable LLM-based search on data products by setting enableAISearch: true.
enableGenerativeAICapabilities Specify whether to enable gen AI capabilities.
Enable the gen AI capabilities if you plan to use the following features:
  • Semantic enrichment
  • Text to SQL 5.2.1 and later
Default value
true
Valid values
false
Do not enable generative AI capabilities.
true
Enable generative AI capabilities.
enableSemanticEnrichment Specify whether to enable gen AI metadata expansion. Metadata expansion includes:
  • Table name expansion
  • Column name expansion
  • Description generation
Prerequisite
This feature requires gen AI capabilities. You must set enableGenerativeAICapabilities: true.
Default value
true
Valid values
false
Do not enable gen AI metadata expansion.
true
Enable gen AI metadata expansion.
enableSemanticEmbedding

5.2.1 and later This parameter is available starting in IBM Software Hub Version 5.2.1.

Specify whether to enable semantic embedding.

You must enable semantic embedding if you plan to use the following features:
  • Text to SQL
Prerequisite

This feature requires GPU. You cannot run the required model on CPU.

In addition, this feature requires gen AI capabilities. You must set enableGenerativeAICapabilities: true.

Default value
false
Valid values
false
Do not enable semantic embedding.
true
Enable semantic embedding.
enableTextToSql

5.2.1 and later This parameter is available starting in IBM Software Hub Version 5.2.1.

Specify whether to generate SQL queries from natural language input. Text-to-SQL capabilities can be used to create query-based data assets, which can be use for data products or in searches.

Prerequisite

This feature requires GPU. You can choose where to run the required models:

  • To run the required models locally, set enableModelsOn: gpu
  • To run the required models on a remote instance of watsonx.ai™, set enableModelsOn: remote

In addition, this feature requires the following settings:

  • Semantic embedding.

    You must set enableSemanticEmbedding: true.

Default value
false
Valid values
false
Do not convert natural language queries to SQL queries.
true
Convert natural language queries to SQL queries.
enableModelsOn Specify where you want the models that are used with the gen AI capabilities to run.
Prerequisite
This feature requires gen AI capabilities. You must set enableGenerativeAICapabilities: true.
Default value
'cpu'
Valid values
'cpu'
Run the foundation model on CPU.
Restriction: This option can be used only for expanding metadata and term assignment when enriching metadata (enableSemanticEnrichment: true).
This option is not supported for:
  • Converting natural language queries to SQL queries ( enableTextToSql: true)
'gpu'
Run the foundation model on GPU.
Note: If you use this setting, the inference foundation models component (watsonx_ai_ifm) is automatically installed.

This option requires at least one GPU. For information about supported GPUs, see GPU requirements for models.

'remote'
Run the foundation model on a remote instance of watsonx.ai. The instance can be running on:
  • Another on-premises instance of IBM Software Hub
  • IBM watsonx™ as a Service
Important: If you use this setting, you must:
  1. Ensure that the foundation model is available and running on the remote instance.
  2. Create a connection to the remote instance.

    For more information, see Enabling users to connect to an external IBM watsonx.ai foundation model in the Data Fabric documentation.

If the preceding requirements are not met, any tasks that rely on the model will fail.

customModelTextToSql Specify a custom model for Text-To-SQL conversions.
Default model

By default, the Text-To-SQL feature uses the granite-3-8b-instruct model (ID: granite-3-8b-instruct).

Recommended model for better accuracy

You can improve the accuracy of results when converting plain text queries to SQL queries if you use the llama-3-3-70b-instruct model (ID: llama-3-3-70b-instruct).

However, this model requires significantly more resources than the granite-3-8b-instruct model. For more information about the resources required for each model, see GPU requirements for models.

Using other models

If you chose to use a different model, the accuracy of the results might vary.

Prerequisite

This option applies only to environments with local GPUs (enableModelsOn: gpu).

If you want to use a custom model on a remote instance of watsonx.ai (enableModelsOn: remote), see Enabling users to connect to an external IBM watsonx.ai foundation model in the Data Fabric documentation.

In addition, this feature requires the following settings:

  • Text-To-SQL conversions.

    You must set enableTextToSql: true.

Default value
granite-3-8b-instruct
Valid values
Specify the ID of the model that you want to use. The IDs of the recommended models are:
  • granite-3-8b-instruct
  • llama-3-3-70b-instruct

Installing the service

To install watsonx.data intelligence:

  1. Log the cpd-cli in to the Red Hat OpenShift Container Platform cluster:
    ${CPDM_OC_LOGIN}
    Remember: CPDM_OC_LOGIN is an alias for the cpd-cli manage login-to-ocp command.
  2. Run the following command to create the required OLM objects for watsonx.data intelligence in the operators project for the instance:
    cpd-cli manage apply-olm \
    --release=${VERSION} \
    --cpd_operator_ns=${PROJECT_CPD_INST_OPERATORS} \
    --components=watsonx_dataintelligence
    Wait for the cpd-cli to return the following message before you proceed to the next step:
    [SUCCESS]... The apply-olm command ran successfully

    If the apply-olm fails, see Troubleshooting the apply-olm command during installation or upgrade.

  3. Create the custom resource for watsonx.data intelligence.

    The command that you run depends on the storage on your cluster.


    Red Hat OpenShift Data Foundation storage

    Run the appropriate command to create the custom resource.

    Default installation (without installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --license_acceptance=true
    Custom installation (with installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --param-file=/tmp/work/install-options.yml \
    --license_acceptance=true

    IBM Fusion Data Foundation storage

    Run the appropriate command to create the custom resource.

    Default installation (without installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --license_acceptance=true
    Custom installation (with installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --param-file=/tmp/work/install-options.yml \
    --license_acceptance=true

    IBM Fusion Global Data Platform storage
    Remember: When you use IBM Fusion Global Data Platform storage, both ${STG_CLASS_BLOCK} and ${STG_CLASS_FILE} point to the same storage class, typically ibm-spectrum-scale-sc or ibm-storage-fusion-cp-sc.

    Run the appropriate command to create the custom resource.

    Default installation (without installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --license_acceptance=true
    Custom installation (with installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --param-file=/tmp/work/install-options.yml \
    --license_acceptance=true

    IBM Storage Scale Container Native storage
    Remember: When you use IBM Storage Scale Container Native storage, both ${STG_CLASS_BLOCK} and ${STG_CLASS_FILE} point to the same storage class, typically ibm-spectrum-scale-sc.

    Run the appropriate command to create the custom resource.

    Default installation (without installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --license_acceptance=true
    Custom installation (with installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --param-file=/tmp/work/install-options.yml \
    --license_acceptance=true

    Portworx storage

    Run the appropriate command to create the custom resource.

    Default installation (without installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --storage_vendor=portworx \
    --license_acceptance=true
    Custom installation (with installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --storage_vendor=portworx \
    --param-file=/tmp/work/install-options.yml \
    --license_acceptance=true

    NFS storage
    Remember: When you use NFS storage, both ${STG_CLASS_BLOCK} and ${STG_CLASS_FILE} point to the same storage class, typically managed-nfs-storage.

    Run the appropriate command to create the custom resource.

    Default installation (without installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --license_acceptance=true
    Custom installation (with installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --param-file=/tmp/work/install-options.yml \
    --license_acceptance=true

    AWS with EFS storage only
    Remember: When you use EFS storage, both ${STG_CLASS_BLOCK} and ${STG_CLASS_FILE} point to the same storage class, typically efs-nfs-client.

    Run the appropriate command to create the custom resource.

    Default installation (without installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --license_acceptance=true
    Custom installation (with installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --param-file=/tmp/work/install-options.yml \
    --license_acceptance=true

    AWS with EFS and EBS storage

    Run the appropriate command to create the custom resource.

    Default installation (without installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --license_acceptance=true
    Custom installation (with installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --param-file=/tmp/work/install-options.yml \
    --license_acceptance=true

    NetApp Trident
    Remember: When you use NetApp Trident storage, both ${STG_CLASS_BLOCK} and ${STG_CLASS_FILE} point to the same storage class, typically ontap-nas.

    Run the appropriate command to create the custom resource.

    Default installation (without installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --license_acceptance=true
    Custom installation (with installation options)
    cpd-cli manage apply-cr \
    --components=watsonx_dataintelligence \
    --release=${VERSION} \
    --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --block_storage_class=${STG_CLASS_BLOCK} \
    --file_storage_class=${STG_CLASS_FILE} \
    --param-file=/tmp/work/install-options.yml \
    --license_acceptance=true

Validating the installation

watsonx.data intelligence is installed when the apply-cr command returns:
[SUCCESS]... The apply-cr command ran successfully

If you want to confirm that the custom resource status is Completed, you can run the cpd-cli manage get-cr-status command:

cpd-cli manage get-cr-status \
--cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
--components=watsonx_dataintelligence

What to do next

Your next steps depend on the version of IBM Software Hub that you installed:

Version 5.2.1 or later
  1. Complete Post-installation setup for watsonx.data intelligence.

After you complete the preceding steps, watsonx.data intelligence is ready to use.

Version 5.2.0
  1. Install the services that you need on this instance of IBM Software Hub
  2. Apply the IBM Software Hub Version 5.2.0 - Day 0 patch

    You must apply the patch to each instance of IBM Software Hub Version 5.2.0 that you install.

  3. Complete Post-installation setup for watsonx.data intelligence.

After you complete the preceding steps, watsonx.data intelligence is ready to use.