Ответ вслух Senior GitOps и ArgoCD обновлено

Структура GitOps-репозитория

Вопрос

Интервьюер: «Спроектируйте структуру GitOps для 50 сервисов, трёх окружений и двух кластеров прода. Как продвигается релиз?»

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Образцовый ответ: «Код сервисов в своих репозиториях, желаемое состояние в одном deploy-репозитории: apps/<сервис/base и apps/<сервис/overlays/{dev,stage,prod}. Application генерирует ApplicationSet с matrix-генератором: каталоги сервисов на кластеры.

Что должно прозвучать в ответе

  • Разделение репозиториев: код приложений и deploy-репозиторий (или монорепо с чёткими каталогами)

  • Base плюс overlays по окружениям (Kustomize) или values по окружениям (Helm)

  • Генерация Application через ApplicationSet по каталогам и кластерам

  • Продвижение: автоматически в dev, через MR с ревью в prod, тот же тег

  • Права: AppProject на команду, защищённые ветки и CODEOWNERS для prod

  • Секреты через External Secrets, мониторинг синхронизации и дрейфа

Что могут спросить следом

  • Как выкатить в два прод-кластера не одновременно?
  • Что делать, если сервису нужна срочная правка в проде ночью?

Разбор

Образцовый ответ: «Код сервисов в своих репозиториях, желаемое состояние в одном deploy-репозитории: apps/<сервис>/base и apps/<сервис>/overlays/{dev,stage,prod}. Application генерирует ApplicationSet с matrix-генератором: каталоги сервисов на кластеры. CI сервиса после сборки сам коммитит тег в overlay dev. В stage и prod тег переносит merge request, prod требует ревью владельца через CODEOWNERS. Два прод-кластера обновляются по очереди: сначала один, после проверки метрик второй, отдельным коммитом или через progressive sync. На команду свой AppProject с её namespace. Секреты через External Secrets из Vault. Ночная срочная правка тоже коммит, просто с упрощённым ревью, иначе selfHeal её откатит».

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.