Changing the process IDs limit

To ensure that some services can run correctly, you might need to increase the process IDs limit setting on the OpenShift® Container Platform.

Installation phase
  • You are not here. Setting up a client workstation
  • You are not here. Setting up a cluster
  • You are not here. Collecting required information
  • You are not here. Preparing to run installs in a restricted network
  • You are not here. Preparing to run installs from a private container registry
  • You are here icon. Preparing the cluster for Cloud Pak for Data
  • You are not here. Preparing to install an instance of Cloud Pak for Data
  • You are not here. Installing an instance of Cloud Pak for Data
  • You are not here. Setting up the Cloud Pak for Data control plane
  • You are not here. Installing solutions and services
Who needs to complete this task?

Cluster administratorA cluster administrator must complete this task.

When do you need to complete this task?
One-time setup You must complete this task if you plan to install any of the following services:
  • Data Product Hub
  • Data Virtualization
  • DataStage
  • Db2
  • Db2 Big SQL
  • Db2 Warehouse
  • IBM Knowledge Catalog
  • IBM Knowledge Catalog Premium
  • IBM Knowledge Catalog Standard
  • Watson Studio

Before you begin

Best practice: You can run the commands in this task exactly as written if you set up environment variables. For instructions, see Setting up installation environment variables.

Ensure that you source the environment variables before you run the commands in this task.

About this task

Use the following table to determine whether you need to adjust the process IDs limit based on your Red Hat® OpenShift Container Platform environment:

Deployment environment Managed Self-managed
On-premises No action is required.

If you install Cloud Pak for Data on IBM Cloud Satellite, the CRI-O container settings are automatically applied to your cluster as part of the installation.

You must set the process IDs limit by creating a KubeletConfig.
IBM Cloud No action is required.

If you install Cloud Pak for Data on IBM Cloud, the CRI-O container settings are automatically applied to your cluster as part of the installation. You do not need to change the CRI-O settings.

You must set the process IDs limit by creating a KubeletConfig.
AWS You must set the process IDs limit by creating a KubeletConfig.
Important: To change this setting on Red Hat OpenShift Service on AWS (ROSA) you might need a Support Exception from Red Hat. For more information, see https://access.redhat.com/solutions/6986931 on the Red Hat Customer Portal.
You must set the process IDs limit by creating a KubeletConfig.
Microsoft Azure You must set the process IDs limit by creating a KubeletConfig.
Important: To change this setting on Azure Red Hat OpenShift (ARO) you must have a Support Exception from Red Hat. For more information, see https://access.redhat.com/solutions/6986931 on the Red Hat Customer Portal.
You must set the process IDs limit by creating a KubeletConfig.
Google Cloud Not applicable You must set the process IDs limit by creating a KubeletConfig.

Procedure

To change the process IDs limit by creating a KubeletConfig:

  1. Log in to Red Hat OpenShift Container Platform as a user with sufficient permissions to complete the task.
    ${OC_LOGIN}
    Remember: OC_LOGIN is an alias for the oc login command.
  2. Check whether there is an existing kubeletconfig on the cluster:
    oc get kubeletconfig
  3. Take the appropriate action based on whether the command returns the name of a kubeletconfig:

    The command returns the name of a kubeletconfig
    1. Set the KUBELET_CONFIG environment variable to the name of the existing kubeletconfig:
      export KUBELET_CONFIG=<kubeletconfig-name>
    2. Run the following command to patch the kubeletconfig:
      oc patch kubeletconfig ${KUBELET_CONFIG} \
      --type=merge \
      --patch='{"spec":{"kubeletConfig":{"podPidsLimit":16384}}}'

    The command returns an empty response

    Run the following command to create the kubeletconfig that defines the podPidsLimit:

    oc apply -f - << EOF
    apiVersion: machineconfiguration.openshift.io/v1
    kind: KubeletConfig
    metadata:
      name: cpd-kubeletconfig
    spec:
      kubeletConfig:
        podPidsLimit: 16384
      machineConfigPoolSelector:
        matchExpressions:
        - key: pools.operator.machineconfiguration.openshift.io/worker
          operator: Exists
    EOF

What to do next

Now that you've changed the process IDs limit, you're ready to complete Changing kernel parameter settings.