QAOps Performance
HALF-DAY WORKSHOP
Key Concepts for Scalability in K8s
Storage optimisation plays a vital role in Kubernetes performance, particularly for stateful applications and choosing the right Storage Class and StatefulSet configurations help prevent I/O bottlenecks and enhance data persistence reliability. Monitoring and profiling are essential for identifying and resolving performance bottlenecks. Tools like Prometheus and Grafana provide visibility into cluster health, while profiling techniques help pinpoint inefficiencies in application code and infrastructure. Optimising Kubernetes requires a holistic approach—balancing resource allocation, scaling policies, storage considerations, and continuous monitoring. Applying all these best practices ensures high availability, improved performance, and cost-effective Kubernetes deployments.
The goal of this workshop, with Almudena Vivanco, is to understand and apply best practices for tuning and optimising the performance of Kubernetes clusters and deployed applications. You will learn how to configure resource management effectively to ensure efficient CPU and memory usage, preventing waste and avoiding performance degradation.
Additionally, the workshop will cover Kubernetes scalability mechanisms, including Horizontal and Vertical Pod Autoscalers (HPA & VPA), affinity rules, and storage optimisations. You will gain hands-on experience in monitoring and profiling Kubernetes workloads using tools like Prometheus and Grafana to identify bottlenecks and enhance overall system reliability and efficiency.
By the end of the workshop, you will be equipped with practical knowledge to fine-tune Kubernetes environments, improving resource utilisation, resilience, and application performance in both local and cloud-based deployments.
What we’ll cover
🔑 Scalability Concepts in K8s
- Resource Requests and Limits
- HPA (Horizontal Pod Autoscaler)
- VPA (Vertical Pod Autoscaler)
- Node/Pod Affinity
- Storage
- Probes: Readiness, Liveness, and Startup
- Monitoring and Profiling
🧪 Lab
- Configure Resource Requests and Limits for pods
- Associated issues: CPU Throttling
- Implement HPA
- Example using KEDA with Prometheus
- Pod Disruption Budget
- Define VPA
- Configure Node and Pod Affinity & Anti-Affinity for Avalanche testing
- Optimize Storage
- StatefulSet and Storage Classes
- Implement and configure Monitoring and Profiling
- Install Prometheus and Grafana for monitoring
- Collect and analyze performance metrics to identify bottlenecks
What you’ll learn
From this workshop you will learn:
What you’ll need
Bring your own laptop, the tests will be performed with K6 locally and the SUT will be a local K8s (minikube with two nodes) or http://killercoda.com on the Internet.
Workshop details

Almudena Vivanco
Almudena is of a mathematical vocation and has been dedicated to performance engineering for 18 years. Almudena has worked on projects with high traffic and high availability from online television platforms, job portals, security proxies, and now a European retailer. For 20 years, she has been actively involved in the dissemination of DevOps and performance culture in Spain. She is also an activist for the integration of female talent in STEM.