Зачем обновлять версию helm чарта для FluxCD

Работая с FluxCD мне довелось познать очень интересный момент. Оказывается, он кеширует ваши Helm чарты и порой может разворачивать деплойменты не в том виде, в каком вы хотите.

Вся инфраструктура в нашем Kubernetes кластере поднимается с помощью чудесного FluxCD.

Это отличное решение для IaC которое позволяет имплементировать GitOps в ваш кластер.

Давайте для новеньких я объясню что это и с чем его едят.

У вас есть 1,2,5…n количество Helm чартов. Что бы задеплоить каждый из них, вы должны проделать helm instal для каждого из них. FluxCD позволяет разместить все чарты в вашем рапозитории, засетапить только Flux provisioner в кластер, который будет пулить (публичный или приватный) репозиторий и поднимать инфраструктуру за вас. Если нужно поменять, скажем, env переменную в каком-то деплойменте - вы просто пушите изменения в репозиторий а FluxCD проапдейтит деплоймент за вас. Чудо, не правда ли?

На практике все работает отлично, НО, если при обновлении чартов в репозитории вы обновляете версию чарта.

Возможно кто-то из вас это и так знал, но для меня это стало открытием, спустя, 5 часов мучительной битвы с Flux.


Подготовил я Helm чарт, отладил его, руками все идеально поднимается.

Закидываю его в Flux - все окей.

Добавляю я в чарт Container port: 80, деплою руками - все ок. Пушу в в гит, флюкс разворачивает деплоймент, делаю дескрайб пода - Container port: <null>

Первая мысль - не понял

Делаю изменения уже не в values флюкса а в values.yaml - тоже самое

Делаю еще изменения еще пул -<null>

В итоге я провозился 5 часов делая различные деплои и порой недоумевал, что выставляя одни параметры - флюкс деплоит совершенно другое.

Потом я решил, а давайте я просто кильну провижионер и посмотрю, что произойдет, и, вуа-ля, деплоймент поднялся именно таким, каким я хотел, и Container port: 80

А через некоторое время мне сказал коллега, что бы FluxCD обновил деплоймент с новыми изменениями, нужно указать Новую версию для Helm чарты который используется.

В итоге, если у вас проблема со странным деплоием от флюкса, у вас только 2 решения:

  1. Обновить версию хелм чарта
  2. Кильнуть поды флюкса
comments powered by Disqus