Skip to content

Czym jest Ingress w Kubernetes?

Możemy określić go jako LoadBalancer warstwy 7 (aplikacji), który działa na podstawie adresów URL i rozrzuca ruch po wielu serwisach na jego podstawie - Ingress określa reguły routingu.

Jest to obiekt, który wykorzystuje obiekt typu Service w Kubernetes. Może być wystawiony jako typ NodePort lub LoadBalancer (w środowiskach cloudowych).

Działa jako centralny Service do wpuszczania ruchu do aplikacji z wykorzystaniem QoS (polityki, rate limit), zapewnia szyfrowanie SSL oraz Load-balancing.

Ingress umożliwia: - centralne zarządzanie ruchem do aplikacji - routing na podstawie hostów i ścieżek URL - terminację SSL/TLS - load balancing pomiędzy serwisami - dodatkowe funkcje, takie jak rate limiting czy uwierzytelnianie (w zależności od controllera)

Ingress uruchamiany jest jako kolejny z obiektów wewnątrz klastra. Początkowo należy wybrać jeden z Ingress Controllerów, najpopularniejsze: - Nginx Ingress Controller - HAProxy Kubernetes Ingress Controller - Traefik - Istio