Ingress examples
This directory contains a catalog of examples on how to run, configure and
scale Ingress. Please review the prerequisites before
trying them.
Basic cross platform
Name |
Description |
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 |
AWS
Name |
Description |
Complexity Level |
AWS |
basic deployment |
Intermediate |
TLS
Name |
Description |
Complexity Level |
LetsEncrypt |
acquire certs via ACME protocol |
Intermediate |
Intermediate certs |
terminate TLS with intermediate certs |
Advanced |
Client certs |
client cert authentication |
Advanced |
Re-encrypty |
terminate, apply routing rules, re-encrypt |
Advanced |
Scaling
Name |
Description |
Complexity Level |
Daemonset |
run multiple controllers in a daemonset |
Intermediate |
Deployment |
run multiple controllers as a deployment |
Intermediate |
Static-ip |
a single ingress gets a single static ip |
Intermediate |
Geo-routing |
route to geographically closest endpoint |
Advanced |
Algorithms
Name |
Description |
Complexity Level |
Session stickyness |
route requests consistently to the same endpoint |
Advanced |
Least connections |
route requests based on least connections |
Advanced |
Weights |
route requests to backends based on weights |
Advanced |
Routing
Name |
Description |
Complexity Level |
Redirects |
send a 301 re-direct |
Intermediate |
URL-rewriting |
re-write path |
Intermediate |
SNI + HTTP |
HTTP routing based on SNI hostname |
Advanced |
SNI + TCP |
TLS routing based on SNI hostname |
Advanced |
Auth
Name |
Description |
Complexity Level |
Basic auth |
password protect your website |
nginx |
External auth plugin |
defer to an external auth service |
Intermediate |
Protocols
Name |
Description |
Complexity Level |
TCP |
TCP loadbalancing |
Intermediate |
UDP |
UDP loadbalancing |
Intermediate |
Websockets |
websockets loadbalancing |
Intermediate |
HTTP/2 |
HTTP/2 loadbalancing |
Intermediate |
Proxy protocol |
leverage the proxy protocol for source IP |
Advanced |
Custom controllers
Name |
Description |
Complexity Level |
Dummy |
A simple dummy controller that logs updates |
Advanced |
Customization
Name |
Description |
Complexity Level |
custom-headers |
set custom headers before send traffic to backends |
Advanced |
configuration-snippets |
customize nginx location configuration using annotations |
Advanced |
RBAC
Name |
Description |
Complexity Level |
rbac |
Configuring Role Base Access Control |
intermediate |