This page discusses the options for the _ingress.tpl to generate different resources:
- nginx Ingress (different classes: nginx, traefik)
- Istio specific Gateway/VirtualService (https://istio.io/latest/docs/tasks/traffic-management/ingress/ingress-control/)
- Gateway-API HTTPRoute/TCPRoute... (will be the the new default API in Istio...) https://gateway-api.sigs.k8s.io/api-types/gateway/
Problem:
→ In the current implementation the template is able to generate only for nginx and Istio GW/VS
→ for each ingress definition for each VS a separate GW is created, which is generally not correct.
Instead a single GW should be provided, which should be used by all VCs
→ if a "commonGW" is used, the GW needs to be created during the Ingress setup phase (described in OOM documentation)
Proposal:
- Create new "global.Ingress" option to select the provider resource (NginxIngress, Istio, GW-API)
- For "Ingress" provide setting for the class (e.g. nginx, traefik)
- Provide a "shared Gateway" name as option, which is refered by the VC/HTTPRoute,...
Istio-Ingress Provider
Options: no commonGW (not optimal or wrong) → currently implemented
draw.io Diagram |
---|
border | true |
---|
| |
---|
diagramName | Istio-GW_VS |
---|
simpleViewer | false |
---|
links | auto |
---|
tbstyle | top |
---|
lbox | true |
---|
diagramWidth | 1353 |
---|
revision | 47 |
---|
|
Special case: TCP Routes (e.g. Kafka)
draw.io Diagram |
---|
border | true |
---|
| |
---|
diagramName | Istio-TCP-GW_VS |
---|
simpleViewer | false |
---|
links | auto |
---|
tbstyle | top |
---|
lbox | true |
---|
diagramWidth | 1453 |
---|
revision | 23 |
---|
|
Options: commonGW → needs to be checked, if it is working
draw.io Diagram |
---|
border | true |
---|
| |
---|
diagramName | Istio-VS |
---|
simpleViewer | false |
---|
links | auto |
---|
tbstyle | top |
---|
lbox | true |
---|
diagramWidth | 1333 |
---|
revision | 45 |
---|
|
Gateway-API Provider
Options: commonGW
draw.io Diagram |
---|
border | true |
---|
| |
---|
diagramName | GW-API-HR |
---|
simpleViewer | false |
---|
links | auto |
---|
tbstyle | top |
---|
lbox | true |
---|
diagramWidth | 1353 |
---|
revision | 56 |
---|
|