K8s Helm: различия между версиями
Материал из noname.com.ua
Перейти к навигацииПерейти к поискуSirmax (обсуждение | вклад) (→Helm) |
Sirmax (обсуждение | вклад) |
||
(не показано 11 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
+ | [[Категория:K8s]] |
||
+ | [[Категория:Helm]] |
||
+ | |||
=Helm= |
=Helm= |
||
− | Записки на полях про Helm |
+ | Записки на полях про Helm |
+ | * https://habr.com/ru/company/flant/blog/529158/ |
||
=Добавить репу= |
=Добавить репу= |
||
Строка 9: | Строка 13: | ||
<PRE> |
<PRE> |
||
helm pull bitnami/kafka |
helm pull bitnami/kafka |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | <PRE> |
||
+ | helm install --dry-run --debug kilda-kafka kafka |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | =Code Snippets= |
||
+ | * https://helm.sh/docs/chart_template_guide/function_list/ |
||
+ | |||
+ | ==Передача параметров в именованные темплейты== |
||
+ | * https://runkiss.blogspot.com/2021/06/sending-parameters-to-helm-named.html |
||
+ | * https://habr.com/ru/company/flant/blog/529158/ |
||
+ | |||
+ | Пример именованного темплейта |
||
+ | <PRE> |
||
+ | {{- define "myNamedTemplate" }} |
||
+ | - name: {{ .Values.myParam1 }} |
||
+ | value: {{ .Values.myValue1 | quote }} |
||
+ | - name: {{ .Values.myParam2 }} |
||
+ | value: {{ .Values.myValue2 | quote }} |
||
+ | {{- end }} |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | |||
+ | ===Использование простого словаря (dict)=== |
||
+ | |||
+ | <PRE> |
||
+ | {{- $myValues := dict "myParam1" "myValue1" "myParam2" "myValue2" -}} |
||
+ | {{- $myParameters := dict "Values" $myValues -}} |
||
+ | {{- include "myNamedTemplate" $myParameters }} |
||
+ | </PRE> |
||
+ | |||
+ | ===Использование словаря c вложениями (dict)=== |
||
+ | Тут set делает то что от него ожидается - устанавливает значение по ключу в словаре.<BR> |
||
+ | $_ нужна для того что бы "выкинуть" то что вернет функция set ( и значение $_ нигде не используется)<BR> |
||
+ | <PRE> |
||
+ | |||
+ | {{- $myValues := dict -}} |
||
+ | {{- $myInnerValues := dict "innerVariable" "innerValue" -}} |
||
+ | {{- $_ := set $myValues "inner" $myInnerValues -}} |
||
+ | {{- $myParameters := dict "Values" $myValues -}} |
||
+ | |||
+ | {{- include "myNamedTemplate" $myParameters }} |
||
+ | </PRE> |
||
+ | |||
+ | ===Глобальные переменные=== |
||
+ | |||
+ | If case the named template uses a .Values.global.VARIABLE , add the global dictionary as well: |
||
+ | |||
+ | <PRE> |
||
+ | {{- $myValues := dict "myParam1" "myValue1" "myParam2" "myValue2" -}} |
||
+ | {{- $_ := set $myValues "global" .Values.global -}} |
||
+ | {{- $myParameters := dict "Values" $myValues -}} |
||
+ | {{- include "myNamedTemplate" $myParameters }} |
||
+ | </PRE> |
||
+ | |||
+ | ===Перекрытие параметров=== |
||
+ | |||
+ | To override existing parameters, only for a specific activation, use the following: |
||
+ | <PRE> |
||
+ | {{- $myValues := .Values | deepCopy -}} |
||
+ | {{- $_ := set $myValues "myOverrideParam" "overridenValue" -}} |
||
+ | {{- $myParameters := dict "Values" $myValues -}} |
||
+ | {{- include "myNamedTemplate" $myParameters }} |
||
+ | </PRE> |
||
+ | |||
+ | ===Перекрытие параметров (вложенных в словарь)=== |
||
+ | |||
+ | To override just a single global variable, use the following: |
||
+ | <PRE> |
||
+ | {{- $myValues := .Values | deepCopy -}} |
||
+ | {{- $_ := set $myValues "global" .Values.global -}} |
||
+ | {{- $_ := set $myValues.global.OVERRIDE_GLOBAL_PARAMETER_NAME "OVERRIDE_GLOBAL_PARAMETER_VALUE" -}} |
||
+ | {{- $myParameters := dict "Values" $myValues -}} |
||
</PRE> |
</PRE> |
Текущая версия на 10:51, 2 февраля 2022
Helm
Записки на полях про Helm
Добавить репу
helm repo add bitnami https://charts.bitnami.com/bitnami
helm pull bitnami/kafka
helm install --dry-run --debug kilda-kafka kafka
Code Snippets
Передача параметров в именованные темплейты
- https://runkiss.blogspot.com/2021/06/sending-parameters-to-helm-named.html
- https://habr.com/ru/company/flant/blog/529158/
Пример именованного темплейта
{{- define "myNamedTemplate" }} - name: {{ .Values.myParam1 }} value: {{ .Values.myValue1 | quote }} - name: {{ .Values.myParam2 }} value: {{ .Values.myValue2 | quote }} {{- end }}
Использование простого словаря (dict)
{{- $myValues := dict "myParam1" "myValue1" "myParam2" "myValue2" -}} {{- $myParameters := dict "Values" $myValues -}} {{- include "myNamedTemplate" $myParameters }}
Использование словаря c вложениями (dict)
Тут set делает то что от него ожидается - устанавливает значение по ключу в словаре.
$_ нужна для того что бы "выкинуть" то что вернет функция set ( и значение $_ нигде не используется)
{{- $myValues := dict -}} {{- $myInnerValues := dict "innerVariable" "innerValue" -}} {{- $_ := set $myValues "inner" $myInnerValues -}} {{- $myParameters := dict "Values" $myValues -}} {{- include "myNamedTemplate" $myParameters }}
Глобальные переменные
If case the named template uses a .Values.global.VARIABLE , add the global dictionary as well:
{{- $myValues := dict "myParam1" "myValue1" "myParam2" "myValue2" -}} {{- $_ := set $myValues "global" .Values.global -}} {{- $myParameters := dict "Values" $myValues -}} {{- include "myNamedTemplate" $myParameters }}
Перекрытие параметров
To override existing parameters, only for a specific activation, use the following:
{{- $myValues := .Values | deepCopy -}} {{- $_ := set $myValues "myOverrideParam" "overridenValue" -}} {{- $myParameters := dict "Values" $myValues -}} {{- include "myNamedTemplate" $myParameters }}
Перекрытие параметров (вложенных в словарь)
To override just a single global variable, use the following:
{{- $myValues := .Values | deepCopy -}} {{- $_ := set $myValues "global" .Values.global -}} {{- $_ := set $myValues.global.OVERRIDE_GLOBAL_PARAMETER_NAME "OVERRIDE_GLOBAL_PARAMETER_VALUE" -}} {{- $myParameters := dict "Values" $myValues -}}