Awesome Kustomize Overview
A curated and collaborative list of awesome Kustomize resources
🏠 Home · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor · 😺 aabouzaid/awesome-kustomize · ⭐ 90 · 🏷️ DevOps
Awesome Kustomize
A curated and collaborative list of awesome Kustomize resources.
Kustomize introduces a template-free way to customize Kubernetes manifests. It's extensible and uses a purely declarative approach to configuration customization, which will help you efficiently manage your Infrastructure as a code (IaC).
Contributions are welcome, add links through pull requests (⭐90) or create an issue to start a discussion.
Contents
Overview
Kustomize works as a standalone binary; also, it's built into kubectl
(since v1.14). It can be used with off-the-shelf applications like Helm charts. Also, it has a deep integration with different GitOps tools like ArgoCD, Flux, and many others.
Plugins
Kustomize has 3 types of plugins generator
, transformer
, and validator
.
Note
If you are a plugin developer, it's highly recommended to support the new plugins standard KRM function (⭐11k).
Generators
- Secretize (⭐68) - Generating Kubernetes Secret from various sources. It's like a swiss army knife, but for Kubernetes secrets (Exec).
- SopsSecretGenerator (⭐113) - Generating Secrets from sops-encrypted files (Exec, Exec KRM).
- KSops (⭐628) - Generating Secrets from sops-encrypted files (Exec).
- PolicyGenerator (⭐29) - Generating Open Cluster Management policies (Exec).
- KRMFfnBuiltin (⭐5) - Running builtin generators transformers (Exec).
- Merger (⭐27) - Generating manifests seamlessly by extending Kustomize merge strategies using schemaless StrategicMerge (Containerized KRM, Exec KRM).
Transformers
- HelmValuesTransformer (⭐14) - Transforming values in HelmRelease CustomResource. It helps to manage a lot of HelmRelease's value in single transformer file (Exec).
- TemplateTransformer (⭐12) - Providing a set of KRM Functions to run builtin transformers in place (Containerized KRM, Exec KRM).
Validators
- KubeconformValidator (⭐7) - Validating Kubernetes manifests using embedded Kubeconform (Containerized KRM, Exec KRM).
Guides
Kustomize guides based on their level or type like 📰 Article, 📺 Video, 🧪 Lab.
Novice
- 📰 Declarative Management of Kubernetes Objects Using Kustomize - The official Kubernetes documentation task for Kustomize.
- 📰 Configure Kubernetes with Kustomize - A guide helps to get started with Kustomize, understand its intended use cases, and find resources for using it with other Google Cloud tools.
- 📺 Organizing the YAML mess with Kustomize - A talk shows how Kustomize could help to manage Kubernetes YAML files with a growing number of services and environments.
- 📺 Kustomize: Deploy Your App with Template Free YAML - A talk introduces Kustomize, a declarative application management system, that allows deployments to be described as template free YAML.
Intermediate
- 🧪 ArgoCD GitOps Tutorial - Working with Kustomize - A hands-on lab covers using Kustomize in GitOps and it goes through the Kustomize syntax and deploying a Kustomized application.
- 📰 3 ways to customize off-the-shelf Helm charts with Kustomize - A guide covers 3 different ways to use Kustomize and Helm together.
Advanced
- 📰 Advanced Kustomize features - A guide covers more than 5 advanced Kustomize capabilities.
- 📰 Set OpenAPI patch strategy for Kubernetes Custom Resources - A guide shows how to provide schema to control the patch strategy of the CRDs.
- 📺 Customizing Kustomize with Client-Side Custom Resources - A talk covers extending Kustomize via plugins to address common yet idiosyncratic application needs.
- 📺 Own your YAML: extending Kustomize via Plugins - A talk shows how to create custom resources using Kustomize external plugins.
- 📰 Kustomize Enhancement with KRM Functions - A detailed guide covers KRM concept and how to use it in Kustomize plugins.
Tips & Tricks
- 📰 Delete a manifest from a Kustomize base - A handy way to delete named manifest using Kustomize patch.
- 📰 Apply Kustomize builtin transformers on a single resource - A way to use internal transformers on specific resources.
- 📰 Pass extra data to the Containerized KRM function - Different cases of share data with Containerized KRM function.
Misc
- Asdf-kustomize (⭐21) - Kustomize plugin for asdf version manager.
Related lists
- Awesome Kubernetes (⭐15k) - A curated list of awesome Kubernetes resources.
- Awesome Kubectl plugins (⭐884) - A curated list of awesome Kubectl plugins.
- Awesome Helm (⭐921) - A curated list of awesome Helm charts and resources.