This guide provides information for cluster administrators about advanced installation configuration options for Knative Serving and Knative Eventing.

The YAML configuration is shown by default when you are creating the Knative Serving or Knative Eventing custom resource definitions. However, you can access the form view by selecting Edit Form in the top right corner of the Create Knative Serving or Create Knative Eventing pages.

Do not modify any YAML contained inside the config field. Some of the configuration values in this field are injected by the OpenShift Serverless Operator, and modifying them will cause your deployment to become unsupported.

Knative Serving supported installation configuration options

Create Knative Serving form

Controller Custom Certs

If your registry uses a self-signed certificate, you must enable tag-to-digest resolution by creating a ConfigMap or Secret. The OpenShift Serverless Operator then automatically configures Knative Serving controller access to the registry.

To enable tag-to-digest resolution, the Knative Serving controller requires access to the container registry.

The ConfigMap or Secret must reside in the same namespace as the Knative Serving custom resource definition.

The following example triggers the OpenShift Serverless Operator to:

  1. Create and mount a volume containing the certificate in the controller.

  2. Set the required environment variable properly.

Example YAML
apiVersion: operator.knative.dev/v1alpha1
kind: KnativeServing
metadata:
  name: knative-serving
  namespace: knative-serving
spec:
  controller-custom-certs:
    name: certs
    type: ConfigMap

The following example uses a certificate in a ConfigMap named certs in the knative-serving namespace.

You can also configure controller custom certs using the form view. The supported types are ConfigMap and Secret.

If no controller custom cert is specified, this defaults to the config-service-ca ConfigMap.

Example default YAML
spec:
  controller-custom-certs:
    name: config-service-ca
    type: ConfigMap

High availability

High availability (HA) defaults to 2 replicas per controller if no number of replicas is specified.

You can set this to 1 to disable HA, or add more replicas by setting a higher integer.

For more information about configuring HA, see High availability on OpenShift Serverless.

Example YAML
spec:
  high-availability:
    replicas: 2