Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/bgdnvk/clanker/llms.txt

Use this file to discover all available pages before exploring further.

The k8s command provides comprehensive Kubernetes cluster management and natural language querying capabilities for EKS, GKE, and kubeadm clusters.

Usage

clanker k8s [subcommand] [flags]

Subcommands

Create commands

# Create an EKS cluster
clanker k8s create eks my-cluster --nodes 2 --node-type t3.small

# Show plan only (don't create)
clanker k8s create eks my-cluster --plan

Management commands

# List EKS clusters
clanker k8s list eks

# List GKE clusters
clanker k8s list gke --gcp-project my-project

# List kubeadm clusters
clanker k8s list kubeadm

Deployment commands

# Deploy an application
clanker k8s deploy nginx --name my-nginx --port 80

# Deploy with replicas
clanker k8s deploy redis --replicas 3 --namespace cache

# Show deployment plan
clanker k8s deploy postgres --plan

Resource commands

# Get all resources from a cluster
clanker k8s resources --cluster my-cluster

# Output as YAML
clanker k8s resources --cluster my-cluster --output yaml

# Get resources from all clusters
clanker k8s resources

Logs commands

# Get pod logs
clanker k8s logs my-pod

# Get logs from specific container
clanker k8s logs my-pod -c my-container

# Follow logs
clanker k8s logs my-pod -f

# Get last 100 lines
clanker k8s logs my-pod --tail 100

# Include timestamps
clanker k8s logs my-pod --timestamps

Stats commands

# Get node metrics
clanker k8s stats nodes

# Get pod metrics
clanker k8s stats pods -n kube-system

# Get metrics for all namespaces
clanker k8s stats pods -A

# Get pod metrics sorted by memory
clanker k8s stats pods --sort-by memory

# Get specific pod metrics
clanker k8s stats pod my-pod

# Get cluster-wide metrics
clanker k8s stats cluster

Ask command

# Ask natural language questions
clanker k8s ask "how many pods are running"

clanker k8s ask --cluster test-cluster \
  "show me all deployments"

clanker k8s ask --gcp \
  --gcp-project my-project \
  --cluster my-gke-cluster \
  "show me all pods"

clanker k8s ask "which pods are using the most memory"

clanker k8s ask "why is my pod crashing"

Create EKS flags

--nodes
integer
default:"1"
Number of worker nodes
--node-type
string
default:"t3.small"
EC2 instance type for nodes
--version
string
default:"1.29"
Kubernetes version
--plan
boolean
default:"false"
Show plan without applying
--apply
boolean
default:"false"
Apply the plan (default prompts for confirmation)

Create GKE flags

--gcp-project
string
required
GCP project ID
--gcp-region
string
default:"us-central1"
GCP region for the cluster
--nodes
integer
default:"1"
Number of worker nodes
--node-type
string
default:"e2-standard-2"
GCE machine type for nodes
--version
string
Kubernetes version (default: GKE default)
--preemptible
boolean
default:"false"
Use preemptible VMs for nodes
--plan
boolean
default:"false"
Show plan without applying
--apply
boolean
default:"false"
Apply the plan

Create kubeadm flags

--workers
integer
default:"1"
Number of worker nodes
--node-type
string
default:"t3.small"
EC2 instance type for nodes
--key-pair
string
AWS key pair name for SSH access (auto-creates if not exists)
--ssh-key
string
Path to SSH private key (default: ~/.ssh/<key-pair>)
--version
string
default:"1.29"
Kubernetes version
--plan
boolean
default:"false"
Show plan without applying
--apply
boolean
default:"false"
Apply the plan

Deploy flags

--name
string
Deployment name (default: image name)
--port
integer
default:"80"
Container port to expose
--replicas
integer
default:"1"
Number of replicas
--namespace
string
default:"default"
Kubernetes namespace
--plan
boolean
default:"false"
Show plan without applying
--apply
boolean
default:"false"
Apply the plan

Resources flags

--cluster
string
Cluster name (optional, uses current context if not specified)
--output
string
default:"json"
Output format (json or yaml)

Logs flags

--container
string
Container name
--follow
boolean
default:"false"
Follow log output
--previous
boolean
default:"false"
Get logs from previous terminated container
--tail
integer
default:"100"
Number of lines from end of logs
--since
string
Show logs since duration (e.g., 1h, 30m)
--timestamps
boolean
default:"false"
Include timestamps in output
--all-containers
boolean
default:"false"
Get logs from all containers in pod
--namespace
string
default:"default"
Namespace

Stats flags

--sort-by
string
Sort by cpu or memory
--output
string
default:"table"
Output format (table, json, or yaml)
--namespace
string
default:"default"
Namespace for pod metrics
--all-namespaces
boolean
default:"false"
Get metrics from all namespaces
--containers
boolean
default:"false"
Show container-level metrics for pod

Ask flags

--cluster
string
Kubernetes cluster name (EKS or GKE cluster name)
--profile
string
AWS profile for EKS clusters
--kubeconfig
string
Path to kubeconfig file (default: ~/.kube/config)
--context
string
kubectl context to use (overrides --cluster)
--namespace
string
Default namespace for queries (default: all namespaces)
--ai-profile
string
AI profile to use for LLM queries
--debug
boolean
default:"false"
Enable debug output
--gcp
boolean
default:"false"
Use GKE cluster instead of EKS
--gcp-project
string
GCP project ID for GKE clusters
--gcp-region
string
GCP region for GKE clusters

Examples

Create and manage EKS cluster

# Create cluster
clanker k8s create eks prod-cluster \
  --nodes 3 \
  --node-type t3.medium \
  --version 1.29

# Deploy application
clanker k8s deploy nginx --name web-server --port 80

# Get cluster resources
clanker k8s resources --cluster prod-cluster

# Query with natural language
clanker k8s ask --cluster prod-cluster "show me all deployments"

# Delete cluster
clanker k8s delete eks prod-cluster

Monitor cluster health

# Get node metrics
clanker k8s stats nodes --sort-by memory

# Get pod metrics across all namespaces
clanker k8s stats pods -A --sort-by cpu

# Get cluster-wide metrics
clanker k8s stats cluster -o json

# Check specific pod
clanker k8s stats pod my-app --containers

# Get logs with errors
clanker k8s logs my-app --tail 500 | grep ERROR

See also