Skip to main content

Kind Provider Setup (Local Development)

Purpose: For platform engineers and contributors, shows how to deploy a local openCenter cluster using Kind for development and testing.

Prerequisites​

  • Docker Desktop or Podman running
  • Kind installed (mise install handles this if using the CLI repo)
  • openCenter CLI installed (see CLI Installation)
  • 8GB+ RAM available for Docker/Podman

Initialize Cluster​

opencenter cluster init dev-cluster --org dev-team --type kind

Configure​

Edit the cluster configuration:

opencenter cluster edit dev-cluster

Kind-specific configuration:

opencenter:
infrastructure:
provider: kind
cloud:
kind:
workers: 2
control_planes: 1
kubernetes_version: "1.33.5"

services:
# Minimal service set for local development
kube-prometheus-stack:
enabled: true
cert-manager:
enabled: true
gateway-api:
enabled: true
gateway:
enabled: true

Kind clusters skip infrastructure provisioning (no Terraform) and Kubespray. Kind creates the cluster directly, then FluxCD bootstraps services.

Podman Runtime​

If you run Kind on Podman, set the experimental provider variable before bootstrapping:

export KIND_EXPERIMENTAL_PROVIDER=podman
opencenter cluster bootstrap dev-cluster

This variable is relevant only for the local Kind provider.

Deploy​

# Validate
opencenter cluster validate dev-cluster

# Generate GitOps repository
opencenter cluster setup dev-cluster --render

# Create Kind cluster and bootstrap
opencenter cluster bootstrap dev-cluster

What's Different from Production​

FeatureKindProduction (OpenStack/VMware/Baremetal)
InfrastructureDocker containersVMs or bare metal
NetworkingKind internalCalico CNI
Load balancerPort mappingMetalLB or cloud LB
StorageLocal pathLonghorn, CSI drivers
HASingle control plane3 control plane nodes
KubesprayNot usedFull deployment

Verification​

# Check cluster
kubectl cluster-info --context kind-dev-cluster

# Check nodes
kubectl get nodes

# Watch FluxCD reconciliation
kubectl get kustomizations -n flux-system -w

Cleanup​

opencenter cluster destroy dev-cluster
# Or directly:
kind delete cluster --name dev-cluster

Common Issues​

If Kind fails to start, check Docker resource limits. Kind requires at least 4GB RAM and 2 CPUs allocated to Docker Desktop.

If services fail to deploy, check that port 80 and 443 are not in use by other processes on your machine.