.. | ||
affinity/cookie/nginx | ||
custom-controller | ||
customization/custom-headers/nginx | ||
deployment | ||
health-checks/gce | ||
static-ip | ||
tls-termination | ||
http-svc.yaml | ||
PREREQUISITES.md | ||
README.md |
Ingress examples
This directory contains a catalog of examples on how to run, configure and scale Ingress. Please review the prerequisities before trying them.
Basic cross platform
Name | Description | Platform | Complexity Level |
---|---|---|---|
Deployment | basic deployment of controllers | * | Beginner |
TLS termination | terminate TLS at the ingress controller | * | Beginner |
Name based virtual hosting | Host header routing |
* | Beginner |
Path routing | URL regex routing | * | Beginner |
Health checking | configure/optimize health checks | * | Intermediate |
Pipeline | pipeline cloud and nginx | * | Advanced |
TLS
Name | Description | Platform | Complexity Level |
---|---|---|---|
LetsEncrypt | acquire certs via ACME protocol | * | Intermediate |
Intermediate certs | terminate TLS with intermediate certs | * | Advanced |
Client certs | client cert authentication | nginx | Advanced |
Re-encrypty | terminate, apply routing rules, re-encrypt | nginx | Advanced |
Scaling
Name | Description | Platform | Complexity Level |
---|---|---|---|
Daemonset | run multiple controllers in a daemonset | nginx | Intermediate |
Deployment | run multiple controllers as a deployment | nginx | Intermediate |
Multi-zone | bridge different zones in a single cluster | gce | Intermediate |
Static-ip | a single ingress gets a single static ip | * | Intermediate |
Geo-routing | route to geographically closest endpoint | nginx | Advanced |
Multi-cluster | bridge Kubernetes clusters with Ingress | gce | Advanced |
Algorithms
Name | Description | Platform | Complexity Level |
---|---|---|---|
Session stickyness | route requests consistently to the same endpoint | nginx | Advanced |
Least connections | route requests based on least connections | on-perm | Advanced |
Weights | route requrests to backends based on weights | nginx | Advanced |
Routing
Name | Description | Platform | Complexity Level |
---|---|---|---|
Redirects | send a 301 re-direct | nginx | Intermediate |
URL-rewriting | re-write path | nginx | Intermediate |
SNI + HTTP | HTTP routing based on SNI hostname | nginx | Advanced |
SNI + TCP | TLS routing based on SNI hostname | nginx | Advanced |
Auth
Name | Description | Platform | Complexity Level |
---|---|---|---|
Basic auth | password protect your website | nginx | Intermediate |
External auth plugin | defer to an external auth service | nginx | Intermediate |
Protocols
Name | Description | Platform | Complexity Level |
---|---|---|---|
TCP | TCP loadbalancing | nginx | Intermediate |
UDP | UDP loadbalancing | nginx | Intermediate |
Websockets | websockets loadbalancing | nginx | Intermediate |
HTTP/2 | HTTP/2 loadbalancing | * | Intermediate |
Proxy protocol | leverage the proxy protocol for source IP | nginx | Advanced |
Custom controllers
Name | Description | Platform | Complexity Level |
---|---|---|---|
Dummy | A simple dummy controller that logs updates | * | Advanced |
Custommization
Name | Description | Platform | Complexity Level |
---|---|---|---|
custom-headers | set custom headers before send traffic to backends | nginx | Advanced |