|
| 1 | +# GCE Provider |
| 2 | + |
| 3 | +The project supports translating ingress-gce specific annotations. |
| 4 | + |
| 5 | +Currently supported annotations: |
| 6 | +`kubernetes.io/ingress.class`: Though it is a deprecated annotation for most providers, GCE still uses this annotation to specify the specific type of load balancers created by GKE Ingress. |
| 7 | + |
| 8 | +## Implementation-specific features |
| 9 | + |
| 10 | +The following implementation-specific features are supported: |
| 11 | + |
| 12 | +- Ingress path with type `ImplementationSpecific` will: |
| 13 | + - Translate to equivalent Gateway Prefix path but dropping `/*`, if `/*` exists |
| 14 | + - Translate to equivalent Exact path otherwise. |
| 15 | + |
| 16 | +Examples: |
| 17 | +| Ingress `ImplementationSpecific` Path | map to Gateway Path | |
| 18 | +| ------------------------------------- | -------------------------------------- | |
| 19 | +| /* | / Prefix | |
| 20 | +| /v1/* | /v1 Prefix | |
| 21 | +| /v1 | /v1 Exact | |
| 22 | +| /v1/ | /v1/ Exact | |
| 23 | + |
| 24 | +Note: For Ingress `ImplementationSpecific` path with `/v1/*`, it will map to |
| 25 | +`/v1/` or `/v1/v2` but not `/v1`. If you want to avoid such "overmapping", |
| 26 | +please consider switching to `Prefix`, `Exact`, or an `ImplementationSpecific` |
| 27 | +path without `*` before converting Ingress to Gateway. |
| 28 | + |
| 29 | +## Feature list |
| 30 | +Currently supported: |
| 31 | +- [Basic Internal Ingress](https://github.com/GoogleCloudPlatform/gke-networking-recipes/tree/main/ingress/single-cluster/ingress-internal-basic) |
| 32 | +- [Basic external Ingress](https://github.com/GoogleCloudPlatform/gke-networking-recipes/tree/main/ingress/single-cluster/ingress-external-basic) |
| 33 | +- [Ingress with custom default backend](https://github.com/GoogleCloudPlatform/gke-networking-recipes/tree/main/ingress/single-cluster/ingress-custom-default-backend) |
| 34 | + |
| 35 | +To be supported: |
| 36 | + - [Ingress with custom HTTP health check](https://github.com/GoogleCloudPlatform/gke-networking-recipes/tree/main/ingress/single-cluster/ingress-custom-http-health-check) |
| 37 | + - [IAP enabled ingress](https://github.com/GoogleCloudPlatform/gke-networking-recipes/tree/main/ingress/single-cluster/ingress-iap) |
| 38 | + - [Google Cloud Armor enabled ingress](https://github.com/GoogleCloudPlatform/gke-networking-recipes/blob/main/ingress/single-cluster/ingress-cloudarmor/README.md) |
| 39 | + - [Ingress with HTTPS redirect](https://github.com/GoogleCloudPlatform/gke-networking-recipes/tree/main/ingress/single-cluster/ingress-https) |
| 40 | + |
| 41 | +## Summary of GKE Ingress annotation |
| 42 | +External Ingress: |
| 43 | +https://cloud.google.com/kubernetes-engine/docs/how-to/load-balance-ingress#summary_of_external_ingress_annotations |
| 44 | + |
| 45 | +Internal Ingress: |
| 46 | +https://cloud.google.com/kubernetes-engine/docs/how-to/internal-load-balance-ingress#summary_of_internal_ingress_annotations |
0 commit comments