Customizing pod specifications with resource specification injection
The IBM® Software Hub resource
specification injection (RSI) feature enables you to extend Kubernetes resources that are associated with IBM Software Hub by applying patches directly to pods that
are associated with Kubernetes
deployments, StatefulSets, replicasets,
replicacontrollers, jobs, and cronjobs.
Restriction: You cannot use RSI patches to patch the following resources:
zen-core-apideploymentsrsi-webhook-deploymentdeploymentszen-metastore-edbclusters
The RSI webhook is automatically installed when you install IBM Software Hub. The webhook ensures that the specified
patches are applied to the appropriate resources when IBM Software Hub 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
initcontainers orsidecarcontainers 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. With the
cpd-cli, you can identify the patches that are applied to the pods in a
given project.
Important: Use the RSI 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 IBM Software Hub installation.