TGViewer
Разработка Юлы Разработка Юлы @youlatech · 360 subscribers
Post #142 958
Как мы освоили helm 🤓

Мы решили запилить единый и кастомизируемый helm-шаблон через values-файлы с гордым именем youla-service-template.

Как это работает?
➡️ При любых правках с сорс-репозитории этого шаблона он собирается в пакетик и пушится в общий helm-registry.
➡️ Затем команды разработки создают в своем репозитории только values.yaml файл для чарта, где кратко описывают свой сервис и перечисляют необходимые ему кубовые сущности. Например, deployment, service, secret, … etc.
➡️ При запуске пайплана в gitlab, джоба берет себе helm-пакет шаблона из общего registry и через простую команду
helm upgrade –install Charts/youla-service-template -f values.yaml
рендерит через шаблон свой персональный чарт.

Бонус подхода в том, что для деплоя в Kubernetes командам необязательно погружаться в дебри helm-а и go-шаблонизатора, достаточно создать по готовому примеру values.yaml с нужными переменными.

Чтобы начать использовать шаблон, нужно:

1️⃣ Создать у себя в репозитории values.yaml с необходимыми переменными;
2️⃣ Добавить в gitlab-ci команды подключения helm-registry и установки чарта:
helm repo add Charts https://nexus/repository/helm-charts/
helm upgrade --install ${RELEASE_NAME} Charts/youla-service-template -f values.yaml
✅ Done! Один коммит и ваш сервис в Kubernetes.

Можно это всё ещё и украсить:
1️⃣ Смотрим успешность выкатки новой версии деплоя
kubectl rollout status deployment ${RELEASE_NAME}
2️⃣ Удаляем helm-чарт с сервисом при закрытии ветки в gitlab
helm uninstall ${RELEASE_NAME}

Будем наблюдать за развитием событий.
Плюсаните пост, если вам полезны DevOps посты в канале 😉
Gist values.yaml for helm template values.yaml for helm template. GitHub Gist: instantly share code, notes, and snippets.
  • ❤ 9
  • 👍 7
More from @youlatech
  1. Jan 23, 2023Наша команда разработки Юлы, Маркета ВКонтакте и бизнес-сообществ ВКонтакте – завсегдатаи…
  2. Dec 27, 2022BDD-фреймворк для автоматизации API без кода #QA #Automatization Новые статьи на Хабре в к…
  3. Dec 19, 2022Что такое kPHP для нашей команды и с чем его едят? #Backend Распил монолита – звучит до бо…
  4. Dec 12, 2022Осенний сезон конференций 2022 закрыт, а мы делимся видеозаписями в нашем Youtube-канале Р…
  5. Nov 24, 2022Стоит ли внедрять GraphQL в свой проект? #Backend #GraphQL Наша команда никогда не устанет…
  6. Nov 16, 2022Код как данные #Frontend #Livecoding Если данные можно превратить в строки кода, возможно…
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 →