Troubleshooting¶
This guide helps you diagnose and fix common issues with kindplane.
Diagnostic Commands¶
Pre-flight Checks¶
Before bootstrapping, verify your system is ready:
Check Cluster Status¶
Run Diagnostics¶
kindplane diagnostics
kindplane diagnostics --component providers
kindplane diagnostics --component crossplane
Stream Logs¶
Check Providers¶
Check Provider Logs¶
kindplane logs --component providers
# Or via kubectl:
kubectl logs -n crossplane-system -l pkg.crossplane.io/provider=<provider-name>
Check Crossplane Logs¶
kindplane logs --component crossplane
# Or via kubectl:
kubectl logs -n crossplane-system -l app=crossplane
Check All Pods¶
Common Issues¶
Docker Not Running¶
Symptom:
Solution:
- Start Docker Desktop
- Or start Docker daemon:
sudo systemctl start docker - Verify:
docker version
Cluster Already Exists¶
Symptom:
Solution:
Provider Not Healthy¶
Symptom:
Diagnosis:
kubectl describe provider provider-aws
kubectl logs -n crossplane-system -l pkg.crossplane.io/provider=provider-aws
Common Causes:
- Invalid package URL - Check the package exists
- Missing credentials - Configure ProviderConfig
- Network issues - Check Docker network settings
- Resource limits - Increase Docker memory
Credentials Not Working¶
Symptom:
Provider logs show authentication errors.
Solution:
-
Verify credentials are valid:
-
Check secret exists:
-
Reconfigure:
Resources Stuck in Creating¶
Symptom:
Diagnosis:
Look at Status.Conditions for error messages.
Common Causes:
- Missing permissions in cloud account
- Invalid resource configuration
- Quota limits reached
Helm Chart Installation Fails¶
Symptom:
Diagnosis:
Common Causes:
- Invalid chart repository URL
- Chart version doesn't exist
- Missing dependencies
- Namespace doesn't exist
Timeout During Bootstrap¶
Symptom:
Solution:
-
Increase timeout:
-
Check network connectivity
- Increase Docker resources
Composition Not Taking Effect¶
Symptom:
Claims don't create managed resources.
Diagnosis:
Common Causes:
- Composition doesn't match XRD
- Missing patches
- Invalid field paths
Network Issues¶
Cannot Pull Images¶
Symptom:
Pods stuck in ImagePullBackOff.
Solution:
-
Check Docker network:
-
Check DNS resolution:
-
Check corporate proxy settings
Kind Network Issues¶
Symptom:
Services not accessible from host.
Solution:
Verify port mappings in configuration:
Resource Issues¶
Insufficient Memory¶
Symptom:
Pods in OOMKilled or pending state.
Solution:
- Increase Docker Desktop memory (8GB+ recommended)
-
Reduce number of workers:
-
Use family providers instead of monolithic
Disk Space¶
Symptom:
Solution:
# Clean Docker resources
docker system prune -a
# Remove unused Kind clusters
kind get clusters
kind delete cluster --name <unused-cluster>
Debugging Tips¶
Run Doctor First¶
Before troubleshooting, check system requirements:
Enable Verbose Output¶
Run Diagnostics¶
Watch Resources¶
Get Events¶
Export Diagnostics¶
# Use kindplane diagnostics
kindplane diagnostics > diagnostics-report.txt
# Or create a manual diagnostics bundle
mkdir -p diagnostics
kubectl get providers -o yaml > diagnostics/providers.yaml
kubectl get pods -A -o yaml > diagnostics/pods.yaml
kindplane logs --component crossplane --tail 500 > diagnostics/crossplane.log
kindplane logs --component providers --tail 500 > diagnostics/providers.log
Getting Help¶
If you're still stuck:
- Check the GitHub Issues
- Search for similar problems
- Open a new issue with:
- kindplane version
- Configuration file (redact secrets)
- Full error output
- Steps to reproduce