Sobes.tech
Junior — Middle

How is incoming traffic routed using Kubernetes Ingress?

sobes.tech AI

Answer from AI

Kubernetes Ingress provides routing of incoming HTTP/HTTPS traffic to services within the cluster based on rules defined in the Ingress object.

Main steps:

  1. Ingress Controller — a special component that listens for changes in Ingress objects and configures the proxy server (e.g., NGINX, Traefik).

  2. Routing rules — rules are described in the Ingress object, for example, routing by host and URL path.

  3. Request handling — when an external request arrives at the Ingress Controller, it analyzes the URL and headers, matches them with rules, and redirects the request to the appropriate service inside the cluster.

Example of an Ingress rule:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: example-ingress
spec:
  rules:
  - host: example.com
    http:
      paths:
      - path: /app1
        pathType: Prefix
        backend:
          service:
            name: app1-service
            port:
              number: 80
      - path: /app2
        pathType: Prefix
        backend:
          service:
            name: app2-service
            port:
              number: 80

Thus, Ingress allows centralized management of access to services via HTTP/HTTPS using routing rules.