Kubernetes pod autoscaling for beginners

  Рет қаралды 31,610

That DevOps Guy

That DevOps Guy

3 жыл бұрын

Subscribe to show your support! goo.gl/1Ty1Q2 .
Patreon 👉🏽 / marceldempers
In this episode, were taking a look at how to scale pods on Kubernetes based on CPU or Memory usage. This feature in Kubernetes is called the Horizontal Pod autoscaler.
Before scaling its important to understand your resource usage for the service you wish to scale.
We take a look at resource requests and limits and how they play a key role in autoscaling.
Checkout the source code below 👇🏽 and follow along 🤓
Also if you want to support the channel further, become a member 😎
marceldempers.dev/join
Checkout "That DevOps Community" too
marceldempers.dev/community
Source Code 🧐
--------------------------------------------------------------
github.com/marcel-dempers/doc...
If you are new to Kubernetes, check out my getting started playlist on Kubernetes below :)
Kubernetes Guide for Beginners:
---------------------------------------------------
• Kubernetes development...
Kubernetes Monitoring Guide:
-----------------------------------------------
• Kubernetes Monitoring ...
Kubernetes Secret Management Guide:
--------------------------------------------------------------
• Kubernetes Secret Mana...
Like and Subscribe for more :)
Follow me on socials!
marceldempers.dev
Twitter | / marceldempers
GitHub | github.com/marcel-dempers
Facebook | thatdevopsguy
LinkedIn | / marceldempers
Instagram | / thatdevopsguy
Music:
Track: Amine Maxwell - Cafe Cubano | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
Listen: / cafe-cubano
Track: Fox Beat 2 - Jeff Kalee - Pillow Talk - Royalty Free Vlog Music [BUY=FREE] | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
Listen: / jeff-kalee-pillow-talk...
Track: Joakim Karud - That Day | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
Listen: / that-day
Track: souKo - souKo - Parallel | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
Listen: / parallel

Пікірлер: 42
@MarcelDempers
@MarcelDempers 3 жыл бұрын
In this episode we learn how to scale pods with the horizontal pod autoscaler. To scale your cluster nodes, checkout the Cluster Autoscaler 👉🏽 kzbin.info/www/bejne/oH6WZ4BpbrJ0aas
@yovangrbovich3577
@yovangrbovich3577 3 жыл бұрын
Great content as usual, and the production quality is constantly getting better too! Awesome
@tiagomedeiros7935
@tiagomedeiros7935 2 жыл бұрын
I read many articles on many sites and watch many videos to understand pod autoscaler, but all this time, I just needed to watch this video. Thank you.
@ibrahemazad
@ibrahemazad Жыл бұрын
the best video I ever watched on the internet explaining HPA
@torbendury4374
@torbendury4374 3 жыл бұрын
Again, great content delivered in an easy way and also essy to reproduce. Thanks!
@elmeroranchero
@elmeroranchero 3 жыл бұрын
Amazing, thank you very much, loved the edition and the concise way o explaining
@5happy1
@5happy1 3 жыл бұрын
Such a well-done video! Can't believe you haven't gone huge yet. I don't usually comment on KZbin but I felt compelled this time. Looking forward to going through more of your library of content as I get more into Kubernetes and DevOps in general.
@nikoladacic9800
@nikoladacic9800 3 жыл бұрын
Good lecture. Good presentation. Interesting fast and to the point. Good job man!!! Keep it coming and thanks. Deserved my SUB definitely. :)
@emergirie
@emergirie 2 жыл бұрын
Nice discover I like the way you explaining dude thanks for effort.I subscribe and will let other people know you
@ankitguhe5015
@ankitguhe5015 3 жыл бұрын
Absolutely useful video, you saved my job 🤣 thanks a ton mate!
@AmjadW.
@AmjadW. 3 жыл бұрын
You're awesome! kudos to your efforts
@DevsLikeUs
@DevsLikeUs 3 жыл бұрын
Not having to provision infrastructure is awesome, thank you for the great video.
@inf222
@inf222 3 жыл бұрын
Such great work deserves like and comment))
@yuryzinovyev6186
@yuryzinovyev6186 3 жыл бұрын
Thank you so much!
@Abdullah32066
@Abdullah32066 3 жыл бұрын
Thank you very much! Please make a video on kubernetes e2e testing.
@maratbiriushev7870
@maratbiriushev7870 2 жыл бұрын
Thank you!
@derekreed6798
@derekreed6798 Жыл бұрын
Nice vid
@prabhatnagpal
@prabhatnagpal Жыл бұрын
Thank you so much for making this concept easy to understand. Actually, I was also struggling setting the values of cpu requests and limits in the deployment, because in my Kubernetes even when the replicas increase, it starts running all pods with same load and didn't distribute evenly among the pods to make it come down and I have faced bad behaviour of scaling in my cluster. I have no clue what is happening
@bullet_bg
@bullet_bg 2 жыл бұрын
thanx gold
@janco333
@janco333 2 жыл бұрын
How do you select a good minimum pod count for the hpa? I see this constant oscillation of it scaling up and down. Should i set my minimum above my normal load?
@vinayaknawale1015
@vinayaknawale1015 3 жыл бұрын
Nicely explained can you make video on eks with cluster autoscaler + hpa + ingress
@MarcelDempers
@MarcelDempers 3 жыл бұрын
Thank you 💪🏽 You should be able to follow the sequence: EKS 👉🏽kzbin.info/www/bejne/h4XLkpeJaLiin8k CA 👉🏽kzbin.info/www/bejne/oH6WZ4BpbrJ0aas HPA 👉🏽kzbin.info/www/bejne/fJenemNuqMylj7s Ingress 👉🏽kzbin.info/www/bejne/q2qXaXaLh7F3gKM
@sachin-sachdeva
@sachin-sachdeva 3 жыл бұрын
Thanks Marcel. This all is load based - is there a way where I can define it time based e.g. if there is a heavylifting job runs on my cluster between 2-4 AM and I can not afford to miss it?
@MarcelDempers
@MarcelDempers 3 жыл бұрын
Maybe checkout a project called Keda. it may support exactly what you need 💪🏽
@dangvu534
@dangvu534 2 жыл бұрын
Clearly explained and really useful for beginners, excellent work! May you kindly reply my small question: how can we estimate the resources request and limit for some specific pods?
@MarcelDempers
@MarcelDempers 2 жыл бұрын
The vertical pod autoscaler in recommendation mode can make recommendations on request values. There's a video on that in the channel. Also the latest monitoring video will also help 💪🏽
@martinzen
@martinzen 3 жыл бұрын
Absolutely killer video my man, much appreciated. Noob question: does the metrics server require a separate node for a production deployment? Or does it just run in the same k8s service process, the way a plugin would? It would be useful to have a better idea of how this maps to actual cloud infra in terms of VMs/nodes, etc.
@MarcelDempers
@MarcelDempers 3 жыл бұрын
Thanks for the kind words 💪🏽For production, Metric server can run on any node where it can be scheduled. Many cloud providers have metric server already installed in the kube-system namespace
@parasprince2001
@parasprince2001 3 жыл бұрын
can you provide some sort of breakdown of which autoscaling API supported in which k8s version?
@MarcelDempers
@MarcelDempers 3 жыл бұрын
I don't see this formally documented anywhere, however, you can run `kubectl api-version" in your cluster to see what API versions it supports. I would also recommend looking at the HPA documentation of Kubernetes to see features of what's coming in future versions
@gouterelo
@gouterelo 3 жыл бұрын
In an HA cluster, metrics needs another modification... but i dont remmeber where...
@luc3r384
@luc3r384 3 жыл бұрын
materclass!
@imranarshad221
@imranarshad221 3 жыл бұрын
Thanks for great Demo. Quick question, How come Pod could go to 1493m CPU when we allocated 500m ? Isn't that hard limit ?
@MarcelDempers
@MarcelDempers 3 жыл бұрын
Thank you 💪🏽, no the 500m is the requested value which is used for scheduling
@imranarshad221
@imranarshad221 3 жыл бұрын
@@MarcelDempers Thank you makes sense . If I Only need one pod , Is there a way to put hard limit so single pod doesn't eat up all the memory ?
@MarcelDempers
@MarcelDempers 3 жыл бұрын
@@imranarshad221 Sure there is. Just remember if that pod hits its limit, it will be terminated by the OOM killer and restarted kubernetes.io/docs/concepts/configuration/manage-resources-containers/#requests-and-limits
@creative-commons-videos
@creative-commons-videos 3 жыл бұрын
hey there, can you please tell me how can i use nginx ingress in my cluster, I am using IBM cloud computing for cluster but the problem is currently i am on Lite plan which does not allow to create LoadBalancer, so how can i deploy my website using domain name on IBM ???
@MarcelDempers
@MarcelDempers 3 жыл бұрын
It will be an issue im afraid. Kubernetes allows NodePort but its not recommended for production workloads and will give you other issues like restrictions to port range which is not 80 or 443. Also make it hard to run your pods behind multiple nodes. If its your personal website, I would highly recommend Linode or Digital Ocean. Kubernetes is cheap to run there, their UI and UX is brilliant and an LB is around $10 a month too.
@creative-commons-videos
@creative-commons-videos 3 жыл бұрын
@@MarcelDempers thanks buddy
@vuhaiang2077
@vuhaiang2077 2 жыл бұрын
Congrats on the excellent and well-explained video. However as your example at 7:39, the only resource scaled is CPU, not MEMORY (after scaling up to 4 replicas the memory of each pod remain unchanged). I wonder is this something obvious? And if so how can we actually scale base on memory consumed?
@MarcelDempers
@MarcelDempers 2 жыл бұрын
Kubernetes hpa supports memory as well. In the demo I used CPU as its the most common one
@vuhaiang2077
@vuhaiang2077 2 жыл бұрын
@@MarcelDempers I understand. Thank you very much
Understanding CPU & Memory with the Kubernetes Vertical Pod Autoscaler
22:12
Understanding StatefulSets in Kubernetes
28:44
That DevOps Guy
Рет қаралды 47 М.
Alex hid in the closet #shorts
00:14
Mihdens
Рет қаралды 9 МЛН
Русалка
01:00
История одного вокалиста
Рет қаралды 7 МЛН
Каха и суп
00:39
К-Media
Рет қаралды 6 МЛН
Autoscaling in Kubernetes
19:07
Pavan Elthepu
Рет қаралды 20 М.
What is Kubernetes AFFINITY ?
17:28
That DevOps Guy
Рет қаралды 6 М.
Learn Horizontal Pod Autoscaler (HPA) | Hands-on | Kubernetes Tutorial for Beginners | K21Academy
28:05
Simplify Kubernetes YAML with Kustomize
20:37
That DevOps Guy
Рет қаралды 75 М.
Redis on Kubernetes for beginners
21:18
That DevOps Guy
Рет қаралды 41 М.
Understanding KUBECTL - Learning Kubernetes
40:34
That DevOps Guy
Рет қаралды 10 М.
How Autoscaling Works In Kubernetes (And Beyond)? Kubernetes Tutorial
30:55
Persistent Volumes on Kubernetes for beginners
18:47
That DevOps Guy
Рет қаралды 51 М.
VPA - Vertical Pod Autoscaler | Kubernetes | AWS | EKS
11:34
Linux Cloud DevOps & More by Abushad
Рет қаралды 1,1 М.
Battery  low 🔋 🪫
0:10
dednahype
Рет қаралды 12 МЛН
Лазер против камеры смартфона
1:01
NEWTONLABS
Рет қаралды 291 М.
Как распознать поддельный iPhone
0:44
PEREKUPILO
Рет қаралды 2 МЛН
Это Xiaomi Su7 Max 🤯 #xiaomi #su7max
1:01
Tynalieff Shorts
Рет қаралды 1,5 МЛН