Multi-Cluster Kubernetes Management
Cross-cluster operations and context management using kubectl-mcp-server's multi-cluster support.
Context Management
List Available Contexts
code
list_contexts_tool()
View Current Context
code
kubeconfig_view() # Shows sanitized kubeconfig
Switch Context
CLI: kubectl-mcp-server context <context-name>
Cross-Cluster Operations
All kubectl-mcp-server tools support the context parameter:
python
# Get pods from production cluster get_pods(namespace="default", context="production-cluster") # Get pods from staging cluster get_pods(namespace="default", context="staging-cluster")
Common Multi-Cluster Patterns
Compare Environments
code
# Compare deployment across clusters
compare_namespaces(
namespace1="production",
namespace2="staging",
resource_type="deployment",
context="production-cluster"
)
Parallel Queries
Query multiple clusters simultaneously:
code
# Production cluster get_pods(namespace="app", context="prod-us-east") get_pods(namespace="app", context="prod-eu-west") # Development cluster get_pods(namespace="app", context="development")
Cross-Cluster Health Check
code
# Check all clusters
for context in ["prod-1", "prod-2", "staging"]:
get_nodes(context=context)
get_pods(namespace="kube-system", context=context)
Cluster API (CAPI) Management
For managing cluster lifecycle:
List Managed Clusters
code
capi_clusters_list_tool(namespace="capi-system")
Get Cluster Details
code
capi_cluster_get_tool(name="prod-cluster", namespace="capi-system")
Get Workload Cluster Kubeconfig
code
capi_cluster_kubeconfig_tool(name="prod-cluster", namespace="capi-system")
Machine Management
code
capi_machines_list_tool(namespace="capi-system") capi_machinedeployments_list_tool(namespace="capi-system")
Scale Cluster
code
capi_machinedeployment_scale_tool(
name="prod-cluster-md-0",
namespace="capi-system",
replicas=5
)
See CONTEXT-SWITCHING.md for detailed patterns.
Multi-Cluster Helm
Deploy charts to specific clusters:
code
install_helm_chart(
name="nginx",
chart="bitnami/nginx",
namespace="web",
context="production-cluster"
)
list_helm_releases(
namespace="web",
context="staging-cluster"
)
Multi-Cluster GitOps
Flux Across Clusters
code
flux_kustomizations_list_tool(
namespace="flux-system",
context="cluster-1"
)
flux_reconcile_tool(
kind="kustomization",
name="apps",
namespace="flux-system",
context="cluster-2"
)
ArgoCD Across Clusters
code
argocd_apps_list_tool(namespace="argocd", context="management-cluster")
Federation Patterns
Secret Synchronization
code
# Read from source cluster get_secrets(namespace="app", context="source-cluster") # Apply to target cluster (via manifest) apply_manifest(secret_manifest, namespace="app", context="target-cluster")
Cross-Cluster Service Discovery
With Cilium ClusterMesh or Istio multi-cluster:
code
cilium_nodes_list_tool(context="cluster-1") istio_proxy_status_tool(context="cluster-2")
Best Practices
- •
Naming Convention: Use descriptive context names
- •
prod-us-east-1,staging-eu-west-1
- •
- •
Access Control: Different kubeconfigs per environment
- •Prod: Read-only for most users
- •Dev: Full access for developers
- •
Always Specify Context: Avoid accidental cross-cluster operations
code# Explicit is better get_pods(namespace="app", context="production")
- •
Cluster Groups: Organize by purpose
- •Production:
prod-* - •Staging:
staging-* - •Development:
dev-*
- •Production:
Related Skills
- •k8s-troubleshoot - Debug across clusters
- •k8s-gitops - GitOps multi-cluster