K8s Helm: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
 
(не показано 11 промежуточных версий этого же участника)
Строка 1: Строка 1:
  +
[[Категория:K8s]]
  +
[[Категория:Helm]]
  +
 
=Helm=
 
=Helm=
Записки на полях про Helm (3)
+
Записки на полях про 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>

Текущая версия на 11: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

Передача параметров в именованные темплейты

Пример именованного темплейта

{{- 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 -}}