You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If you are using a third-party secret provider such as cert-manager, you can configure your secret manager to label the Kubernetes TLS secret automatically. Cert-manager users can use the secret template offered to automatically generate secrets with the correct label. In this case, secret filtering is done based on the key only, but this value can carry useful information such as the certificate ID that the secret contains.
38
+
+
39
+
[NOTE]
40
+
====
41
+
The {cert-manager-operator} is a Technology Preview feature. For more information, see the *Installing the {cert-manager-operator}* documentation.
42
+
====
43
+
30
44
. Update the `DomainMapping` CR to use the TLS secret that you have created:
= Improving memory usage by using secret filtering for {SMProductShortName}
8
+
9
+
By default, the link:https://aly.arriqaaq.com/kubernetes-informers/[informers] implementation for the Kubernetes `client-go` library fetches all resources of a particular type. This can lead to a substantial overhead when many resources are available, which can cause the Knative `net-istio` ingress controller to fail on large clusters due to memory leaking. However, a filtering mechanism is available for the Knative `net-istio` ingress controller, which enables the controller to only fetch Knative related secrets. You can enable this mechanism by adding an annotation to the `KnativeServing` custom resource (CR).
10
+
11
+
.Prerequisites
12
+
13
+
ifdef::openshift-enterprise[]
14
+
* You have access to an {product-title} account with cluster administrator access.
15
+
endif::[]
16
+
17
+
ifdef::openshift-dedicated,openshift-rosa[]
18
+
* You have access to an {product-title} account with cluster or dedicated administrator access.
19
+
endif::[]
20
+
21
+
* You have created a project or have access to a project with the appropriate roles and permissions to create applications and other workloads in {product-title}.
22
+
* Install {SMProductName}. {ServerlessProductName} with {SMProductShortName} only is supported for use with {SMProductName} version 2.0.5 or later.
23
+
* Install the {ServerlessOperatorName} and Knative Serving.
24
+
* Install the OpenShift CLI (`oc`).
25
+
26
+
.Procedure
27
+
28
+
* Add the `serverless.openshift.io/enable-secret-informer-filtering` annotation to the `KnativeServing` CR:
= Integrating {SMProductShortName} with {ServerlessProductName} when Kourier is enabled
8
8
9
+
You can use {SMProductShortName} with {ServerlessProductName} even if Kourier is already enabled. This procedure might be useful if you have already installed Knative Serving with Kourier enabled, but decide to add a {SMProductShortName} integration later.
* You have access to an {product-title} account with cluster or dedicated administrator access.
17
19
endif::[]
18
20
19
-
* Install the OpenShift CLI (`oc`).
20
21
* You have created a project or have access to a project with the appropriate roles and permissions to create applications and other workloads in {product-title}.
21
-
* You have installed the {ServerlessOperatorName} and Knative Serving on your cluster.
22
-
* You have installed {SMProductName}. {ServerlessProductName} with {SMProductShortName} and Kourier is supported for use with both {SMProductName} versions 1.x and 2.x.
22
+
* Install the OpenShift CLI (`oc`).
23
+
* Install the {ServerlessOperatorName} and Knative Serving on your cluster.
24
+
* Install {SMProductName}. {ServerlessProductName} with {SMProductShortName} and Kourier is supported for use with both {SMProductName} versions 1.x and 2.x.
Copy file name to clipboardExpand all lines: modules/serverless-ossm-setup.adoc
+4-10Lines changed: 4 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,12 +6,10 @@
6
6
[id="serverless-ossm-setup_{context}"]
7
7
= Integrating {SMProductShortName} with {ServerlessProductName}
8
8
9
-
You can integrate {SMProductShortName} with {ServerlessProductName} without using Kourier by completing the following procedure.
9
+
You can integrate {SMProductShortName} with {ServerlessProductName} without using Kourier as the default ingress. To do this, do not install the Knative Serving component before completing the following procedure. There are additional steps required when creating the `KnativeServing` custom resource defintion (CRD) to integrate Knative Serving with {SMProductShortName}, which are not covered in the general Knative Serving installation procedure. This procedure might be useful if you want to integrate {SMProductShortName} as the default and only ingress for your {ServerlessProductName} installation.
10
10
11
11
.Prerequisites
12
12
13
-
* You have installed {SMProductName}. {ServerlessProductName} with {SMProductShortName} only is supported for use with {SMProductName} version 2.0.5 or higher.
14
-
15
13
ifdef::openshift-enterprise[]
16
14
* You have access to an {product-title} account with cluster administrator access.
* You have access to an {product-title} account with cluster or dedicated administrator access.
21
19
endif::[]
22
20
23
-
* You have installed the {ServerlessOperatorName}.
24
-
+
25
-
[IMPORTANT]
26
-
====
27
-
Do not install the Knative Serving component before completing the following procedures. There are additional steps required when creating the `KnativeServing` custom resource defintion (CRD) to integrate Knative Serving with {SMProductShortName}, which are not covered in the general Knative Serving installation procedure of the _Administration guide_.
28
-
====
29
-
* Install the OpenShift CLI (`oc`).
30
21
* You have created a project or have access to a project with the appropriate roles and permissions to create applications and other workloads in {product-title}.
22
+
* Install {SMProductName}. {ServerlessProductName} with {SMProductShortName} only is supported for use with {SMProductName} version 2.0.5 or later.
Using {SMProductShortName} with {ServerlessProductName} enables developers to configure additional networking and routing options.
10
-
11
-
The {ServerlessOperatorName} provides Kourier as the default ingress for Knative. However, you can use {SMProductShortName} with {ServerlessProductName} whether Kourier is enabled or not. Integrating with Kourier disabled allows you to configure additional networking and routing options that the Kourier ingress does not support.
9
+
The {ServerlessOperatorName} provides Kourier as the default ingress for Knative. However, you can use {SMProductShortName} with {ServerlessProductName} whether Kourier is enabled or not. Integrating with Kourier disabled allows you to configure additional networking and routing options that the Kourier ingress does not support, such as mTLS functionality.
12
10
13
11
[IMPORTANT]
14
12
====
15
13
{ServerlessProductName} only supports the use of {SMProductName} functionality that is explicitly documented in this guide, and does not support other undocumented features.
16
14
====
17
15
18
-
// without kourier
19
-
[id="serverless-ossm-setup-native"]
20
-
== Integrating {SMProductShortName} with {ServerlessProductName} natively
21
-
22
-
Integrating {SMProductShortName} with {ServerlessProductName} natively, without Kourier, allows you to use additional networking and routing options that are not supported by the default Kourier ingress, such as mTLS functionality.
23
-
24
-
The examples in the following procedures use the domain `example.com`. The example certificate for this domain is used as a certificate authority (CA) that signs the subdomain certificate.
16
+
[id="prerequsites_serverless-ossm-setup"]
17
+
== Prerequisites
25
18
19
+
* The examples in the following procedures use the domain `example.com`. The example certificate for this domain is used as a certificate authority (CA) that signs the subdomain certificate.
20
+
+
26
21
To complete and verify these procedures in your deployment, you need either a certificate signed by a widely trusted public CA or a CA provided by your organization. Example commands must be adjusted according to your domain, subdomain, and CA.
27
22
28
-
You must configure the wildcard certificate to match the domain of your {product-title} cluster. For example, if your {product-title} console address is `https://console-openshift-console.apps.openshift.example.com`, you must configure the wildcard certificate so that the domain is `*.apps.openshift.example.com`. For more information about configuring wildcard certificates, see the following topic about _Creating a certificate to encrypt incoming external traffic_.
29
-
30
-
If you want to use any domain name, including those which are not subdomains of the default {product-title} cluster domain, you must set up domain mapping for those domains. For more information, see the {ServerlessProductName} documentation about xref:../../serverless/security/serverless-custom-domains.adoc#serverless-create-domain-mapping_serverless-custom-domains[Creating a custom domain mapping].
23
+
* You must configure the wildcard certificate to match the domain of your {product-title} cluster. For example, if your {product-title} console address is `https://console-openshift-console.apps.openshift.example.com`, you must configure the wildcard certificate so that the domain is `*.apps.openshift.example.com`. For more information about configuring wildcard certificates, see the following topic about _Creating a certificate to encrypt incoming external traffic_.
* If you want to use any domain name, including those which are not subdomains of the default {product-title} cluster domain, you must set up domain mapping for those domains. For more information, see the {ServerlessProductName} documentation about xref:../../serverless/security/serverless-custom-domains.adoc#serverless-create-domain-mapping_serverless-custom-domains[Creating a custom domain mapping].
0 commit comments