SlideShare a Scribd company logo
Creating Kubernetes
Autoscalers
github.com/jthomperoo
Jamie Thompson
Who am I?
● Final year Computer Science student at
Queen’s University Belfast.
● Previously worked at IBM for a year.
● Open sourced projects for QRadar.
● Constantly working on side projects, most of
them open source.
Why open source?
● To have a greater chance that someone
will find it and use it.
● To get more responsive feedback per
release.
● Community led feature suggestion, bug
reporting, and use case explanation.
● Kubernetes ecosystem is open source
oriented.
Kubernetes and autoscaling
● Kubernetes allows sharing resources
between applications.
● Built on container technology, such as Docker,
standardising applications into units with
infinite scalability potential.
● Autoscaling is the act of balancing which
applications need more or less resources
based on criteria and metrics.
● Horizontal Pod Autoscaler inbuilt method for
autoscaling, generally used to scale on
CPU/Memory.
The Problem
● The Horizontal Pod Autoscaler has a
hard-coded equation for calculating how to
scale.
● Custom metrics go some way to help with
this, but ultimately still constrained by core
equation.
● If more complex scaling logic required (e.g.
conditional logic, queues), a custom
autoscaler is required.
● Custom autoscalers are difficult and time
consuming to create, requiring knowledge of
the Kubernetes API and Kubernetes lifecycle.
The Goal
● Make autoscalers quick and easy to make,
with limited Kubernetes knowledge required.
● Abstract away complicated Kubernetes API
interactions.
● Autoscaler logic writeable in any language,
framework or environment, and should be
simple enough to be contained in a single
script.
Custom Pod Autoscaler Framework
● Works by integrating user provided logic, written in any language or
framework, with a program to abstract away Kubernetes interactions.
● Allows quick and easy autoscaler development.
● Fast prototyping and experimentation.
● Any logic that can be started with a shell command can be used.
● Runs in the Kubernetes cluster as a pod.
● Fully configurable, supports everything the Horizontal Pod Autoscaler
can be configured with.
● Allows configuration without master node access, allowing use on
managed providers such as EKS or GKE.
Custom Pod Autoscaler Framework
Predictive Horizontal Pod Autoscaler
● Allows use of statistical models
coupled with standard autoscaling
metrics.
● Can predict future demand based on
historical data - preemptively scaling
rather than reacting to demand.
● Can see reductions in latency spikes
if configured and tuned correctly.
Any questions?
Some (maybe) useful links
jamiethompson.me
github.com/jthomperoo/custom-pod-autoscaler
github.com/jthomperoo/predictive-horizontal-pod-autoscaler

More Related Content

PDF
Alexandra johnson reducing operational barriers to model training
PDF
Machine learning on kubernetes
PDF
Webinar kubernetes and-spark
PDF
How to set up Kubernetes for all your machine learning workflows
PDF
Deploy your machine learning models to production with Kubernetes
PDF
Kubernetes, Istio e Knative: The new cloud stack
PDF
Cnvrg webinar continual learning
PPSX
Kubernetes in Action, Second Edition
Alexandra johnson reducing operational barriers to model training
Machine learning on kubernetes
Webinar kubernetes and-spark
How to set up Kubernetes for all your machine learning workflows
Deploy your machine learning models to production with Kubernetes
Kubernetes, Istio e Knative: The new cloud stack
Cnvrg webinar continual learning
Kubernetes in Action, Second Edition

What's hot (19)

PPTX
.NET Fest 2019. Stas Lebedenko. Practical serverless use cases in Azure with ...
PDF
Adopting software design practices for better machine learning
PDF
How To Build Auto-Adaptive Machine Learning Models with Kubernetes
PPTX
DevTernity - OOP in the enterprise
PDF
Project Frankenstein: A multitenant, horizontally scalable Prometheus as a se...
PPTX
Tensorflow London 13: Barbara Fusinska 'Hassle Free, Scalable, Machine Learni...
PPTX
Ray distributed python framework
PDF
Knative, Serverless on Kubernetes, and Openshift
PDF
The log
PDF
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
ODP
Go lambda-presentation
PDF
Tooling Matters - Development tools
PDF
Flink Forward San Francisco 2019: Managing Flink on Kubernetes - FlinkK8sOper...
PDF
Knative serving
PDF
Serverless with Knative - Mete Atamel (Google)
PDF
Collaborative data science and how to build a data science toolchain around n...
PDF
Ansible Dresden meetup (Dec 2019) - How Operators with Ansible make Kubernete...
PDF
Machine learning in survey monkey
PDF
Facilitez votre transition DevOps grâce à l'automatisation de votre infras...
.NET Fest 2019. Stas Lebedenko. Practical serverless use cases in Azure with ...
Adopting software design practices for better machine learning
How To Build Auto-Adaptive Machine Learning Models with Kubernetes
DevTernity - OOP in the enterprise
Project Frankenstein: A multitenant, horizontally scalable Prometheus as a se...
Tensorflow London 13: Barbara Fusinska 'Hassle Free, Scalable, Machine Learni...
Ray distributed python framework
Knative, Serverless on Kubernetes, and Openshift
The log
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
Go lambda-presentation
Tooling Matters - Development tools
Flink Forward San Francisco 2019: Managing Flink on Kubernetes - FlinkK8sOper...
Knative serving
Serverless with Knative - Mete Atamel (Google)
Collaborative data science and how to build a data science toolchain around n...
Ansible Dresden meetup (Dec 2019) - How Operators with Ansible make Kubernete...
Machine learning in survey monkey
Facilitez votre transition DevOps grâce à l'automatisation de votre infras...
Ad

Similar to Creating Kubernetes Autoscalers (20)

PPTX
KCD PPT -2025 - Kasun Rathnayaka (2).pptx
PDF
Kubernetes intro
PDF
Kubernetes basics, Nodes, Pods, Containers, Deployments
PPTX
Migrating from oracle soa suite to microservices on kubernetes
PDF
The Kubernetes Effect
PDF
Where should I run my code? Serverless, Containers, Virtual Machines and more
PPTX
Mcroservices with docker kubernetes, goang and grpc, overview
PDF
Journey Through Four Stages of Kubernetes Deployment Maturity
PPTX
GCCP JSCOE Session 2
PPTX
Washington DC MuleSoft Meetup 05-12-22-2.pptx
PPTX
Ultimate Guide to Microservice Architecture on Kubernetes
PDF
Nugwc k8s session-16-march-2021
PPTX
SpringOne Tour: An Introduction to Azure Spring Apps Enterprise
PDF
Build and Deploy Cloud Native Camel Quarkus routes with Tekton and Knative
PPTX
Introduction+to+Kubernetes-Details-D.pptx
PDF
Container Landscape in 2019
PDF
CI/CD on Google Cloud Platform
PDF
Kubernetes and bluemix
PPTX
01. Kubernetes-PPT.pptx
PDF
Democratizing machine learning on kubernetes
KCD PPT -2025 - Kasun Rathnayaka (2).pptx
Kubernetes intro
Kubernetes basics, Nodes, Pods, Containers, Deployments
Migrating from oracle soa suite to microservices on kubernetes
The Kubernetes Effect
Where should I run my code? Serverless, Containers, Virtual Machines and more
Mcroservices with docker kubernetes, goang and grpc, overview
Journey Through Four Stages of Kubernetes Deployment Maturity
GCCP JSCOE Session 2
Washington DC MuleSoft Meetup 05-12-22-2.pptx
Ultimate Guide to Microservice Architecture on Kubernetes
Nugwc k8s session-16-march-2021
SpringOne Tour: An Introduction to Azure Spring Apps Enterprise
Build and Deploy Cloud Native Camel Quarkus routes with Tekton and Knative
Introduction+to+Kubernetes-Details-D.pptx
Container Landscape in 2019
CI/CD on Google Cloud Platform
Kubernetes and bluemix
01. Kubernetes-PPT.pptx
Democratizing machine learning on kubernetes
Ad

Recently uploaded (20)

PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
L1 - Introduction to python Backend.pptx
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PPT
Introduction Database Management System for Course Database
PDF
Digital Systems & Binary Numbers (comprehensive )
PPTX
Reimagine Home Health with the Power of Agentic AI​
PDF
System and Network Administraation Chapter 3
PPTX
Introduction to Artificial Intelligence
PDF
medical staffing services at VALiNTRY
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PPTX
assetexplorer- product-overview - presentation
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
history of c programming in notes for students .pptx
Which alternative to Crystal Reports is best for small or large businesses.pdf
How to Choose the Right IT Partner for Your Business in Malaysia
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Understanding Forklifts - TECH EHS Solution
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
L1 - Introduction to python Backend.pptx
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Introduction Database Management System for Course Database
Digital Systems & Binary Numbers (comprehensive )
Reimagine Home Health with the Power of Agentic AI​
System and Network Administraation Chapter 3
Introduction to Artificial Intelligence
medical staffing services at VALiNTRY
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
assetexplorer- product-overview - presentation
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
wealthsignaloriginal-com-DS-text-... (1).pdf
2025 Textile ERP Trends: SAP, Odoo & Oracle
Odoo Companies in India – Driving Business Transformation.pdf
history of c programming in notes for students .pptx

Creating Kubernetes Autoscalers

  • 2. Who am I? ● Final year Computer Science student at Queen’s University Belfast. ● Previously worked at IBM for a year. ● Open sourced projects for QRadar. ● Constantly working on side projects, most of them open source.
  • 3. Why open source? ● To have a greater chance that someone will find it and use it. ● To get more responsive feedback per release. ● Community led feature suggestion, bug reporting, and use case explanation. ● Kubernetes ecosystem is open source oriented.
  • 4. Kubernetes and autoscaling ● Kubernetes allows sharing resources between applications. ● Built on container technology, such as Docker, standardising applications into units with infinite scalability potential. ● Autoscaling is the act of balancing which applications need more or less resources based on criteria and metrics. ● Horizontal Pod Autoscaler inbuilt method for autoscaling, generally used to scale on CPU/Memory.
  • 5. The Problem ● The Horizontal Pod Autoscaler has a hard-coded equation for calculating how to scale. ● Custom metrics go some way to help with this, but ultimately still constrained by core equation. ● If more complex scaling logic required (e.g. conditional logic, queues), a custom autoscaler is required. ● Custom autoscalers are difficult and time consuming to create, requiring knowledge of the Kubernetes API and Kubernetes lifecycle.
  • 6. The Goal ● Make autoscalers quick and easy to make, with limited Kubernetes knowledge required. ● Abstract away complicated Kubernetes API interactions. ● Autoscaler logic writeable in any language, framework or environment, and should be simple enough to be contained in a single script.
  • 7. Custom Pod Autoscaler Framework ● Works by integrating user provided logic, written in any language or framework, with a program to abstract away Kubernetes interactions. ● Allows quick and easy autoscaler development. ● Fast prototyping and experimentation. ● Any logic that can be started with a shell command can be used. ● Runs in the Kubernetes cluster as a pod. ● Fully configurable, supports everything the Horizontal Pod Autoscaler can be configured with. ● Allows configuration without master node access, allowing use on managed providers such as EKS or GKE.
  • 9. Predictive Horizontal Pod Autoscaler ● Allows use of statistical models coupled with standard autoscaling metrics. ● Can predict future demand based on historical data - preemptively scaling rather than reacting to demand. ● Can see reductions in latency spikes if configured and tuned correctly.
  • 10. Any questions? Some (maybe) useful links jamiethompson.me github.com/jthomperoo/custom-pod-autoscaler github.com/jthomperoo/predictive-horizontal-pod-autoscaler