Что такое сервис (Service) в Kubernetes?

Этот вопрос проверяет понимание механизма, который позволяет Pod-ам взаимодействовать друг с другом и с внешними сервисами.

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

Service – это абстракция в Kubernetes, обеспечивающая сетевой доступ к группе Pod-ов. Он распределяет трафик между Pod-ами, поддерживает балансировку нагрузки и позволяет сервисам взаимодействовать внутри и вне кластера.

Длинный ответ

В Kubernetes Pod-ы динамически создаются и удаляются, поэтому их IP-адреса могут изменяться. Service решает эту проблему, создавая постоянную точку доступа.

 

Виды сервисов:

- ClusterIP – доступен только внутри кластера.

- NodePort – делает сервис доступным извне через порт узла.

- LoadBalancer – создаёт внешний балансировщик нагрузки.

- ExternalName – перенаправляет запросы на внешний домен.

 

Пример манифеста ClusterIP:

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

Этот сервис направляет трафик на Pod-ы с меткой app: my-app, перенаправляя порты.


Service в Kubernetes обеспечивает стабильный доступ к Pod-ам, балансировку нагрузки и сетевое взаимодействие между компонентами.

Уровень

  • Рейтинг:

    2

  • Сложность:

    4

Навыки

  • Kubernetes

Подпишись на Python Developer в телеграм