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
Copy file name to clipboardExpand all lines: articles/application-gateway/ingress-controller-annotations.md
+14-14Lines changed: 14 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,7 +11,7 @@ ms.author: greglin
11
11
12
12
# Annotations for Application Gateway Ingress Controller
13
13
14
-
You can annotate the Kubernetes ingress resource with arbitrary key/value pairs. Application Gateway Ingress Controller (AGIC) relies on annotations to program Azure Application Gateway features that aren't configurable via the ingress YAML. Ingress annotations are applied to all HTTP settings, backend pools, and listeners derived from an ingress resource.
14
+
You can annotate the Kubernetes ingress resource with arbitrary key/value pairs. Application Gateway Ingress Controller (AGIC) relies on annotations to program Azure Application Gateway features that aren't configurable via the ingress YAML. Ingress annotations are applied to all HTTP settings, back-end pools, and listeners derived from an ingress resource.
15
15
16
16
## List of supported annotations
17
17
@@ -48,7 +48,7 @@ For AGIC to observe an ingress resource, the resource *must be annotated* with `
48
48
49
49
## Backend Path Prefix
50
50
51
-
The following annotation allows the backend path specified in an ingress resource to be rewritten with the specified prefix. Use it to expose services whose endpoints are different from the endpoint names that you use to expose a service in an ingress resource.
51
+
The following annotation allows the back-end path specified in an ingress resource to be rewritten with the specified prefix. Use it to expose services whose endpoints are different from the endpoint names that you use to expose a service in an ingress resource.
52
52
53
53
### Usage
54
54
@@ -82,7 +82,7 @@ spec:
82
82
83
83
The preceding example defines an ingress resource named `go-server-ingress-bkprefix` with an annotation named `appgw.ingress.kubernetes.io/backend-path-prefix: "/test/"`. The annotation tells Application Gateway to create an HTTP setting that has a path prefix override for the path `/hello` to `/test/`.
84
84
85
-
The example defines only one rule. However, the annotations apply to the entire ingress resource. So if you define multiple rules, you set up the backend path prefix for each of the specified paths. If you want different rules with different path prefixes (even for the same service), you need to define different ingress resources.
85
+
The example defines only one rule. However, the annotations apply to the entire ingress resource. So if you define multiple rules, you set up the back-end path prefix for each of the specified paths. If you want different rules with different path prefixes (even for the same service), you need to define different ingress resources.
86
86
87
87
## Backend Hostname
88
88
@@ -120,15 +120,15 @@ spec:
120
120
121
121
## Custom Health Probe
122
122
123
-
You can [configure Application Gateway](./application-gateway-probe-overview.md) to send custom health probes to the backend address pool. When the following annotations are present, the Kubernetes ingress controller [creates a custom probe](./application-gateway-create-probe-portal.md) to monitor the backend application. The controller then applies the changes to Application Gateway.
123
+
You can [configure Application Gateway](./application-gateway-probe-overview.md) to send custom health probes to the backend address pool. When the following annotations are present, the Kubernetes ingress controller [creates a custom probe](./application-gateway-create-probe-portal.md) to monitor the back-end application. The controller then applies the changes to Application Gateway.
124
124
125
-
- `health-probe-hostname`: This annotation allows a custom hostname on the health probe.
125
+
- `health-probe-hostname`: This annotation allows a custom host name on the health probe.
126
126
- `health-probe-port`: This annotation configures a custom port for the health probe.
127
127
- `health-probe-path`: This annotation defines a path for the health probe.
128
128
- `health-probe-status-code`: This annotation allows the health probe to accept different HTTP status codes.
129
129
- `health-probe-interval`: This annotation defines the interval at which the health probe runs.
130
130
- `health-probe-timeout`: This annotation defines how long the health probe waits for a response before failing the probe.
131
-
- `health-probe-unhealthy-threshold`: This annotation defines how many health probes must fail for the backend to be marked as unhealthy.
131
+
- `health-probe-unhealthy-threshold`: This annotation defines how many health probes must fail for the back end to be marked as unhealthy.
132
132
133
133
### Usage
134
134
@@ -214,7 +214,7 @@ spec:
214
214
Use the following annotations if you want to use connection draining:
215
215
216
216
- `connection-draining`: This annotation specifies whether to enable connection draining.
217
-
- `connection-draining-timeout`: This annotation specifies a timeout, after which Application Gateway terminates the requests to the draining backend endpoint.
217
+
- `connection-draining-timeout`: This annotation specifies a timeout, after which Application Gateway terminates the requests to the draining back-end endpoint.
218
218
219
219
### Usage
220
220
@@ -354,7 +354,7 @@ spec:
354
354
355
355
## Override Frontend Port
356
356
357
-
Use the following annotation to configure a frontend listener to use ports other than 80/443 for HTTP/HTTPS.
357
+
Use the following annotation to configure a front-end listener to use ports other than 80 for HTTP and 443 for HTTPS.
358
358
359
359
If the port is within the Application Gateway authorized range (1 to 64999), the listener is created on this specific port. If you set an invalid port or no port in the annotation, the configuration uses the default of 80 or 443.
360
360
@@ -396,7 +396,7 @@ spec:
396
396
397
397
Use the following to specify the protocol that Application Gateway should use when it communicates with the pods. Supported protocols are HTTP and HTTPS.
398
398
399
-
Although self-signed certificates are supported on Application Gateway, AGIC currently supports only HTTPS when pods use a certificate signed by a well-known certificate authority.
399
+
Although self-signed certificates are supported on Application Gateway, AGIC currently supports HTTPS only when pods use a certificate signed by a well-known certificate authority.
400
400
401
401
Don't use port 80 with HTTPS and port 443 with HTTP on the pods.
402
402
@@ -432,7 +432,7 @@ spec:
432
432
433
433
## Hostname Extension
434
434
435
-
You can configure Application Gateway to accept multiple hostnames. Use the `hostname-extension` annotation to define multiple hostnames, including wildcard hostnames. This action appends the hostnames onto the FQDN that's defined in the ingress `spec.rules.host` information on the frontend listener, so it's [configured as a multisite listener](./multiple-site-overview.md).
435
+
You can configure Application Gateway to accept multiple host names. Use the `hostname-extension` annotation to define multiple host names, including wildcard host names. This action appends the host names onto the FQDN that's defined in the ingress `spec.rules.host` information on the front-end listener, so it's [configured as a multisite listener](./multiple-site-overview.md).
436
436
437
437
### Usage
438
438
@@ -465,7 +465,7 @@ spec:
465
465
number: 443
466
466
```
467
467
468
-
The preceding example configures the listener to accept traffic for the hostnames `hostname1.contoso.com` and `hostname2.contoso.com`.
468
+
The preceding example configures the listener to accept traffic for the host names `hostname1.contoso.com` and `hostname2.contoso.com`.
469
469
470
470
## WAF Policy for Path
471
471
@@ -511,7 +511,7 @@ spec:
511
511
512
512
## Application Gateway SSL Certificate
513
513
514
-
You can [configure the SSL certificate to Application Gateway](/cli/azure/network/application-gateway/ssl-cert#az-network-application-gateway-ssl-cert-create) from either a local PFX certificate file or a reference to an Azure Key Vault unversioned secret ID. When the annotation is present with a certificate name and the certificate is pre-installed in Application Gateway, the Kubernetes ingress controller creates a routing rule with an HTTPS listener and applies the changes to your Application Gateway instance. You can also use the `appgw-ssl-certificate` annotation together with an `ssl-redirect` annotation in the case of an SSL redirect.
514
+
You can [configure the SSL certificate to Application Gateway](/cli/azure/network/application-gateway/ssl-cert#az-network-application-gateway-ssl-cert-create) from either a local PFX certificate file or a reference to an Azure Key Vault unversioned secret ID. When the annotation is present with a certificate name and the certificate is preinstalled in Application Gateway, the Kubernetes ingress controller creates a routing rule with an HTTPS listener and applies the changes to your Application Gateway instance. You can also use the `appgw-ssl-certificate` annotation together with an `ssl-redirect` annotation in the case of an SSL redirect.
515
515
516
516
> [!NOTE]
517
517
> The `appgw-ssl-certificate` annotation is ignored when the TLS specification is defined in ingress at the same time. If you want different certificates with different hosts (termination of multiple TLS certificates), you need to define different ingress resources.
@@ -548,7 +548,7 @@ spec:
548
548
549
549
## Application Gateway SSL Profile
550
550
551
-
You can configure an SSL profile on the Application Gateway instance per listener. When the annotation is present with a profile name and the profile is pre-installed in Application Gateway, the Kubernetes ingress controller creates a routing rule with an HTTPS listener and applies the changes to your Application Gateway instance.
551
+
You can configure an SSL profile on the Application Gateway instance per listener. When the annotation is present with a profile name and the profile is preinstalled in Application Gateway, the Kubernetes ingress controller creates a routing rule with an HTTPS listener and applies the changes to your Application Gateway instance.
552
552
553
553
### Usage
554
554
@@ -657,7 +657,7 @@ spec:
657
657
>
658
658
> You can find URL rewrite rules for Application Gateway for Containers in [this article about the Gateway API](./for-containers/how-to-url-rewrite-gateway-api.md) and [this article about the Ingress API](for-containers/how-to-url-rewrite-ingress-api.md). You can find header rewrite rules for Application Gateway for Containers in [this article about the Gateway API](./for-containers/how-to-header-rewrite-gateway-api.md).
659
659
660
-
Application Gateway allows you to rewrite selected contents of requests and responses. With this feature, you can translate URLs, query string parameters, and modify request and response headers. You can also use this feature to add conditions to ensure that the URL or the specified headers are rewritten only when certain conditions are met. Rewrite Rule Set Custom Resource brings this feature to AGIC.
660
+
Application Gateway allows you to rewrite selected contents of requests and responses. With this feature, you can translate URLs, change query string parameters, and modify request and response headers. You can also use this feature to add conditions to ensure that the URL or the specified headers are rewritten only when certain conditions are met. Rewrite Rule Set Custom Resource brings this feature to AGIC.
661
661
662
662
HTTP headers allow a client and server to pass additional information with a request or response. By rewriting these headers, you can accomplish important tasks like adding security-related header fields (for example, `HSTS` or `X-XSS-Protection`), removing response header fields that might reveal sensitive information, and removing port information from `X-Forwarded-For` headers.
0 commit comments