vCluster (vind) Management
Manage vCluster (virtual Kubernetes clusters) instances using vind. Use when creating, managing, or operating lightweight virtual clusters for development, testing, or multi-tenanc…
Rohit Ghumare
@rohitg00
Install
$ openclaw skills install @rohitg00/k8s-vindvCluster (vind) Management
Manage virtual Kubernetes clusters using kubectl-mcp-server's vind tools (14 tools).
Requires the
vindtoolset: start kubectl-mcp-server with--toolsets default,vind(orMCP_TOOLSETS=default,vind).
vCluster enables running fully functional Kubernetes clusters as lightweight workloads inside a host cluster, combining multi-tenancy with strong isolation.
When to Apply
Use this skill when:
- User mentions: "vCluster", "vind", "virtual cluster", "lightweight cluster"
- Operations: creating dev environments, multi-tenant isolation, ephemeral clusters
- Keywords: "virtual Kubernetes", "dev cluster", "pause cluster", "tenant isolation"
Priority Rules
| Priority | Rule | Impact | Tools |
|---|---|---|---|
| 1 | Detect vCluster CLI first | CRITICAL | detect_ecosystem |
| 2 | Check cluster status before operations | HIGH | vind_status |
| 3 | Connect before kubectl operations | HIGH | vind_connect |
| 4 | Pause unused clusters to save resources | MEDIUM | vind_pause |
Quick Reference
| Task | Tool | Example |
|---|---|---|
| Detect vCluster | detect_ecosystem | detect_ecosystem() |
| List clusters | vind_list_clusters | vind_list_clusters() |
| Create cluster | vind_create_cluster | vind_create_cluster(name) |
| Connect to cluster | vind_connect | vind_connect(name) |
Prerequisites
- vCluster CLI: Required for all vind tools
curl -L -o vcluster "https://github.com/loft-sh/vcluster/releases/latest/download/vcluster-$(uname -s | tr '[:upper:]' '[:lower:]')-$(uname -m)" chmod +x vcluster && sudo mv vcluster /usr/local/bin/
Check Installation
detect_ecosystem()
List Clusters
vind_list_clusters()
Get Cluster Status
vind_status(name="my-vcluster", namespace="vcluster")
Get Kubeconfig
vind_get_kubeconfig(name="my-vcluster", namespace="vcluster")
Status
vind_status(name="my-vcluster", namespace="vcluster")
Cluster Lifecycle
Create Cluster
vind_create_cluster(name="dev-cluster")
vind_create_cluster(
name="dev-cluster",
namespace="dev",
kubernetes_version="v1.29.0",
connect=True
)
vind_create_cluster(
name="custom-cluster",
set_values="sync.toHost.pods.enabled=true,sync.toHost.services.enabled=true"
)
Delete Cluster
vind_delete_cluster(name="dev-cluster")
vind_delete_cluster(
name="dev-cluster",
namespace="dev",
delete_namespace=True
)
Pause Cluster (Save Resources)
vind_pause(name="dev-cluster")
Resume Cluster
vind_resume(name="dev-cluster")
Connect/Disconnect
Connect to Cluster
vind_connect(name="dev-cluster")
vind_connect(
name="dev-cluster",
namespace="dev",
kube_config="~/.kube/vcluster-config"
)
Disconnect from Cluster
vind_disconnect()
Upgrade Cluster
vind_upgrade(
name="dev-cluster",
kubernetes_version="v1.30.0"
)
vind_upgrade(
name="dev-cluster",
values_file="new-values.yaml"
)
Describe Cluster
vind_describe(name="dev-cluster")
Development Workflow
Quick Dev Environment
vind_create_cluster(name="dev", connect=True)
kubectl_apply(manifest="""
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
namespace: default
spec:
replicas: 1
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: app
image: nginx:alpine
""")
Multi-Tenant Setup
vind_create_cluster(name="team-a", namespace="team-a-vcluster")
vind_create_cluster(name="team-b", namespace="team-b-vcluster")
vind_list_clusters()
Resource Management
vind_pause(name="dev")
vind_resume(name="dev")
Docker-Specific Configuration
For vCluster in Docker (vind) deployments, use --set values:
vind_create_cluster(
name="docker-cluster",
set_values="experimental.docker.network=my-network,experimental.docker.ports[0].containerPort=80"
)
Troubleshooting
Cluster Not Starting
1. detect_ecosystem()
2. vind_status(name="my-cluster")
3. vind_describe(name="my-cluster")
Connection Issues
1. vind_disconnect()
2. vind_connect(name="my-cluster")
3. vind_get_kubeconfig(name="my-cluster")
Resource Issues
1. vind_pause(name="unused-cluster")
2. vind_delete_cluster(name="old-cluster", delete_namespace=True)
CLI Installation
Install vCluster CLI:
curl -L -o vcluster "https://github.com/loft-sh/vcluster/releases/latest/download/vcluster-$(uname -s | tr '[:upper:]' '[:lower:]')-$(uname -m)"
chmod +x vcluster
sudo mv vcluster /usr/local/bin/
vcluster version
Related Skills
- k8s-multicluster - Multi-cluster management
- k8s-helm - Helm chart operations
- k8s-operations - kubectl operations
Top skills in this category
API Gateway
@byungkyuCall third-party APIs through the Maton gateway, which injects the credential for an app the user has already connected. Use this skill when the user names a connected app and a concrete action in it - read a mailbox, query a CRM, file an issue, update a spreadsheet, etc.
Marketing Mode
@thesethroseMarketing Mode combines 23 comprehensive marketing skills covering strategy, psychology, content, SEO, conversion optimization, and paid growth. Use when users need marketing strategy, copywriting, SEO help, conversion optimization, paid advertising, or any marketing tactic.
Blogwatcher
@steipeteMonitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.
Marketing Skills
@jchopard69Access 23 marketing modules offering checklists, frameworks, and ready-to-use deliverables for CRO, SEO, copywriting, analytics, launches, ads, and social me...
diagram-generator
@matthewyinGenerate and edit diagrams with the mcp-diagram-generator MCP server. Use this skill for new diagrams, existing .drawio/.mmd/.excalidraw edits, network topology, architecture, flowchart, swimlane, sequence, class, ER, and Excalidraw whiteboard work. Always use this skill when the user asks to draw,