Как организовать доступ к сервису в Kubernetes извне?

Для организации доступа к сервису в Kubernetes извне обычно используют следующие способы:

Короткий ответ

Что ответить на собеседовании

Для организации доступа к сервису в Kubernetes извне обычно используют следующие способы:

Подробный разбор

Ответ с пояснениями

Для организации доступа к сервису в Kubernetes извне обычно используют следующие способы:

  1. Service типа LoadBalancer — если кластер работает в облаке, этот тип создаёт внешний балансировщик нагрузки с публичным IP, через который доступен сервис.
  2. NodePort — открывает фиксированный порт на всех узлах кластера, через который можно обратиться к сервису извне, используя IP любого узла и этот порт.
  3. Ingress — объект, который управляет внешним доступом к сервисам, обычно через HTTP/HTTPS, с возможностью маршрутизации, TLS и других правил. Требует установки Ingress Controller.
  4. External IPs или MetalLB — для bare-metal кластеров можно использовать MetalLB для назначения внешних IP адресов сервисам.

Пример создания Service типа LoadBalancer:

apiVersion: v1
kind: Service
metadata:
  name: my-service
spec:
  type: LoadBalancer
  selector:
    app: my-app
  ports:
    - protocol: TCP
      port: 80
      targetPort: 8080

После создания сервис получит внешний IP, по которому будет доступен извне.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее