Adding ingres-class annotation docs (#4264)

* adding ingres-class annotation docs

* removing whitespaces

* EOF newline

* applying suggestions

* Update docs/developer/serving/services/ingress-class.md

* Update docs/developer/serving/services/ingress-class.md

* removing indentation

* Update docs/developer/serving/services/ingress-class.md

Co-authored-by: Ashleigh Brennan <abrennan@redhat.com>
This commit is contained in:
salaboy 2021-09-21 16:55:38 +01:00 committed by GitHub
parent fbe03bba72
commit 46995b865e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 29 additions and 0 deletions

View File

@ -68,6 +68,7 @@ nav:
- Creating a Service: developer/serving/services/creating-services.md
- Service metrics: developer/serving/services/service-metrics.md
- Configuring private Services: developer/serving/services/private-services.md
- Configuring Services custom ingress class: developer/serving/services/ingress-class.md
- Configuring custom domains: developer/serving/services/custom-domains.md
- Using a custom TLS certificate for DomainMapping: developer/serving/services/byo-certificate.md
- Configure resource requests and limits: developer/serving/services/configure-requests-limits-services.md

View File

@ -0,0 +1,28 @@
# Configuring Services custom ingress class
By default, when a Knative Service is created an Ingress Class (`ingress.class`) is automatically chosen for it based on the content of the `networking-config` ConfigMap located inside the `knative-serving` namespace.
The `networking-config` ConfigMap is configured when Knative Serving is installed, and if no other ingress class is specified, this defaults to `"istio.ingress.networking.knative.dev"`.
After it is configured in the `networking-config` ConfigMap, the `ingress.class` is used for all Knative Services that do not specify an `ingress.class` annotation.
!!! warning
The ingress class value should only be modified during Knative Serving installation to avoid issues in your deployment.
## Using the ingress class annotation
Generally it is recommended for Knative Services to use the default `ingress.class`. However, in scenarios where there are multiple networking implementations, you might want to specify different ingress class annotations for each Service.
You can configure each Service to use a different ingress class by specifying the `network.knative.dev/ingress.class` annotation.
To add an ingress class annotation to a Service, run the following command:
```bash
kubectl annotate kservice <service-name> network.knative.dev/ingress.class=<ingress-type>
```
Where:
- `<service-name>` is the name of the Service that you are applying the annotation to.
- `<ingress-type` is the type of ingress that is used as the ingress class for the Service.
!!! note
This annotation overrides the configuration specified in the `networking-config` ConfigMap.