Sobes.tech
Back to questions
Senior
4

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

Companies where asked
VKVK

Answer from AI

sobes.tech AI

Для организации доступа к сервису в 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, по которому будет доступен извне.