Назад к вопросам
Middle
67
questionbank

В чем разница между роутом и ингрессом?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

Роут (Route) — термин, используемый в OpenShift. Определяет способ доступа к сервису снаружи кластера OpenShift, предоставляя публичный hostname. OpenShift Router обрабатывает роуты и направляет трафик на соответствующие сервисы.

Ингресс (Ingress) — стандартный API-объект Kubernetes. Управляет внешним доступом к сервисам в кластере Kubernetes, обычно через HTTP/HTTPS. Ингресс-контроллер реализует правила, определенные в объекте Ingress.

Основные отличия:

Признак Route (OpenShift) Ingress (Kubernetes)
Стандарт Специфичен для OpenShift Стандартный API Kubernetes
Гибкость Встроенные функции (TLS, A/B тесты) Зависит от Ingress-контроллера
Реализация OpenShift Router Различные Ingress-контроллеры (Nginx, HAProxy, Traefik и др.)
Поддержка Только OpenShift Любой дистрибутив Kubernetes

Пример Ingress:

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

Пример Route:

apiVersion: route.openshift.io/v1
kind: Route
metadata:
  name: my-route
spec:
  host: myapp.openshift.example.com
  to:
    kind: Service
    name: my-service
    weight: 100
  port:
    targetPort: 8080
  tls:
    termination: edge