Your Kubernetes cookbook for cluster management and operations.
Kitchen is a command-line tool designed to simplify Kubernetes cluster management. It provides easy-to-use commands for adding nodes, managing clusters, and performing common K8s operations.
Install using Poetry:
poetry installCheck if you have the required tools:
kitchen setupView available recipes:
kitchen cookbook# Check cluster status
kitchen k8s status
# List all nodes
kitchen k8s nodes list# Add a new node with Tailscale (recommended)
kitchen k8s nodes add worker-node --tailscale
# Add a node using Tailscale IP
kitchen k8s nodes add 100.64.1.100 --tailscale --name worker-1
# Add current machine as a node
kitchen k8s nodes add --localhost
# Add a node with password authentication
kitchen k8s nodes add 192.168.1.100 --password --user ubuntu
# Add a node with SSH key
kitchen k8s nodes add 192.168.1.100 \
--key ~/.ssh/id_rsa \
--user root \
--name worker-2
# Dry run to see what would happen
kitchen k8s nodes add 192.168.1.100 --dry-run --tailscaleKitchen integrates with Tailscale for secure, mesh networking between Kubernetes nodes:
Benefits:
- 🔒 Secure: End-to-end encrypted mesh network
- 🌐 Easy: No complex firewall rules or VPN setup
- 📱 Accessible: Access your cluster from anywhere
- 🏷️ Named: Use friendly hostnames instead of IPs
Setup:
- Install Tailscale on all machines:
curl -fsSL https://tailscale.com/install.sh | sh - Connect to your Tailnet:
tailscale up - Use Kitchen with Tailscale hostnames:
kitchen k8s nodes add worker-node --tailscale
Authentication Options:
--key ~/.ssh/id_rsa- SSH key authentication (default)--password- Password authentication (interactive)--localhost- Add current machine (no SSH needed)
# Run any command
kitchen run kubectl get pods
# Show Kitchen version
kitchen version
# View the cookbook
kitchen cookbookKitchen requires these tools to be installed:
Required:
kubectl- Kubernetes command-line toolkubeadm- Kubernetes cluster managementdocker- Container runtime
Recommended:
tailscale- Secure mesh networking (highly recommended)ssh- Remote access to nodes
Run kitchen setup to check your installation and see Tailscale status.
Install dependencies:
poetry installRun the CLI in development:
poetry run kitchen --help- ✅ Node addition with automated setup
- ✅ Cluster status monitoring
- 🚧 Cluster creation from scratch
- 🚧 Node removal and cleanup
- 🚧 Cluster backup and restore
- 🚧 Multi-cluster management
Kitchen is designed to be your personal Kubernetes cookbook. Feel free to extend it with your own recipes and automation!