Özet - Ingress
- Docker & Kubernetes kursu
- İleri seviye
- Ders 6/70
- 5 dk
Host, path ve TLS'yi birleştirerek bir Ingress yazarsın.
Özet: Ingress
Bu grupta:
- Ingress, HTTP(S) trafiğini host ve yola göre Service'lere yönlendiren kurallardır; tek giriş noktası sağlar.
- Kuralları bir Ingress controller (ingress-nginx, Traefik) uygular;
ingressClassNamehangisinin işleyeceğini seçer. - YAML:
networking.k8s.io/v1,rules[].host,paths[].path/pathType/backend.service. PrefixveExacteşleşme; en uzun önek kazanır;defaultBackendeşleşmeyenler içindir.- TLS:
spec.tls+kubernetes.io/tlsSecret; cert-manager otomatik sertifika alır.
kubectl get ing
curl -H "Host: magaza.example.com" http://$(minikube ip)/Uygulama Tam Ingress
Bir Ingress YAML'ı yaz: adı magaza; ingressClassName: nginx; tls altında host magaza.example.com ve secretName: magaza-tls; host magaza.example.com için / yolu (Prefix) web servisinin 80 portuna gitsin.
Başlangıç kodu
# buraya yazÖrnek çözüm
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: magaza
spec:
ingressClassName: nginx
tls:
- hosts:
- magaza.example.com
secretName: magaza-tls
rules:
- host: magaza.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: web
port:
number: 80Beklenen çıktı
ingress.networking.k8s.io/magaza created $ curl -sI https://magaza.example.com | head -1 HTTP/2 200
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Ingress'in ADDRESS sütunu boş kalıyorsa ilk ne kontrol edilir?
- Namespace kotası
- etcd yedeği
- Controller'ın kurulu olup olmadığı ve ingressClassName'in eşleşmesi Doğru cevap
- Pod'ların image'ı
Açıklama: kubectl get ingressclass ve controller pod'ları kontrol edilir.
2 Önek eşleşmesi kullan.
- path: /api
pathType: ____
- path: /api
pathType: Prefix
Açıklama: Prefix yol parçalarına göre önek eşleşmesidir.
3 Eşleştir.
| Kavram | Anlamı |
|---|---|
Ingress |
Kural |
controller |
Uygulayıcı |
tls |
HTTPS |
host |
Alan adı |