Professional CLI tool for Kubernetes cluster management, analysis, and lifecycle control
Extract, analyze, and version control your entire Kubernetes cluster with Git integration
Quick Start • Documentation • Examples • Contributing
Kalco is a CLI tool designed for comprehensive Kubernetes cluster analysis, resource extraction, and lifecycle management. Kalco provides automated cluster backup and change tracking capabilities through a clean interface.
Manage multiple Kubernetes clusters through a unified interface:
- Multi-Cluster Support - Handle dev, staging, and production environments
- Configuration Persistence - Store cluster settings and output directories
- Team Collaboration - Share and import context configurations
- Environment Isolation - Separate configurations for different clusters
Export cluster resources with professional organization:
- Structured Output - Intuitive directory organization by namespace and resource type
- Complete Coverage - Native Kubernetes resources and Custom Resource Definitions (CRDs)
- Clean YAML - Metadata optimization for re-application
- Context-Based Configuration - Output directory automatically derived from active context
Automatic version control for cluster changes:
- Repository Initialization - Automatic Git setup for new export directories
- Change Tracking - Commit history with timestamp-based or custom messages
- Remote Push - Optional automatic push to remote repositories
- Branch Management - Support for main/master branch conventions
Professional change analysis reports:
- Change Tracking - Detailed analysis of resource modifications
- Git Integration - Complete commit history and diff information
- Professional Formatting - Clean Markdown reports with actionable insights
Package Managers (recommended):
# Homebrew
brew install graz-dev/tap/kalco
# Build from source
git clone https://github.com/graz-dev/kalco.git
cd kalco && go build -o kalcoLinux/macOS:
curl -fsSL https://raw.githubusercontent.com/graz-dev/kalco/master/scripts/install.sh | bashWindows (PowerShell):
iwr -useb https://raw.githubusercontent.com/graz-dev/kalco/master/scripts/install.ps1 | iex-
Create a Context:
kalco context set production \ --kubeconfig ~/.kube/prod-config \ --output ./prod-exports \ --description "Production cluster for customer workloads"
-
Export Cluster Resources:
kalco export --git-push --commit-message "Weekly backup"
-
Load Existing Context:
kalco context load ./existing-kalco-export
| Command | Description | Usage |
|---|---|---|
kalco context |
Manage cluster contexts | kalco context set/list/use/load |
kalco export |
Export cluster resources | kalco export [flags] |
kalco completion |
Shell completion | kalco completion bash|zsh|fish|powershell |
kalco version |
Version information | kalco version |
Read the docs for more details.
We welcome contributions to improve Kalco:
- Bug Reports: Create an issue
- Feature Requests: Create an issue
- Code Contributions: Fork, develop, and submit pull requests
- Documentation: Help improve guides and examples
This project is licensed under the MIT License - see the LICENSE file for details.
- Documentation: https://graz-dev.github.io/kalco
- Issues: GitHub Issues
Built with ❤️ for the Kubernetes community