Customizing pod specifications with resource specification injection

The IBM Cloud Pak® for Data resource specification injection (RSI) feature enables you to extend Kubernetes resources that are associated with IBM Cloud Pak for Data by applying patches directly to pods that are associated with Kubernetes deployments, StatefulSets, replicasets, replicacontrollers, jobs, and cronjobs.

To use the RSI feature, you must install the RSI webhook on the cluster and enable the RSI webhook to manage the pods in each Cloud Pak for Data project where you want to customize pod specifications.

The RSI webhook ensures that the specified patches are applied to the appropriate resources when Cloud Pak for Data pods are started. You can use the RSI feature to:
  • Add environment variables to pod containers
  • Add labels to pods
  • Add annotations to pods
  • Add node affinity rules to isolate specific workloads
  • Add init containers or sidecar containers to pods.
  • Customize resource requests and labels

Previously, if you patched the specification of a pod, the operator that managed the pod overwrote the patch when the operator ran a reconciliation loop or when you upgraded the operator. In addition, there was no way to track the patches that you applied to the pods.

When you install the RSI feature:
  • The webhook ensures that active patches are applied any time the applicable pods are restarted.
  • The cpd-cli enables you to identify the patches that are applied to the pods in a given project.
Important: Enable this feature only if you are an advanced user on Red Hat® OpenShift® Container Platform. It is your responsibility to ensure that any patches that you apply to not introduce issues to your Cloud Pak for Data installation.