Блог

Как мы сократили время деплоя с 40 минут до 3 с помощью ArgoCD и Kustomize

Один из наших клиентов из финтех-сектора долгое время страдал от медленного и ненадёжного процесса деплоя. Jenkins-пайплайн на 40 минут, ручные шаги, rollback через панику в чате. Знакомая история?

Проблема

Существующий CI/CD был построен на Jenkins с кастомными Groovy-скриптами, которые копились годами. Деплой одного сервиса занимал в среднем 40 минут и включал:

Решение

Мы перевели всю инфраструктуру на GitOps-подход: ArgoCD + Kustomize + GitHub Actions.

# kustomization.yaml (production overlay)
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: production
resources:
  - ../../base
patches:
  - path: replicas-patch.yaml
images:
  - name: api-server
    newTag: v2.14.3  # обновляется автоматически

Теперь процесс выглядит так: разработчик мержит PR в main, GitHub Actions собирает образ и обновляет тег в Kustomize-оверлее, ArgoCD ловит изменение и выкатывает. Весь цикл — 3 минуты.

Результаты

GitOps — это не модное слово, а инженерная дисциплина. Если ваш деплой до сих пор зависит от «того парня, который знает как», возможно, пора что-то менять.

Новые статьи скоро. Подпишитесь на рассылку, чтобы не пропустить.