Kustomize permet de configurer de manière simple vos déploiements complexes dans Kubernetes.
Kustomize permet de gérer les configurations des ressources pour Kubernetes en utilisant des fichiers YAML, avec une syntaxe facile à utiliser. Il permet également de gérer des configurations complexes pour des applications multi-environnements en appliquant des configurations en série.
En effet, Kustomize applique des patchs et overlays sur une configuration de base. Cela permet de gérer des configurations complexes plus simplement qu’avec Helm où il faut redéfinir un fichier de values à chaque fois. Et ce, tout en gardant votre code aussi DRY que possible !
De plus, Kustomize génère automatiquement de nouveaux secrets Kubernetes chaque fois que vous modifiez un champ de données (data field) dans le fichier de configuration. Cette fonctionnalité permet de maintenir la sécurité des secrets et tout en simplifiant vos rollbacks.
Cependant, Kustomize est plus difficile à appréhender pour des personnes n'étant pas familières avec les ressources Kubernetes et leur déclaration en YAML. C’est aussi un outil moins flexible que Helm en termes de personnalisation : il n’est pas possible d’intégrer de logique via du templating par exemple.
Nous pensons que Kustomize et Helm sont deux outils complémentaires pour la gestion des configurations de déploiement pour Kubernetes. Alors que Kustomize est idéal pour gérer les configurations de manière modulaire, Helm offre un moyen pratique de gérer des packages d'application plus complexes.
En utilisant Kustomize avec Helm, les équipes peuvent bénéficier des avantages des deux outils. Par exemple, Helm peut être utilisé pour gérer des packages d'application complets, tandis que Kustomize peut être utilisé pour personnaliser des configurations spécifiques pour des environnements de déploiement.
Kustomize est un outil puissant pour la gestion des configurations de déploiement pour Kubernetes, avec une syntaxe simple et qui complète parfaitement Helm.