Ingress controller
- Docker & Kubernetes kursu
- İleri seviye
- Ders 2/70
- 4 dk
Ingress controller'ın ne olduğunu öğrenirsin.
Ingress controller
Ingress controller, Ingress nesnelerini izleyip kendi vekil yapılandırmasını (nginx, Envoy, HAProxy) güncelleyen bir pod'dur. Cluster'da varsayılan olarak bulunmaz; kurulması gerekir. Yaygın seçenekler: ingress-nginx, Traefik, HAProxy, bulut sağlayıcıların kendi controller'ları.
# Minikube
minikube addons enable ingress
# genel (Helm ile)
helm install ingress-nginx ingress-nginx/ingress-nginx -n ingress-nginx --create-namespace
kubectl get pods -n ingress-nginxIngressClass
Bir cluster'da birden çok controller olabilir. IngressClass her controller'ı bir adla tanımlar; Ingress spec.ingressClassName ile hangisinin kendisini işleyeceğini seçer. Biri varsayılan işaretlenebilir:
$ kubectl get ingressclass
NAME CONTROLLER PARAMETERS AGE
nginx k8s.io/ingress-nginx <none> 3d
spec:
ingressClassName: nginxUygulama Controller'ı kur
Üç komut yaz: Minikube'de ingress eklentisini aç; ingress-nginx namespace'indeki pod'ları listele; IngressClass'ları listele.
Başlangıç kodu
# buraya yazÖrnek çözüm
minikube addons enable ingress
kubectl get pods -n ingress-nginx
kubectl get ingressclassBeklenen çıktı
🌟 The 'ingress' addon is enabled NAME READY STATUS RESTARTS AGE ingress-nginx-controller-7c6974c4d8-x9k2m 1/1 Running 0 60s NAME CONTROLLER PARAMETERS AGE nginx k8s.io/ingress-nginx <none> 60s
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Controller kurulu değilken bir Ingress oluşturursan ne olur?
- Kubernetes controller'ı kendisi kurar
- Servisler silinir
- Nesne kaydedilir ama hiçbir trafik yönlendirilmez Doğru cevap
- Hata verir
Açıklama: Ingress bir istektir; onu yerine getiren yazılım ayrıca çalışmalıdır.
2 Hangi controller'ın işleyeceğini seç.
spec:
____: nginx
spec:
ingressClassName: nginx
Açıklama: ingressClassName bir IngressClass adıdır.
3 Eşleştir.
| Kavram | Anlamı |
|---|---|
ingress-nginx |
nginx tabanlı controller |
Traefik |
Başka bir controller |
IngressClass |
Controller tanımı |
ingressClassName |
Ingress'in seçimi |