Planning for multiple solutions

IBM® Software Hub is the foundation for multiple solutions. If you purchase multiple solutions that can be installed on top of IBM Software Hub, you must decide how you will install the solutions.

Available solutions

You can install the following solutions on the IBM Software Hub:

Solutions More information
Cloud Pak for Data You can purchase the following licenses:
  • IBM Cloud Pak® for Data Enterprise Edition
  • IBM Cloud Pak for Data Enterprise Edition Non Production
  • IBM Cloud Pak for Data Standard Edition
Cognos Analytics You can purchase the following licenses:
  • IBM Cognos® Analytics Administrator Cartridge
  • IBM Cognos Analytics Explorer Cartridge
  • IBM Cognos Analytics User Cartridge
  • IBM Cognos Analytics Viewer Cartridge
  • IBM Cognos Analytics Authorized Explorer Cartridge
  • IBM Cognos Analytics Authorized User Cartridge
  • IBM Cognos Analytics Authorized Viewer Cartridge
  • IBM Cognos Analytics Cartridge for Non-Production Environment
  • IBM Cognos Analytics Advanced Cartridge
Data Product Hub You can purchase the following licenses:
  • IBM Data Product Hub Cartridge
  • IBM Data Product Hub Cartridge Non Production
Data Replication You can purchase the following licenses:
  • IBM Data Replication Cartridge
  • IBM Data Replication Cartridge for Non-Production
  • IBM InfoSphere® Data Replication Cartridge
  • IBM InfoSphere Data Replication Cartridge for Non-Production
  • IBM Data Replication for Db2® z/OS® Cartridge
  • IBM InfoSphere Data Replication for watsonx.data™ Cartridge
  • IBM InfoSphere Data Replication Cartridge Add-on for IBM watsonx.data
DataStage You can purchase the following licenses:
  • IBM DataStage® Enterprise Cartridge
  • IBM DataStage Enterprise Cartridge for Non-Production
  • IBM DataStage Enterprise Plus Cartridge
  • IBM DataStage Enterprise Plus Cartridge for Data Non-Production
Db2 You can purchase the following licenses:
  • IBM Db2 Advanced Edition Cartridge for IBM Cloud Pak for Data
  • IBM Db2 Standard Edition Cartridge for IBM Cloud Pak for Data
EDB Postgres You can purchase the following licenses:
  • IBM Data Management Platform for EDB Postgres Enterprise for IBM Cloud Pak for Data
  • IBM Data Management Platform for EDB Postgres Enterprise for IBM Cloud Pak for Data Non-Production
  • IBM Data Management Platform for EDB Postgres Standard for IBM Cloud Pak for Data
  • IBM Data Management Platform for EDB Postgres Standard for IBM Cloud Pak for Data Non-Production
IBM Knowledge Catalog Premium You can purchase the following licenses:
  • IBM Knowledge Catalog Premium Cartridge
  • IBM Knowledge Catalog Premium Cartridge Non-Production
IBM Knowledge Catalog Standard You can purchase the following licenses:
  • IBM Knowledge Catalog Standard Cartridge
  • IBM Knowledge Catalog Standard Cartridge Non-Production
IBM Manta Data Lineage You can purchase the following licenses:
  • IBM Manta Data Lineage Cartridge
  • IBM Manta Data Lineage Cartridge Non-Production
IBM StreamSets You can purchase the following licenses:
  • IBM StreamSets Cartridge
  • IBM StreamSets Cartridge Non-Production
Informix You can purchase the following licenses:
  • IBM Informix® Advanced Enterprise Edition Cartridge for IBM Cloud Pak for Data
  • IBM Informix Enterprise Edition Cartridge for IBM Cloud Pak for Data
  • IBM Informix Workgroup Edition Cartridge for IBM Cloud Pak for Data
MANTA Automated Data Lineage You can purchase the following licenses:
  • MANTA Automated Data Lineage for IBM Cloud Pak for Data
MongoDB You can purchase the following licenses:
  • MongoDB Enterprise Advanced with IBM
  • MongoDB Enterprise Advanced with IBM for Non-Production
OpenPages You can purchase the following licenses:
  • IBM OpenPages® Cartridge
  • IBM OpenPages Cartridge for Non-Production
Planning Analytics You can purchase the following licenses:
  • IBM Planning Analytics Cartridge
Product Master You can purchase the following licenses:
  • IBM Product Master Cartridge
  • IBM Product Master Cartridge for Non-Production
Watson Discovery You can purchase the following licenses:
  • IBM Watson® Discovery Cartridge
Watson Speech services You can purchase the following licenses:
  • IBM Watson Speech Services Cartridge
watsonx.ai™ You can purchase the following licenses:
  • IBM watsonx.ai
  • IBM watsonx.ai Non-Production

In addition, you can purchase the following licenses to use models provided by Mistral AI:

  • Mistral AI with IBM
  • Mistral AI with IBM Non-Production

For information about the models that are included in the preceding Mistral AI licenses, see Foundation Models.

watsonx Assistant You can purchase the following licenses:
  • IBM watsonx Assistant™ Cartridge
  • IBM watsonx Assistant for Voice Interaction Cartridge
watsonx Code Assistant™ for Red Hat® Ansible® Lightspeed You can purchase the following licenses:
  • IBM watsonx Code Assistant for Ansible
watsonx Code Assistant for Z You can purchase the following licenses:
  • IBM watsonx Code Assistant for Z
watsonx.data You can purchase the following licenses:
  • IBM watsonx.data
  • IBM watsonx.data Non-Production
watsonx.governance™ You can purchase one or more of the following licenses:
  • IBM watsonx.governance Model Management
  • IBM watsonx.governance Model Management Non-Production
  • IBM watsonx.governance Risk and Compliance Foundation
  • IBM watsonx.governance Risk and Compliance Foundation Non-Production
watsonx™ Orchestrate You can purchase the following licenses:
  • IBM watsonx Orchestrate® with watsonx Assistant Cartridge
  • IBM watsonx Orchestrate Cartridge with watsonx Assistant for Non-Production
  • IBM watsonx Orchestrate with watsonx Assistant for Voice Interaction Cartridge

Choosing a deployment strategy

You can choose whether you want to install all of the solutions on a single instance of IBM Software Hub or whether you want to install the solutions on different instances of IBM Software Hub.

Review the following table to determine which strategy is appropriate for your needs:

Deployment strategy Choose this option to...
Single instance of IBM Software Hub
  • Simplify your Day 1 and Day 2 operations by installing, configuring, and managing one instance.
  • Optimize vCPU and memory use
  • Share data between solutions
Separate instances of IBM Software Hub
  • Support separate customers or business units
  • Support different levels of fault tolerance and scalability
  • Isolate workloads
  • Ensure compliance with license terms without pinning deployments to specific nodes
Important: Work with your IBM Sales representative or Customer Success Manager to choose the appropriate strategy for your environment. Your representative can help you balance footprint, cost, and compliance requirements.

Tracking license metrics when you deploy multiple solutions on a single instance

If you choose to install multiple solutions on a single instance of IBM Software Hub, you can use node pinning to ensure that you are compliant with your license terms. Node pinning uses node affinity to determine where the pods for each solution can be placed.

Note: Node pinning is optional but is strongly recommended if you plan to install multiple solutions in a single instance of IBM Software Hub.

Nodes fall into one of the following categories:

Node type Which pods run here?
VPC nodes Pods that count against your VPC entitlement.
Non-VPC nodes Pods that do not count against your VPC entitlement because they are part of a non-charged entitlement.

Refer to your license for information about which components are non-charged entitlements.

GPU nodes Pods that count against your General Purpose Graphics Processing Units (GPGPUs) entitlement.

GPU nodes are not applicable if you don't have any services that require GPUs.

Note: Work with your IBM Sales representative or Customer Success Manager to identify the types of nodes you need based on the solutions you plan to install.

If you decide to use node pinning, work with your cluster administrator to:

  1. Identify each type of node in your cluster
  2. Choose a strategy for passing node information to IBM Software Hub.
  3. Decide whether you will enforce node pinning.

Passing node information to IBM Software Hub

You can use either of the following strategies to pass node information to IBM Software Hub:

Method for identifying nodes Considerations
Node labels If you use this method, pods can be scheduled on any nodes with the specified label.
Important: If you back up your IBM Software Hub deployment to a different cluster, it is recommended that you use this option over node lists, especially if you plan to enforce node pinning.

When you use node labels, you can re-create the labels on the target cluster before you restore IBM Software Hub, which enables node pinning to occur with minimal disruption.

For example, you want to use the following labels:

  • VPC nodes are labeled with chargeable-components.

    If you have 4 nodes with the label chargeable-components, pods that count against your VPC entitlement can be scheduled on any of the nodes with the chargeable-components label.

  • Non-VPC nodes are labeled with non-charged-components.

    If you have 2 nodes with the label non-charged-components, pods that do not count against your VPC entitlement can be scheduled on any of the nodes with the non-charged-components label.

  • GPU nodes are labeled with chargeable-gpu-components.

    If you have 3 nodes with the label chargeable-gpu-components, pods that against your GPGPU entitlement can be scheduled on any of the nodes with the chargeable-gpu-components label.

If you choose this method, see Labeling nodes for node pinning for information on how to label your nodes.

Node list If you use this method, pods can be scheduled only on the specified nodes. You can specify nodes by host name or IP address.
Important: If you back up your IBM Software Hub deployment to a different cluster, it is recommended that you use node labels rather than node lists, especially if you plan to enforce node pinning.

If you choose to use node lists to pin pods to nodes, you cannot enforce node pinning, because it will prevent pods from coming up on the target cluster.

In addition, if you use node lists to pin pods to nodes, you must re-run the cpd-cli manage apply-entitlement command after you restore on the target cluster. Any pods that need to be rescheduled will be unavailable while they are moved to different nodes.

For example, you have 7 worker nodes in your cluster. However, when you run the cpd-cli manage apply-entitlement command, you specify the following worker nodes:

  • VPC nodes: worker1.sample.com,worker2.sample.com
  • Non-VPC nodes: worker4.sample.com
  • GPU nodes: worker6.sample.com

The pods will be scheduled only on the specified worker nodes.

No pods will be scheduled on worker3.sample.com, worker5.sample.com, or worker7.sample.com.

Enforcing node pinning

When you run the cpd-cli manage apply-entitlement command, you can specify whether you want to enforce node pinning.

By default, node pinning is not enforced. When pinning is not enforced, pods use the preferredDuringSchedulingIgnoredDuringExecution setting for node pinning.

If you enforce node pinning, pods use the requiredDuringSchedulingIgnoredDuringExecution setting for node pinning, which means that the scheduler cannot schedule the pod unless the rule is met.

Important: If you choose this option, you must have sufficient resources to schedule the pods. If you don't have sufficient resources, some pods will be stuck in Pending state.
Do not enforce node pinning if either of the following statements applies to your cluster:
  • You don't have sufficient resources to ensure that pods are scheduled on the specified nodes.
  • You have existing pod affinity rules that you need to support.

Labeling nodes for node pinning

If you want to use node labels to pin pods to nodes, identify the nodes where you want to schedule IBM Software Hub pods.
Remember: Nodes fall into the following categories:
  • VPC nodes
  • Non-VPC nodes
  • GPU nodes (Not applicable if you don't have any services that require GPUs.)

You must use the isc-entitlement key and specify the appropriate label for each type of node where you want to schedule pods. For example:

  • You want to use chargeable-components to identify VPC nodes. Run the following command on each node where pods that count against your VPC entitlement can be scheduled:
    oc label node <node-name> isc-entitlement=chargeable-components

    Replace <node-name> with the name of the node to label.

  • You want to use non-chargeable-components to identify non-VPC nodes. Run the following command on each node where pods that do not count against your VPC entitlement can be scheduled:
    oc label node <node-name> isc-entitlement=non-chargeable-components

    Replace <node-name> with the name of the node to label.

  • You want to use chargeable-gpu-components to identify GPU nodes. Run the following command on each node where pods that count against your GPGPU entitlement can be scheduled:
    oc label node <node-name> isc-entitlement=chargeable-gpu-components

    Replace <node-name> with the name of the node to label.