Kubernetes Ingress Verstehen

In Kubernetes exponieren Services Pods innerhalb des Clusters, bieten aber kein externes HTTP-Routing. Die Ingress-Ressource definiert Regeln für das Routing von externem HTTP/HTTPS-Verkehr.

Voraussetzungen

  • Ein laufender Kubernetes-Cluster (1.24+).
  • Ein installierter Ingress Controller.
  • kubectl mit Cluster-Zugang konfiguriert.

Schritt-für-Schritt-Fehlerbehebung

1. Ingress-Ressource Prüfen

kubectl get ingress -A
kubectl describe ingress <ingress-name> -n <namespace>

2. Backend-Service Verifizieren

kubectl get endpoints <service-name> -n <namespace>

3. Controller-Logs Inspizieren

kubectl logs <controller-pod> -n ingress-nginx --tail=100

4. 502 Bad Gateway Beheben

kubectl exec -it <controller-pod> -n ingress-nginx -- curl -v http://<service>.<namespace>.svc.cluster.local:<port>

Zusammenfassung

  • Diagnostizieren Sie 502-Fehler durch Überprüfung von Endpoints und Pod-Verfügbarkeit.
  • Stellen Sie sicher, dass TLS-Secrets mit gültigen Zertifikaten existieren.
  • Spezifizieren Sie immer ingressClassName ab Kubernetes 1.22+.

Verwandte Artikel