Version 2.x du chart uniquementLa fonctionnalité
additionalManifests est disponible uniquement dans le chart Helm v2.x basé sur des sous-charts.additionalManifests vous permet de déployer des objets Kubernetes arbitraires avec le chart ClickStack. Utilisez-la pour les ressources que le chart ne prend pas en charge nativement, comme NetworkPolicy, HorizontalPodAutoscaler, ServiceAccount, PodMonitor, des objets Ingress personnalisés ou tout autre objet de l’API Kubernetes.
Fonctionnement
additionalManifests est une définition complète de ressource Kubernetes. Le chart :
- Parcourt chaque entrée de la liste
- Convertit l’entrée en YAML (
toYaml) - Évalue les expressions de template dans ce YAML à l’aide de
tpldans Helm
.Release.Name,.Release.Namespaceinclude "clickstack.fullname" .et les autres helpers du chart.Values.*
Contraintes des fichiers values
additionalManifests se configure dans un fichier values, et les fichiers values sont analysés comme du YAML avant l’exécution de tpl.
- Toute occurrence de
{{ ... }}dans un fichier values doit se trouver dans une chaîne entre guillemets - Les blocs de template structurels ne sont pas valides dans un YAML de fichier values (par exemple,
{{- include ... | nindent ... }}seul) - Pour les champs non textuels (par exemple, les ports numériques), utilisez des valeurs littérales ou des ports nommés
- Si vous avez besoin de templating structurel, utilisez le template d’un wrapper chart plutôt qu’un fichier values brut
Helpers de chart disponibles
templates/_helpers.tpl :
| Helper | Description | Utilisation dans le fichier values |
|---|---|---|
clickstack.name | Nom du chart (tronqué à 63 caractères) | Sans risque dans les scalaires entre guillemets |
clickstack.fullname | Nom qualifié par la release | Sans risque dans les scalaires entre guillemets |
clickstack.chart | Nom du chart + version | Sans risque dans les scalaires entre guillemets |
clickstack.selectorLabels | Bloc de labels du selector | Uniquement dans les templates de wrapper chart |
clickstack.labels | Bloc de labels standard | Uniquement dans les templates de wrapper chart |
clickstack.mongodb.fullname | Nom de la CR MongoDB | Sans risque dans les scalaires entre guillemets |
clickstack.clickhouse.fullname | Nom de la CR ClickHouse | Sans risque dans les scalaires entre guillemets |
clickstack.otel.fullname | Nom du collector OTel | Sans risque dans les scalaires entre guillemets |
Exemples
ServiceAccount
NetworkPolicy
HorizontalPodAutoscaler
PodMonitor (Prometheus Operator)
Ingress ALB sur AWS
TargetGroupBinding
TargetGroupBinding explicites :
Avancé : templates de wrapper chart
include "clickstack.labels" . | nindent 4, générez-les à partir d’un template de wrapper chart (templates/*.yaml) au lieu de placer directement ces blocs dans les fichiers values.
Exemple d’extrait de template de wrapper chart :
Astuces
Hooks de Helm
additionalManifests est générée sous forme de document YAML distinct. Vous pouvez ajouter des annotations de hook Helm pour contrôler l’ordre d’installation et de mise à niveau :
Ordre des CRD
PodMonitor), les CRD doivent déjà exister dans le cluster avant l’installation ou la mise à niveau.
Combiner plusieurs ressources
additionalManifests est une liste. Les éléments sont rendus dans l’ordre de la liste, et chaque élément devient un document YAML distinct.
Étapes suivantes
- Guide principal de Helm - Installation de base
- Guide de configuration - Clés API, secrets et Ingress
- Déploiements Cloud - Configurations GKE, EKS et AKS
- Dépôt des charts Helm ClickStack - Code source du chart et référence des valeurs