Apenas para a versão 2.x do chartO recurso
additionalManifests está disponível apenas no chart do Helm baseado em subcharts v2.x.additionalManifests permite implantar objetos arbitrários do Kubernetes junto com o chart do ClickStack. Use-o para recursos que o chart não oferece nativamente por template, como NetworkPolicy, HorizontalPodAutoscaler, ServiceAccount, PodMonitor, objetos Ingress personalizados ou qualquer outro objeto da API do Kubernetes.
Como funciona
additionalManifests é uma definição completa de recurso do Kubernetes. O chart:
- Itera sobre cada entrada da lista
- Converte a entrada em YAML (
toYaml) - Avalia expressões de template nesse YAML usando o
tpldo Helm
.Release.Name,.Release.Namespaceinclude "clickstack.fullname" .e outras funções auxiliares do chart.Values.*
Restrições do arquivo de values
additionalManifests é configurado em um arquivo de values, e os arquivos de values são processados como YAML antes da execução de tpl.
- Qualquer
{{ ... }}em um arquivo de values deve estar dentro de uma string entre aspas - Blocos estruturais de template não são válidos em YAML de values (por exemplo,
{{- include ... | nindent ... }}isoladamente) - Para campos que não são do tipo string (por exemplo, portas numéricas), use valores literais ou portas nomeadas
- Se precisar de templating estrutural, use um template wrapper do chart em vez de um arquivo de values puro
Helpers de chart disponíveis
templates/_helpers.tpl:
Exemplos
ServiceAccount
NetworkPolicy
HorizontalPodAutoscaler
PodMonitor (Prometheus Operator)
Entrada ALB da AWS
TargetGroupBinding
TargetGroupBinding explícitos:
Avançado: templates de um chart wrapper
include "clickstack.labels" . | nindent 4, renderize-os em um template de chart wrapper (templates/*.yaml) em vez de colocar esses blocos diretamente em arquivos de values.
Exemplo de trecho de template de chart wrapper:
Dicas
Hooks do Helm
additionalManifests é renderizada como um documento YAML separado. Você pode adicionar anotações de hook do Helm para controlar a ordem de instalação/atualização:
Ordem dos CRDs
PodMonitor), os CRDs já devem existir no cluster antes da instalação/atualização.
Combinando vários recursos
additionalManifests é uma lista. As entradas são processadas na ordem da lista, e cada entrada vira um documento YAML separado.
Próximas etapas
- Guia principal do Helm - Instalação básica
- Guia de configuração - Chaves de API, Secrets e Entrada
- Implantações no Cloud - Configurações de GKE, EKS e AKS
- Repositório de charts do Helm do ClickStack - Código-fonte do chart e referência de values