Skip to content

Configuration Reference

kinder uses the same kind.x-k8s.io/v1alpha4 API version as kind. A minimal configuration file looks like:

apiVersion: kind.x-k8s.io/v1alpha4
kind: Cluster

A complete kinder configuration showing all addon fields:

# Full kinder v1alpha4 configuration -- all fields shown
apiVersion: kind.x-k8s.io/v1alpha4
kind: Cluster
addons:
# Core addons (always useful -- enabled by default)
metalLB: true
metricsServer: true
coreDNSTuning: true
localPath: true
# Optional addons (enabled by default -- disable for lightweight clusters)
envoyGateway: true
dashboard: true
localRegistry: true
certManager: true

Pass a configuration file to kinder create cluster with the --config flag:

Terminal window
kinder create cluster --config cluster.yaml

These addons are always useful regardless of your workload.

FieldTypeDefaultDescription
metalLBbooltrueInstall MetalLB for LoadBalancer IP assignment
metricsServerbooltrueInstall Metrics Server for kubectl top support
coreDNSTuningbooltrueApply CoreDNS tuning for optimised local DNS caching
localPathbooltrueInstall local-path-provisionerlocal-path as the default StorageClass. Set to false to restore the legacy standard StorageClass

These addons are powerful but commonly disabled for minimal or CI clusters.

FieldTypeDefaultDescription
envoyGatewaybooltrueInstall Envoy Gateway for Gateway API ingress
dashboardbooltrueInstall Headlamp web dashboard
localRegistrybooltrueRun a private container registry at localhost:5001 with dev tool auto-discovery
certManagerbooltrueInstall cert-manager with a self-signed ClusterIssuer

To create a cluster without specific addons, set the corresponding fields to false:

apiVersion: kind.x-k8s.io/v1alpha4
kind: Cluster
addons:
dashboard: false
envoyGateway: false

This creates a cluster with MetalLB, Metrics Server, CoreDNS tuning, Local Registry, and cert-manager, but skips the Dashboard and Envoy Gateway.

To skip all addons and get a plain kind-equivalent cluster:

apiVersion: kind.x-k8s.io/v1alpha4
kind: Cluster
addons:
metalLB: false
envoyGateway: false
metricsServer: false
coreDNSTuning: false
localPath: false
dashboard: false
localRegistry: false
certManager: false

Because kinder uses kind.x-k8s.io/v1alpha4 as its API version, existing kind configuration files work without modification. The addons section is ignored by kind and is only processed by kinder.