Helm экспортирует файлы YAML локально (просто используйте движок шаблонов, не отправляйте в Kubernetes)

Я хочу экспортировать уже сформированные диаграммы Helm как файлы YAML. В настоящий момент я не могу использовать Tiller на своем кластере Kubernetes, но все же хочу использовать Helm Charts. По сути, я хочу, чтобы Helm экспортировал YAML, который отправляется в Kubernetes API со значениями, заданными в шаблоне Helm. После этого я загружу файлы YAML в свой кластер Kubernetes.

Я попытался запустить .\helm.exe install --debug --dry-run incubator\kafka, но получаю сообщение об ошибке Error: Unauthorized.

Обратите внимание, что я запускаю Helm в Windows (версия helm-v2.9.1-windows-amd64).


person j9dy    schedule 29.05.2018    source источник


Ответы (3)


Нам нужны журналы, чтобы проверить Unauthorized проблему.

Но вы можете легко сгенерировать шаблоны локально:

helm template mychart

Рендеринг шаблонов диаграмм локально и отображение результатов.

Для этого не требуется Тиллер. Однако любые значения, которые обычно просматриваются или извлекаются в кластере, будут подделаны локально. Кроме того, ни одно из серверных тестов на валидность диаграммы (например, поддерживается ли API) не выполняется.

Дополнительная информация: https://docs.helm.sh/helm/#helm-template

person Amrit Bera    schedule 29.05.2018

Решение Amrit Bera будет работать только с локальной диаграммой руля, в соответствии с деталями вашего вопроса, вы хотите, чтобы она работала с удаленной диаграммой руля, эта функция будет добавлена ​​в Helm v3 (в настоящее время выполняется работа).

RehanSaeed опубликовал следующее обходное решение (https://github.com/helm/helm/issues/4527)

По сути:

mkdir yamls
helm fetch --untar --untardir . 'stable/redis' #makes a directory called redis 
helm template --output-dir './yamls' './redis' #redis dir (local helm chart), export to yamls dir

Хорошая вещь в этом заключается в том, что вы можете смешать эту технику с weaveworks flux для git ops + это дает вам еще один вариант использования Helm v2 без tiller, в дополнение к плагину Tiller (который позволяет запускать tiller локально, но не работает плавно ).

person neokyle    schedule 15.05.2019

Прямо с helm install --help

To check the generated manifests of a release without installing the chart,
the '--debug' and '--dry-run' flags can be combined. This will still require a
round-trip to the Tiller server.
person George Miller    schedule 17.11.2018
comment
Есть ли способ сделать это * после * установки? Я получаю сообщение об ошибке, что выпуск уже существует. - person AndreKR; 02.05.2019
comment
helm uninstall затем перезапустите команду, она должна работать - person Zee; 15.06.2020