Ingress en externe routing
Maak meerdere services via één toegangspunt van buitenaf bereikbaar met Ingress-resources, routing op host en pad en een Ingress-controller.
Ingress en externe routing is een gratis Docker en de basis van DevOps-les op CoddyKit. Dit is les 4 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Docker en de basis van DevOps. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Docker en de basis van DevOps bevat in totaal 4 lessen.
Voorbij NodePort en LoadBalancer
Een Service kan een app beschikbaar maken, maar elke app een eigen extern IP-adres geven wordt duur en onoverzichtelijk. Ingress biedt één slim HTTP-toegangspunt dat verkeer naar veel Services doorstuurt.
Wat is een Ingress?
Een Ingress is een Kubernetes-object dat HTTP/HTTPS-routeringsregels beschrijft: welke host of URL-pad naar welke Service verwijst.
Je hebt een controller nodig
Het Ingress-object bevat alleen regels. Een Ingress-controller (nginx, Traefik, HAProxy) houdt die regels daadwerkelijk in de gaten en verzorgt de routering. Zonder controller gebeurt er niets.
kubectl get pods -n ingress-nginxEen eenvoudige Ingress
Deze Ingress stuurt al het verkeer naar één backend-Service op poort 80.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: web-ingress
spec:
rules:
- http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: web
port:
number: 80Routeren op basis van host
Voeg een host toe om op domeinnaam te routeren — api.example.com naar de ene Service en shop.example.com naar een andere, allemaal via hetzelfde IP-adres.
rules:
- host: api.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: api
port:
number: 8080Routeren op basis van pad
Je kunt ook routeren op basis van het URL-pad onder één host: /api naar de API-Service en / naar de webfrontend.
paths:
- path: /api
pathType: Prefix
backend:
service:
name: api
port:
number: 8080
- path: /
pathType: Prefix
backend:
service:
name: web
port:
number: 80TLS-beëindiging
Ingress kan HTTPS beëindigen met een TLS-geheim, zodat je Services gewoon HTTP ontvangen terwijl gebruikers versleuteling krijgen.
spec:
tls:
- hosts:
- shop.example.com
secretName: shop-tlsAnnotaties stemmen gedrag af
Controller-specifieke annotaties configureren herschrijvingen, time-outs, snelheidslimieten en meer. Ze staan in de metadata van de Ingress.
metadata:
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /IngressClass
Als er meerdere controllers zijn, geeft ingressClassName aan welke controller deze Ingress moet verwerken.
spec:
ingressClassName: nginxIngress inspecteren
Controleer je regels en het toegewezen adres met kubectl get ingress en gebruik describe voor gebeurtenissen.
kubectl describe ingress web-ingressHet moderne alternatief: Gateway API
Kubernetes ontwikkelt zich richting de Gateway API, een uitgebreidere opvolger van Ingress. Ingress wordt nog veel gebruikt en is het juiste startpunt.
Korte controle
Waarom is een Ingress-controller nodig?
Samenvatting
Je kunt apps nu netjes beschikbaar maken:
- Ingress definieert HTTP-routeringsregels; een Ingress-controller voert ze uit
- Routeer via één toegangspunt op basis van host of pad
- Beëindig TLS en stem gedrag af met annotaties
ingressClassNamekiest de controller
Eén IP-adres, veel Services, slimme routering.
Leer Docker en de basis van DevOps met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 12
- Lessen
- 48
Veelgestelde vragen
Is de les “Ingress en externe routing” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad Docker en de basis van DevOps, waaronder “Ingress en externe routing”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Docker en de basis van DevOps bevat in totaal 4 lessen.
Wat leer ik in “Ingress en externe routing”?
Maak meerdere services via één toegangspunt van buitenaf bereikbaar met Ingress-resources, routing op host en pad en een Ingress-controller. Je oefent met Docker en de basis van DevOps door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Docker en de basis van DevOps te beginnen?
Ervaring vooraf is niet nodig. Docker en de basis van DevOps op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.
Hoe lang duurt de les “Ingress en externe routing”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Docker en de basis van DevOps?
Ja. Elke les over Docker en de basis van DevOps bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Deployments voor stateless apps
- Services voor netwerktoegang
- ConfigMaps en Secrets
- Ingress en externe routing