Встречается на собеседованиях • сегодня

Как сервис в Kubernetes узнает с каким Pod ему взаимодействовать

Сервис в Kubernetes взаимодействует с Pod'ами через селекторы (selectors) и метки (labels).

  1. Селекторы в Service:
    В манифесте Service указывается selector, который сопоставляется с labels Pod'ов.
    Например:
    yaml
    apiVersion: v1
    kind: Service
    metadata:
      name: my-service
    spec:
      selector:
        app: my-app  # Ищет Pod'ы с label `app: my-app`
      ports:
        - protocol: TCP
          port: 80
          targetPort: 9376
  1. Endpoints:
    Kubernetes автоматически создает объект Endpoints, который содержит IP-адреса всех Pod'ов, подходящих под селектор.

  2. DNS и балансировка:
    Запросы к Service (например, my-service.default.svc.cluster.local) направляются на один из Pod'ов через kube-proxy (режим iptables или ipvs).

Если Pod'ы пересоздаются, их IP меняются, но Service остаётся стабильной точкой входа благодаря динамическому обновлению Endpoints.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы