Setting the hardware profile for Cert Manager

You can set a different hardware profile for Cert Manager to achieve the best performance for your workload.

Editing the CertManagerConfig custom resource

Learn how to edit the CertManagerConfig custom resource to set the hardware profile for Cert Manager.

  • From the OpenShift console:

    1. Log in to your OpenShift console.

    2. Go to Operators > Installed Operators.

    3. From the Project drop-down list, select All Projects

    4. Select IBM Cert Manager.

    5. Select the Cert Manager Config tab. The instance of Cert Manager Config custom resource is listed.

    6. From the overflow action menu, select Edit CertManagerConfig.

    7. Edit the YAML, to set the hardware profile for Cert Manager. For example:

      apiVersion: operator.ibm.com/v1
      kind: CertManagerConfig
      metadata:
      labels:
          app.kubernetes.io/instance: ibm-cert-manager-operator
          app.kubernetes.io/managed-by: ibm-cert-manager-operator
          app.kubernetes.io/name: cert-manager
      name: default
      spec:
          license:
              accept: true
          certManagerController:
              resources:
              limits:
                  cpu: 80m
                  memory: 530Mi
              requests:
                  cpu: 20m
                  memory: 230Mi
                  ephemeral-storage: 256Mi
          certManagerWebhook:
              resources:
              limits:
                  cpu: 60m
                  memory: 100Mi
              requests:
                  cpu: 30m
                  memory: 40Mi
                  ephemeral-storage: 256Mi
          certManagerCAInjector:
              resources:
              limits:
                  cpu: 100m
                  memory: 520Mi
              requests:
                  cpu: 20m
                  memory: 410Mi
                  ephemeral-storage: 256Mi
          enableCertRefresh: true
          enableWebhook: true
          version: 4.2.18
          imageRegistry: icr.io/cpopen/cpfs
          disableHostNetwork: true
      
    8. Click Save.

  • From the command line:

    1. Run the following command:

      oc edit CertManagerConfig default
      
    2. Make your changes to the YAML.

certManagerCAInjector

Table 1. Settings for certManagerCAInjector
Parameter Description Default value Syntax
certManagerCAInjector.resources.limits.cpu Sets the CPU limit for CAInjector container. 100m Kubernetes CPU units (String)
certManagerCAInjector.resources.limits.memory Sets the memory limit for CAInjector container. 520Mi Bytes (String)
certManagerCAInjector.resources.requests.cpu Sets the CPU request for CAInjector container. 20m Kubernetes CPU units (String)
certManagerCAInjector.resources.requests.memory Sets the memory request for CAInjector container. 410Mi Bytes (String)
certManagerCAInjector.resources.requests.ephemeral-storage Sets the ephemeral storage request for CAInjector container. 256Mi Bytes (String)

certManagerController

Table 2. Settings for certManagerController
Parameter Description Default value Syntax
certManagerController.resources.limits.cpu Sets the CPU limit for Controller container. 80m Kubernetes CPU units (String)
certManagerController.resources.limits.memory Sets the memory limit for Controller container. 530Mi Bytes (String)
certManagerController.resources.requests.cpu Sets the CPU request for Controller container. 20m Kubernetes CPU units (String)
certManagerController.resources.requests.memory Sets the memory request for Controller container. 230Mi Bytes (String)
certManagerController.resources.requests.ephemeral-storage Sets the ephemeral storage request for Controller container. 256Mi Bytes (String)

certManagerWebhook

Table 3. Settings for certManagerWebhook
Parameter Description Default value Syntax
certManagerWebhook.resources.limits.cpu Sets the CPU limit for webhook container. 60m Kubernetes CPU units (String)
certManagerWebhook.resources.limits.memory Sets the memory limit for webhook container. 100Mi Bytes (String)
certManagerWebhook.resources.requests.cpu Sets the CPU request for webhook container. 30m Kubernetes CPU units (String)
certManagerWebhook.resources.requests.memory Sets the memory request for webhook container. 40Mi Bytes (String)
certManagerWebhook.resources.requests.ephemeral-storage Sets the ephemeral storage request for webhook container. 256Mi Bytes (String)