Новое:Talanto осенью: поиск с цифрами, вакансия по шагам и каталог компаний

+694новые вакансии за сутки·52 494вакансии открыты сейчас·Новое:Talanto осенью: поиск с цифрами, вакансия по шагам и каталог компаний

Новые вакансии в TelegramРаботодателям
Talanto
Вакансии
Компании5 662
РезюмеAIПодготовкаСтатьи
ТарифыТарифы
Войти

Не нашли подходящее?

Пусть нужная вакансия найдёт вас сама.

  1. Подборка в TelegramНовые вакансии по вашему фильтру — сразу в бота.Подключить
  2. Мэтчи по резюмеЗагрузите резюме — покажем, где вы подходите лучше всего.Загрузить
  3. Сохранить фильтрНастройте поиск один раз и возвращайтесь к новым вакансиям.Настроить
Что нового на TalantoTalanto осенью: поиск с цифрами, вакансия по шагам и каталог компаний

Для работодателей

Опубликуйте вакансию — отклики придут в ваш кабинет.

  1. Вакансиябесплатно
  2. Откликиконтакты бесплатно
  3. Наймэтапы и интервью

40 компаний публикуют вакансии напрямую · 4 391 кандидат открыт к предложениям

Разместить вакансию

Популярные направления

Все подборки
  • Python6 244
  • Облачные технологии4 749
  • QA вакансии1 736
  • Android1 148
  • Инженер данных800
  • Продакт-менеджер321

Разработка

  • iOS1 092
  • Backend вакансии1 046
  • Fullstack вакансии453
  • AI вакансии391
  • Frontend вакансии376
  • Mobile вакансии27

По стеку

  • Go3 590
  • Java2 153
  • Kotlin942
  • Node.js767
  • Rust544
  • .NET496
  • PHP267
  • C++220
  • C#198

DevOps и инфраструктура

  • Kubernetes2 686
  • Linux-инфраструктура2 117
  • DevOps вакансии1 960
  • Terraform / IaC1 615
  • CI/CD871
  • Мониторинг и Observability742
  • SRE228
  • Кибербезопасность47

Аналитика и данные

  • Аналитик данных495
  • Data Scientist449
  • Бизнес-аналитик351
  • Системный аналитик54

Другие направления

  • Проджект-менеджер109
  • UI/UX дизайн70
  • Ручное тестирование14

По регионам

  • Вакансии в США23 835
  • Вакансии в Европе9 341
  • Работа в России3 283
  • Вакансии в Канаде2 140

По формату

  • Удалённые вакансии41 311
  • Релокация в США23 835
  • Гибридная работа4 058
  • Офисная работа2 949

По уровню

  • Senior вакансии20 396
  • Middle вакансии11 620
  • Junior вакансии3 665

Сейчас нанимают

Все компании
  • Rakuten188 вакансий
  • ASML163 вакансии
  • Wise139 вакансий
  • Grab134 вакансии
  • Infobip28 вакансий
  • Adyen23 вакансии
  • Darktrace17 вакансий
  • Spotify15 вакансий
  • Celonis11 вакансий
  • Razorpay9 вакансий

Вакансии из 344 источников: карьерные страницы компаний и джоб-борды.

КомпанииО насНовостиПубличная офертаУсловия использованияПолитика конфиденциальностиПоддержка
←К теме KubernetesВсе вопросы
KubernetesMiddleТеория

Что такое NetworkPolicy и что произойдёт, если её не задать вообще?

В закладки
Сначала попробуйте ответить сами30 секунд
Сравнить с ответом ↓

NetworkPolicy задаёт L3/L4 allow-list правила для входящего и исходящего трафика Pod. Без политик весь трафик разрешён; как только Pod выбран хотя бы одной политикой — разрешён только явно перечисленный трафик. Реальную фильтрацию реализует CNI-плагин.

Default-deny политика

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default-deny-all
  namespace: production
spec:
  podSelector: {}    # выбирает ВСЕ Pod в namespace
  policyTypes:
    - Ingress
    - Egress
  # нет правил ingress и egress — значит всё блокируется
  # кроме egress DNS (добавим отдельной политикой)

Что такое NetworkPolicy

NetworkPolicy — это Kubernetes-объект, описывающий правила L3/L4 фильтрации трафика для Pod. По умолчанию модель сети Kubernetes полностью открытая: любой Pod может общаться с любым другим Pod в кластере независимо от namespace. NetworkPolicy позволяет перейти к модели allow-list для выбранных Pod.

Важная оговорка: NetworkPolicy — это декларативный API. Реальную фильтрацию реализует CNI-плагин. Если CNI не поддерживает NetworkPolicy (например, Flannel без дополнений), объект сохранится в etcd, но никакой фильтрации не произойдёт. NetworkPolicy поддерживают: Calico, Cilium, Weave Net, Canal, Azure CNI.

Как работает selectiveизоляция

NetworkPolicy применяется к Pod через podSelector. Если Pod не выбран ни одной политикой — весь трафик разрешён (как было до политик). Как только хотя бы одна NetworkPolicy выбрала Pod через podSelector:

  • Для Ingress: разрешён только трафик, явно перечисленный в ingress блоках всех подходящих политик. Остальной входящий трафик отброшен.
  • Для Egress: аналогично — разрешён только трафик из egress блоков. Всё остальное блокируется.

Разрешить DNS и конкретный трафик

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-dns-egress
  namespace: production
spec:
  podSelector: {}
  policyTypes:
    - Egress
  egress:
    - ports:
        - protocol: UDP
          port: 53
        - protocol: TCP
          port: 53
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-frontend-to-api
  namespace: production
spec:
  podSelector:
    matchLabels:
      app: api
  policyTypes:
    - Ingress
  ingress:
    - from:
        - podSelector:
            matchLabels:
              app: frontend
      ports:
        - protocol: TCP
          port: 8080

Изоляция между namespace

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-monitoring
  namespace: production
spec:
  podSelector: {}
  policyTypes:
    - Ingress
  ingress:
    - from:
        - namespaceSelector:
            matchLabels:
              kubernetes.io/metadata.name: monitoring
      ports:
        - protocol: TCP
          port: 9090

Разрешить доступ к внешнему IP (ipBlock)

  egress:
    - to:
        - ipBlock:
            cidr: 10.0.0.0/8
            except:
              - 10.100.0.0/16   # исключить диапазон другого tenant
      ports:
        - protocol: TCP
          port: 5432

Что произойдёт без NetworkPolicy

Без каких-либо NetworkPolicy в namespace трафик полностью открыт. Pod базы данных доступен с любого Pod в кластере. Pod одного микросервиса может открыть соединение к Redis другого микросервиса. Компрометация одного Pod даёт lateral movement по всему кластеру.

Подводные камни

  • Применить NetworkPolicy с policyTypes Ingress и не добавить Egress — исходящий трафик Pod остаётся открытым, в том числе возможность эксфильтрации данных.
  • Забыть DNS egress после default-deny: приложение не сможет резолвить имена сервисов, контейнеры начнут падать с ошибками типа dial tcp: lookup postgres on 10.96.0.10:53: read udp: i/o timeout.
  • Использовать только podSelector без namespaceSelector: если label app=frontend существует в нескольких namespace, правило разрешит трафик из всех них, а не только из нужного.
  • Не проверять поддержку CNI: в кластерах с Flannel без Canal NetworkPolicy молча не работает — трафик будет проходить несмотря на политики.
  • Не учитывать трафик от node к Pod: некоторые health-check и node-local агенты (например, Prometheus node-exporter) ходят напрямую с IP ноды, не через Pod. Их нужно разрешать через ipBlock с CIDR нод.
  • Политики не применяются к hostNetwork Pod: если Pod запущен с hostNetwork: true, он использует сеть ноды и обходит NetworkPolicy.
  • Отсутствие default-deny в namespace kube-system приводит к тому, что DNS, metrics-server и другие компоненты остаются открытыми для всех Pod кластера.

Частые вопросы на собеседовании

  • Зачем нужны requests и limits для CPU и памяти? Что будет, если их не задать или задать только limits?
  • Что такое ServiceAccount, Role, ClusterRole, RoleBinding и ClusterRoleBinding? Как они связаны?
  • Сервис не доступен, хотя поды Running и Ready. Как найдёшь, где разрыв?
  • Что такое securityContext? Зачем нужны runAsNonRoot, readOnlyRootFilesystem и drop capabilities?

Типичные ошибки

  • Считать, что policy глобально закрывает весь namespace
  • Не знать про CNI requirement
  • Ломать DNS egress

Что проверяет интервьюер

  • Понимает default allow
  • Объясняет additive allow-list
  • Знает ingress и egress policyTypes

Как вы знаете этот вопрос?

Проверить себя по теме Kubernetes →

Источники

  • https://kubernetes.io/docs/concepts/services-networking/network-policies/
  • https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/
←Предыдущий вопросЧто произойдёт пошагово, когда ты делаешь kubectl apply на изменённый Deployment?Следующий вопрос→Расскажи про admission controllers: что такое ValidatingAdmissionWebhook и MutatingAdmissionWebhook, и какую роль играют OPA/Gatekeeper или Kyverno?

Связанные темы

KubernetesCNINetwork-SecuritySegmentation

Вакансии с этим навыком

Kubernetes вакансии
  • Web Application Engineer - EC First Party Development Department (ECFD)
  • Senior Software Engineer, Advertisement Optimization Group - Merchandising and Advertisement Department (MAD)
  • Software Engineer, Data Management Platform - Global Ad Technology Supervisory Department (GATD)
  • Senior Site Reliability Engineer, Booking Services Search Group - Search Department (SED)
  • DX Solution Lead Engineer - Backoffice Business Support Section, Business Support Development Department (BSD)