k8s-autoscaling
Configures horizontal and vertical pod autoscaling, including event-driven scaling with KEDA.
Install
mkdir -p .claude/skills/k8s-autoscaling && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/3554" && unzip -o skill.zip -d .claude/skills/k8s-autoscaling && rm skill.zipInstalls to .claude/skills/k8s-autoscaling
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Configure Kubernetes autoscaling with HPA, VPA, and KEDA. Use for horizontal/vertical pod autoscaling, event-driven scaling, and capacity management.Key capabilities
- →Configure HPA for CPU-based scaling
- →Implement event-driven scaling with KEDA
- →Right-size resource requests using VPA
- →Troubleshoot HPA and KEDA scaling issues
- →Manage capacity with ScaledObjects and ScaledJobs
How it works
The skill provides tools to define HPA, VPA, and KEDA resources, allowing users to apply them via kubectl to manage pod replicas based on CPU, memory, or custom event metrics.
Inputs & outputs
When to use k8s-autoscaling
- →Configure HPA for CPU-based scaling
- →Set up KEDA for event-driven scaling
- →Check VPA resource recommendations
About this skill
Kubernetes Autoscaling
Comprehensive autoscaling using HPA, VPA, and KEDA with kubectl-mcp-server tools.
When to Apply
Use this skill when:
- User mentions: "HPA", "VPA", "KEDA", "autoscale", "scale to zero"
- Operations: configuring autoscaling, checking scaling status
- Keywords: "scale automatically", "event-driven", "right-size"
Priority Rules
| Priority | Rule | Impact | Tools |
|---|---|---|---|
| 1 | Verify metrics-server for HPA | CRITICAL | get_resource_metrics |
| 2 | Set resource requests before HPA | CRITICAL | describe_pod |
| 3 | Use KEDA for scale-to-zero | HIGH | keda_scaledobjects_list_tool |
| 4 | Check VPA recommendations | MEDIUM | get_resource_recommendations |
Quick Reference
| Task | Tool | Example |
|---|---|---|
| List KEDA ScaledObjects | keda_scaledobjects_list_tool | keda_scaledobjects_list_tool(namespace) |
| Get ScaledObject | keda_scaledobject_get_tool | keda_scaledobject_get_tool(name, namespace) |
| List ScaledJobs | keda_scaledjobs_list_tool | keda_scaledjobs_list_tool(namespace) |
| Check KEDA | keda_detect_tool | keda_detect_tool() |
HPA (Horizontal Pod Autoscaler)
Basic CPU-based scaling:
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: my-app-hpa
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: my-app
minReplicas: 2
maxReplicas: 10
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 70
Apply and verify:
kubectl_apply(hpa_yaml, namespace)
get_hpa(namespace)
VPA (Vertical Pod Autoscaler)
Right-size resource requests:
apiVersion: autoscaling.k8s.io/v1
kind: VerticalPodAutoscaler
metadata:
name: my-app-vpa
spec:
targetRef:
apiVersion: apps/v1
kind: Deployment
name: my-app
updatePolicy:
updateMode: "Auto"
KEDA (Event-Driven Autoscaling)
Detect KEDA Installation
keda_detect_tool()
List ScaledObjects
keda_scaledobjects_list_tool(namespace)
keda_scaledobject_get_tool(name, namespace)
List ScaledJobs
keda_scaledjobs_list_tool(namespace)
Trigger Authentication
keda_triggerauths_list_tool(namespace)
keda_triggerauth_get_tool(name, namespace)
KEDA-Managed HPAs
keda_hpa_list_tool(namespace)
See KEDA-TRIGGERS.md for trigger configurations.
Common KEDA Triggers
Queue-Based Scaling (AWS SQS)
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
name: sqs-scaler
spec:
scaleTargetRef:
name: queue-processor
minReplicaCount: 0
maxReplicaCount: 100
triggers:
- type: aws-sqs-queue
metadata:
queueURL: https://sqs.region.amazonaws.com/...
queueLength: "5"
Cron-Based Scaling
triggers:
- type: cron
metadata:
timezone: America/New_York
start: 0 8 * * 1-5
end: 0 18 * * 1-5
desiredReplicas: "10"
Prometheus Metrics
triggers:
- type: prometheus
metadata:
serverAddress: http://prometheus:9090
metricName: http_requests_total
query: sum(rate(http_requests_total{app="myapp"}[2m]))
threshold: "100"
Scaling Strategies
| Strategy | Tool | Use Case |
|---|---|---|
| CPU/Memory | HPA | Steady traffic patterns |
| Custom metrics | HPA v2 | Business metrics |
| Event-driven | KEDA | Queue processing, cron |
| Vertical | VPA | Right-size requests |
| Scale to zero | KEDA | Cost savings, idle workloads |
Cost-Optimized Autoscaling
Scale to Zero with KEDA
Reduce costs for idle workloads:
keda_scaledobjects_list_tool(namespace)
Right-Size with VPA
Get recommendations and apply:
get_resource_recommendations(namespace)
Troubleshooting
HPA Not Scaling
get_hpa(namespace)
get_pod_metrics(name, namespace)
describe_pod(name, namespace)
KEDA Not Triggering
keda_scaledobject_get_tool(name, namespace)
get_events(namespace)
Common Issues
| Symptom | Check | Resolution |
|---|---|---|
| HPA unknown | Metrics server | Install metrics-server |
| KEDA no scale | Trigger auth | Check TriggerAuthentication |
| VPA not updating | Update mode | Set updateMode: Auto |
| Scale down slow | Stabilization | Adjust stabilizationWindowSeconds |
Best Practices
- Always Set Resource Requests - HPA requires requests to calculate utilization
- Use Multiple Metrics - Combine CPU + custom metrics for accuracy
- Stabilization Windows - Prevent flapping with scaleDown stabilization
- Scale to Zero Carefully - Consider cold start time
Related Skills
- k8s-cost - Cost optimization
- k8s-troubleshoot - Debug scaling issues
When not to use it
- →When metrics-server is missing for HPA
- →When stabilization windows are not configured for flapping workloads
Prerequisites
Limitations
- →HPA requires resource requests to be set
- →Scale-down stabilization may be slow
How it compares
Unlike manual YAML editing, this skill provides specific tools to verify metrics, list KEDA objects, and check VPA recommendations to ensure accurate scaling.
Compared to similar skills
k8s-autoscaling side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| k8s-autoscaling (this skill) | 1 | 6mo | No flags | Intermediate |
| linkerd-patterns | 6 | 5mo | Review | Advanced |
| storage-networking | 6 | 7mo | Review | Advanced |
| k8s-helm | 8 | 6mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by rohitg00
View all by rohitg00 →You might also like
linkerd-patterns
wshobson
Implement Linkerd service mesh patterns for lightweight, security-focused service mesh deployments. Use when setting up Linkerd, configuring traffic policies, or implementing zero-trust networking with minimal overhead.
storage-networking
pluginagentmarketplace
Master Kubernetes storage management and networking architecture. Learn persistent storage, network policies, service discovery, and ingress routing.
k8s-helm
rohitg00
Manage Helm charts, releases, and repositories. Use for Helm installations, upgrades, rollbacks, chart development, and release management.
kubernetes-architect
sickn33
Expert Kubernetes architect specializing in cloud-native infrastructure, advanced GitOps workflows (ArgoCD/Flux), and enterprise container orchestration. Masters EKS/AKS/GKE, service mesh (Istio/Linkerd), progressive delivery, multi-tenancy, and platform engineering. Handles security, observability, cost optimization, and developer experience. Use PROACTIVELY for K8s architecture, GitOps implementation, or cloud-native platform design.
gitops-workflow
sickn33
Implement GitOps workflows with ArgoCD and Flux for automated, declarative Kubernetes deployments with continuous reconciliation. Use when implementing GitOps practices, automating Kubernetes deployments, or setting up declarative infrastructure management.
devops-iac-engineer
davila7
Implements infrastructure as code using Terraform, Kubernetes, and cloud platforms. Designs scalable architectures, CI/CD pipelines, and observability solutions. Provides security-first DevOps practices and site reliability engineering guidance.