Autoscaling
- Introduction
- Cluster Autoscaler Kubernetes Tool
- HPA and VPA
- Cluster Autoscaler and Helm
- KEDA Kubernetes-based Event-Driven Autoscaler
- Cluster Autoscaler and DockerHub
- Cluster Autoscaler in GKE, EKS, AKS and DOKS
- Cluster Autoscaler in OpenShift
- Kubernetes Load Testing and High Load Tuning
- Tweets
Introduction
- levelup.gitconnected.com: Effects of Docker Image Size on AutoScaling w.r.t Single and Multi-Node Kube Cluster
- infracloud.io: 3 Autoscaling Projects to Optimise Kubernetes Costs Three autoscaling use cases:
- Autoscaling Event-driven workloads
- Autoscaling real-time workloads
- Autoscaling Nodes/Infrastructure
- blog.scaleway.com: Understanding Kubernetes Autoscaling
- infracloud.io: Kubernetes Autoscaling with Custom Metrics (updated) π
- sysdig.com: Kubernetes pod autoscaler using custom metrics
- learnk8s.io: Architecting Kubernetes clusters β choosing the best autoscaling strategy π How to configure multiple autoscalers in Kubernetes to minimise scaling time and found out that 4 factors affect scaling:
- HPA reaction time.
- CA reaction time.
- Node provisioning time.
- Pod creation time.
- thenewstack.io: Reduce Kubernetes Costs Using Autoscaling Mechanisms
- cast.ai: Guide to Kubernetes autoscaling for cloud cost optimization π
- thenewstack.io: Scaling Microservices on Kubernetes π
- Horizontally scaling a monolith is much more difficult; and we simply canβt independently scale any of the βpartsβ of a monolith. This isnβt ideal, because it might only be a small part of the monolith that causes the performance problem. Yet, we would have to vertically scale the entire monolith to fix it. Vertically scaling a large monolith can be an expensive proposition.
- Instead, with microservices, we have numerous options for scaling. For instance, we can independently fine-tune the performance of small parts of our system to eliminate bottlenecks and achieve the right mix of performance outcomes.
- cloud.ibm.com: Tutorial - Scalable webapp π
- containiq.com: Kubernetes Autoscaling: A Beginners Guide. Getting Started + Examples
- medmouine/Kubernetes-autoscaling-poster: Kubernetes autoscaling poster [PDF] π
Cluster Autoscaler Kubernetes Tool
- kubernetes.io: Cluster Management - Resizing a cluster
- github.com/kubernetes: Kubernetes Cluster Autoscaler
- Kubernetes Autoscaling in Production: Best Practices for Cluster Autoscaler, HPA and VPA In this article we will take a deep dive into Kubernetes autoscaling tools including the cluster autoscaler, the horizontal pod autoscaler and the vertical pod autoscaler. We will also identify best practices that developers, DevOps and Kubernetes administrators should follow when configuring these tools.
- gitconnected.com: Kubernetes Autoscaling 101: Cluster Autoscaler, Horizontal Pod Autoscaler, and Vertical Pod Autoscaler
- packet.com: Kubernetes Cluster Autoscaler
- itnext.io: Kubernetes Cluster Autoscaler: More than scaling out
- cloud.ibm.com: Containers Troubleshoot Cluster Autoscaler
- platform9.com: Kubernetes Autoscaling Options: Horizontal Pod Autoscaler, Vertical Pod Autoscaler and Cluster Autoscaler
- banzaicloud.com: Autoscaling Kubernetes clusters
- tech.deliveryhero.com: Dynamically overscaling a Kubernetes cluster with cluster-autoscaler and Pod Priority
- medium: Build Kubernetes Autoscaling for Cluster Nodes and Application Pods π
- Auto-Scaling Your Kubernetes Workloads (K8s) π
- medium: Cluster Autoscaler in Kubernetes
- itnext.io: Kubernetes Resources and Autoscaling β From Basics to Greatness π
- kubedex.com: autoscaling π
- chrisedrego.medium.com: Kubernetes AutoScaling Series: Cluster AutoScaler π
HPA and VPA
- HPA: Horizontal Pod Autoscaler
- VPA: Vertical Pod Autoscaler
- returngis.net: Escalado vertical de tus pods en Kubernetes con VerticalPodAutoscaler
- medium: Build Kubernetes Autoscaling for Cluster Nodes and Application Pods Via the Cluster Autoscaler, Horizontal Pod Autoscaler, and Vertical Pod Autoscaler
- itnext.io: Horizontal Pod Autoscaling with Custom Metric from Different Namespace
- Kubernetes autoscaling with Istio metrics π Scaling based on traffic is not something new to Kubernetes, an ingress controllers such as NGINX can expose Prometheus metrics for HPA. The difference in using Istio is that you can autoscale backend services as well, apps that are accessible only from inside the mesh.
- medium: ⅓ Autoscaling in Kubernetes: A Primer on Autoscaling
- around25.com: Horizontal Pod Autoscaler in Kubernetes π
- superawesome.com: Scaling pods with HPA using custom metrics. How we scale our kid-safe technology using Kubernetes π
- velotio.com: Autoscaling in Kubernetes using HPA and VPA
- kubectl-vpa Tool to manage VPAs (vertical-pod-autoscaler) resources in a kubernetes-cluster
- itnext.io: K8s Vertical Pod Autoscaling π
- czakozoltan08.medium.com: Stupid Simple Scalability
- sysdig.com: Trigger a Kubernetes HPA with Prometheus metrics Using Keda to query #prometheus in order to automatically create a Kubernetes HPA
- cloudnatively.com: Understanding Horizontal Pod Autoscaling
- blog.px.dev: Horizontal Pod Autoscaling with Custom Metrics in Kubernetes
- awstip.com: Kubernetes HPA HPA, the short form Horizontal pod autoscaling, is nothing but a piece of software that dynamically scales the pods based on thresholds like CPU, Memory, HTTP requests (custom metrics).
Cluster Autoscaler and Helm
- hub.helm.sh: cluster-autoscaler The cluster autoscaler scales worker nodes within an AWS autoscaling group (ASG) or Spotinst Elastigroup.
KEDA Kubernetes-based Event-Driven Autoscaler
- keda.sh KEDA is a Kubernetes-based Event Driven Autoscaler. With KEDA, you can drive the scaling of any container in Kubernetes based on the number of events needing to be processed.
- medium.com/backstagewitharchitects: How Autoscaling Works in Kubernetes? Why You Need To Start Using KEDA?
- partlycloudy.blog: Horizontal Autoscaling in Kubernetes #3 β KEDA
- thenewstack.io: CNCF KEDA 2.0 Scales up Event-Driven Programming on Kubernetes
Cluster Autoscaler and DockerHub
Cluster Autoscaler in GKE, EKS, AKS and DOKS
- Amazon Web Services: EKS Cluster Autoscaler
- Azure: AKS Cluster Autoscaler
- Google Cloud Platform: GKE Cluster Autoscaler
- DigitalOcean Kubernetes: DOKS Cluster Autoscaler
Cluster Autoscaler in OpenShift
- OpenShift 3.11: Configuring the cluster auto-scaler in AWS
- OpenShift 4.4: Applying autoscaling to an OpenShift Container Platform cluster
Kubernetes Load Testing and High Load Tuning
- itnext.io: Kubernetes: load-testing and high-load tuning β problems and solutions
- engineering.zalando.com: Building an End to End load test automation system on top of Kubernetes Learn how we built an end-to-end load test automation system to make load tests a routine task.
Tweets
Click to expand!
βοΈ Knowledge - Vertical vs Horizontal scaling π
— Simon βοΈ (@simonholdorf) October 2, 2021
Vertical scaling: Increase the power of machines. E.g. upgrade from 4 vCPU to 8 vCPU --> Scaling Up β
Horizontal scaling: Add more machines. E.g. 3 web servers instead of 1 --> Scaling Out βοΈ