TGViewer
ДевОпс Інженер 🇺🇦 ДевОпс Інженер 🇺🇦 @devopsengineer · 4.96K subscribers
Post #211 8.05K
GCP Config Connector & AWS Controllers for Kubernetes: GitOps для инфраструктуры

Как бы я не любил Terraform, но если посмотреть правде в глаза - он не всегда удобен, и есть проблемы, которые HashiCorp еще нужно решить.

Одна из серьезных проблем - Wall of Confusion, который мы построили снова. Есть инфраструктура в Terraform, туда доступ только у DevOps, есть чарты в репозитории каждой апки - там может что-то поправить и разработчик приложения, и DevOps. Но в инфраструктуру разработчику нельзя. Грустно.

Почему нельзя разработчику в Terraform инфраструктуру? У каждого свой вариант:
- не актуальный стейт, половина ресурсов с изменениями
- непонятная структура даже для самих DevOps
- нужно обучать девелоперов, в том числе и в модули
- разница приоритетов: по сути DevOps команда осталась Ops, и только она отвечает за стабильность

Вторая серьезная проблема - неймспейсы. Большинство инженеров не слышали, что в Terraform есть неймспейсы, а те кто слышали - стараются их не использовать.

Неймспейсы в Terraform были созданы как ответ на запрос "хотим точно такую же инфру, только без копипасты". Как результат - Terraform рождает кучу месса, остаются те же проблемы с неактуальностью стейта, суперсложно завернуть его в Jenkins/Atlantis и т.п. и т.д.

Получается, что задача создать динамический environment (как прод, например) и потушить его после какого-то действия по задумке - easy, а в реализации - ламучий мрак.

И в этот момент где-то далеко виднеется GitOps для инфраструктуры. После того, как все заценили ArgoCD и все прелести GitOps подхода - мы увидели первые зачатки реализаций GitOps, но уже для инфраструктуры.

В чем суть и как работает:
- мы устанавливаем в Kubernetes cluster контроллер (aka operator с новыми CRD)
- имплементим инфраструктурные зависимости внутри чарта с помощью CRD
- деплоим в кластер, контроллер подхватывает манифесты и деплоит вместе с приложением

Таким образом, мы получаем GitOps для инфраструктуры:
- можно конфигурить апку и зависимости вместе
- отдать это девелоперам, которым понятно YAML и не понятно HCL
- врапнуть чем угодно (helm/kustomize/jsonnet etc)

Стоит заметить что GCP немного впереди и уже работает (реализация - Config Connector), а AWS пока не догоняет - половина ресурсов в Beta, а вторая половина совсем не реализована. Я отлично вижу как определенные рутинные и неудобные куски выносятся из Terraform и врапаются любой билд тулой, например:
- вместо мануального менеджмента IAM делаем отдельный реп, показываем девелоперам как пользоваться, и ставим апруверами SecOps —> вообще убираем себя из этого флоу
- также выносим куски с ASg, размерами инстансов, тестовыми инстансами и т.п.
- делаем амбрелла чарт, который умеет инклудить приложения компании и докидывает туда зависимости (временные S3, SQS, RDS, etc) и делаем динамический энв на PR

Уже доступные ресурсы можно посмотреть по ссылкам:
👉 https://cloud.google.com/config-connector/docs/reference/overview
👉 https://aws-controllers-k8s.github.io/community/services/
Google Cloud Config Connector resources | Config Connector Documentation | Google Cloud
More from @devopsengineer
  1. Jul 29, 2026Ще кілька років тому шлях у DevOps був більш-менш зрозумілим. Проте сьогодні AI бере на се…
  2. Jun 11, 2026AI-first SDLC, Agentic Engineering, Agents, IDEs, Claude Code, Cursor, GitHub Copilot, Ope…
  3. Jun 9, 2026Шановне панство, Звертаю вашу увагу: якщо ви вже награлися з AGENTS.md / CLAUDE.md, self-h…
  4. May 28, 2026Linux kernel, namespaces, cgroups, LXC, Docker, multi-stage builds, distroless images, con…
  5. Mar 9, 2026На fwdays було багато цікавих доповідей, але особливо хочу зазначити доповідь Володимира Ц…
  6. Feb 2, 2026AWS Certified Generative AI Developer - Professional Доброго дня, Десь пролітало по сусідн…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →