Kubernetes Autoscaling: HPA vs. VPA vs. Keda vs. CA vs. Karpenter vs. Fargate

  Рет қаралды 28,425

Anton Putra

Anton Putra

Күн бұрын

Пікірлер: 74
@AntonPutra
@AntonPutra Жыл бұрын
🔴 To support my channel, I'd like to offer Mentorship/On-the-Job Support/Consulting (me@antonputra.com)
@AndroidandTechSolutions
@AndroidandTechSolutions Жыл бұрын
Thanks a lot!! All content in the channel is a gold mine. you have explained very well the concepts. thanks and keep it up 😊👏👏
@AntonPutra
@AntonPutra Жыл бұрын
Thank you! :)
@vaishakh-aws
@vaishakh-aws 4 күн бұрын
Absolutely brilliant! All the great content together in a single video. Thanks a lot, bro!
@roudder6606
@roudder6606 Жыл бұрын
спасибо, хорошая подача и без воды
@AntonPutra
@AntonPutra Жыл бұрын
spasibo!
@RakeshRawat-s7s
@RakeshRawat-s7s Жыл бұрын
Your diagrams are very easy to understand. Thank you Anton
@AntonPutra
@AntonPutra Жыл бұрын
my pleasure!
@hz8711
@hz8711 Жыл бұрын
very good video, which includes not only useful information, but pretty important recommendations!
@AntonPutra
@AntonPutra Жыл бұрын
Thank you!
@CodeSecLab
@CodeSecLab Жыл бұрын
Thank you Anton, this is very helpful and your diagrams and explanations are really clear and to the point. Keep going 👌🏼
@AntonPutra
@AntonPutra Жыл бұрын
❤️
@LeandroSantos-bt1lg
@LeandroSantos-bt1lg Жыл бұрын
I have used keda in gcp with pub/sub and it works quite well.
@AntonPutra
@AntonPutra Жыл бұрын
cool, did you use workload identity or you had to use credentials json file?
@LeandroSantos-bt1lg
@LeandroSantos-bt1lg Жыл бұрын
@@AntonPutra I had to use the credentials json file for the service account, the GKE cluster wasn’t provisioned with workload identity unfortunately.
@AntonPutra
@AntonPutra Жыл бұрын
​@@LeandroSantos-bt1lg I see. I hate using JSON credentials. I wonder why they had to use JSON instead of a key and secret as in AWS.
@tuvoxuan1894
@tuvoxuan1894 Жыл бұрын
You did great!!! Thanks you so much
@AntonPutra
@AntonPutra Жыл бұрын
Thank you!!
@raoanonymous
@raoanonymous 8 ай бұрын
Awesome content. Easy to understand. Thank you
@AntonPutra
@AntonPutra 8 ай бұрын
thank you!
@itsnotaytchannel
@itsnotaytchannel 8 ай бұрын
Ur Gold to K8s community !!!
@AntonPutra
@AntonPutra 8 ай бұрын
thanks :)
@Ivorlun
@Ivorlun Жыл бұрын
Антон, спасибо огромное! Как всегда - превосходная подача и идеально выбраны границы, в пределах которых освещена тема. And a question about scaling stateful apllication, particularly a database - is it possible to create master-master configuration with several endpoints in service for avoiding downtime during pod recreation? And do you see potential problems with auto attaching pv back to it or some concerns about it possible inconsistency?
@AntonPutra
@AntonPutra Жыл бұрын
Thank you! Well, it's possible, but I would highly recommend creating your own Operator instead of relying on StatefulSets. Based on my experience, databases and messaging systems work just fine in Kubernetes in light environments with low load. However, when you start moving all of it into production, you will discover many nuances, and recovering a database in Kubernetes in production is very challenging. Think twice, especially if you will be responsible for running it and not simply developing and handing it over to an ops team. :)
@JackReacher1
@JackReacher1 8 ай бұрын
master stroke, nice work!
@AntonPutra
@AntonPutra 8 ай бұрын
thanks :)
@putnam120
@putnam120 Жыл бұрын
Where is the documentation of using karpenter with non AWS clouds? I have only ever seen documentation for AWS.
@AntonPutra
@AntonPutra Жыл бұрын
Here is for azure - github.com/Azure/karpenter
@putnam120
@putnam120 Жыл бұрын
@@AntonPutra thank you
@GabrielPozo
@GabrielPozo Жыл бұрын
Thanks for sharing this quality content!
@AntonPutra
@AntonPutra Жыл бұрын
My pleasure!
@Scrapewithbots
@Scrapewithbots 3 ай бұрын
Good video. Your diagrams were top notch.
@AntonPutra
@AntonPutra 3 ай бұрын
thanks!
@fadi07full
@fadi07full 10 ай бұрын
Hatsoff Next Level Explanations ! more power to you :)
@vvkgdm
@vvkgdm 7 ай бұрын
Answered every question
@AntonPutra
@AntonPutra 7 ай бұрын
thanks!
@ahmedsaif4541
@ahmedsaif4541 6 ай бұрын
Hi Anton , thank you very much for the valuable information especially VPA use case , let's say i will have node exporter deployed as DeamonSet pod , what about the tagging , will i be able to add it in the new worker node by using karpenter to let promethues detect the new worker node and monitor it via service discovery mechanism or no ?
@AntonPutra
@AntonPutra 6 ай бұрын
Yes, Prometheus does not care if you use Autocaller or Karpenter. Whenever a new Kubernetes node is created, assuming there are no taints that the node exporter cannot tolerate, that node will be automatically added to the Prometheus target list.
@diegonayalazo
@diegonayalazo Жыл бұрын
Thanks Teacher ❤!!
@AntonPutra
@AntonPutra Жыл бұрын
Thanks :)
@Andrey-gs2mm
@Andrey-gs2mm 7 ай бұрын
Молодец
@AntonPutra
@AntonPutra 7 ай бұрын
Спасибо:)
@XenoZeduX
@XenoZeduX 7 ай бұрын
Karpenter is interesting but seems it currently best supports AWS which makes sense considering they made it
@AntonPutra
@AntonPutra 7 ай бұрын
Yes, they claim they support multiple clouds, but in reality, no one is using it in production on other clouds besides AWS.
@gmeister3022
@gmeister3022 Жыл бұрын
Elemental, highly informative content. Well done as per usual, Anton! If at all possible, I'd like to request a more advanced solution (i.e, deploying VPA along with JVM based applications, deploying a multidimensional pod autoscaling solution in a production-ready environment, etc.).
@AntonPutra
@AntonPutra Жыл бұрын
Thank you! I'll see what I can do.
@duyluan97
@duyluan97 10 ай бұрын
Could you please let me know which tool you used to create the video? The tool seems helpful in organizing the explanation. Thanks!
@AntonPutra
@AntonPutra 10 ай бұрын
sure, it's adobe suite
@duyluanontheflow
@duyluanontheflow 10 ай бұрын
Thanks@@AntonPutra
@twizzoe
@twizzoe 10 ай бұрын
I need a clarification with regards the promtheus setup, if I already have a prometheus deployed on my cluster using the kube-prometheus-stack will that suffice to use also because I am seeing prometheus adapter and operator?
@hanky3028
@hanky3028 2 ай бұрын
06:43
@Daveooooooooooo0
@Daveooooooooooo0 7 ай бұрын
CarPanter
@AntonPutra
@AntonPutra 7 ай бұрын
🫡
@arozendojr
@arozendojr Жыл бұрын
Is it possible to do automatic tracking for jaeger + istio, request and response communication between services on the jaeger dashboard? Would you have an example?
@arpit92m
@arpit92m 9 ай бұрын
subscribed, keep up the good work
@AntonPutra
@AntonPutra 9 ай бұрын
thanks! will do!
@msrraoudh
@msrraoudh Жыл бұрын
thanks anton for this content, it is awesome, can you do a video comparing apache kafka and amazon kinesis please with grafana visualization
@AntonPutra
@AntonPutra Жыл бұрын
Thanks, sure at some point in the future.
@saikiransunkara1955
@saikiransunkara1955 Жыл бұрын
Does EKS allow us to create node group with different instance types of ec2 instances? As far as I know it doesn't allow why because instances will be under ASG and will have launch configuration defined, Please correct me if I am wrong. If they are part of ASG then how to update the instance type of ec2 without causing downtime.
@AntonPutra
@AntonPutra Жыл бұрын
If you use kOPS to create Kubernetes (K8s) in AWS, you can definitely use mixed instance family types. I've been using it for spot instances so that, in case one instance type is not available, another one is selected automatically. I'm not sure about EKS; you may need to create launch templates. Here is the official documentation for mixed Auto Scaling groups (AGs): docs.aws.amazon.com/autoscaling/ec2/userguide/create-mixed-instances-group-manual-instance-type-selection.html.
@kelvinonuchukwu8215
@kelvinonuchukwu8215 Жыл бұрын
Where are we supposed to get the Github repository from?
@AntonPutra
@AntonPutra Жыл бұрын
github.com/antonputra/tutorials/tree/main/lessons/181
@abdelhaibouaicha3293
@abdelhaibouaicha3293 Жыл бұрын
📝 Summary of Key Points: 📌 Autoscaling in Kubernetes allows adjusting resources based on application usage, saving on compute and avoiding wasted resources. 🧐 Different types of autoscaling controllers exist in Kubernetes, including built-in and separately installed ones. 🧐 Autoscaling is easier to implement for stateless applications compared to distributed databases. 🧐 The Horizontal Pod Autoscaler (HPA) is a common approach for autoscaling in Kubernetes, adjusting the desired scale based on metrics like CPU and memory usage. 🧐 Custom metrics can be used for autoscaling, such as latency, traffic, errors, and saturation, by deploying a Prometheus operator and instance. 🧐 For stateful applications, vertical scaling is the only option, and the Vertical Pod Autoscaler (VPA) recommends resource requests and limits. 🧐 Kubernetes allows autoscaling of the cluster itself with the Cluster Autoscaler, adjusting the node group size based on pending pods. 🧐 The KEDA project helps with autoscaling based on the number of messages in a queue or topic, supporting various messaging systems. 💡 Additional Insights and Observations: 💬 "Autoscaling is important because it allows you to adjust the resources allocated to your applications based on their usage, saving on compute and avoiding wasted resources." 📊 The Horizontal Pod Autoscaler (HPA) is a commonly used approach for autoscaling in Kubernetes. 🌐 The KEDA project supports various messaging systems like Apache Kafka, RabbitMQ, and MySQL for autoscaling based on message queues or topics. 📣 Concluding Remarks: Autoscaling in Kubernetes is a powerful tool that efficiently manages resources and handles varying workloads. It can be implemented using built-in controllers like the HPA and VPA, as well as additional tools like Prometheus and KEDA. By adjusting resources based on application usage, autoscaling optimizes resource allocation and improves overall efficiency. Made with Talkbud
@AntonPutra
@AntonPutra Ай бұрын
🍿 Benchmarks: kzbin.info/aero/PLiMWaCMwGJXmcDLvMQeORJ-j_jayKaLVn&si=p-UOaVM_6_SFx52H
@DannyLe-g5b
@DannyLe-g5b Жыл бұрын
@AntonPutra
@AntonPutra Жыл бұрын
Thanks :)
@matc8085
@matc8085 Жыл бұрын
Karpenter is not usable on GKE
@AntonPutra
@AntonPutra Жыл бұрын
I know, but they claim it is usable.
@CarolWilson-e1k
@CarolWilson-e1k 3 ай бұрын
Thompson Jennifer Hernandez Christopher Thomas Sandra
@AntonPutra
@AntonPutra 3 ай бұрын
?
@quazirizwanuddin5661
@quazirizwanuddin5661 3 ай бұрын
feeling sleepy , dont read like a news anchor.
Day 17/40 - Kubernetes Autoscaling Explained| HPA Vs VPA
25:50
Tech Tutorials with Piyush
Рет қаралды 6 М.
Cat mode and a glass of water #family #humor #fun
00:22
Kotiki_Z
Рет қаралды 42 МЛН
Try this prank with your friends 😂 @karina-kola
00:18
Andrey Grechka
Рет қаралды 9 МЛН
Tuna 🍣 ​⁠@patrickzeinali ​⁠@ChefRush
00:48
albert_cancook
Рет қаралды 148 МЛН
KEDA: Kubernetes Event-Driven Autoscaling
16:02
DevOps Toolkit
Рет қаралды 29 М.
Karpenter vs Kubernetes Cluster Autoscaler
9:03
Justin Garrison
Рет қаралды 39 М.
Kubernetes NodePort vs LoadBalancer vs Ingress
6:27
Anton Putra
Рет қаралды 88 М.
Do NOT Learn Kubernetes Without Knowing These Concepts...
13:01
Travis Media
Рет қаралды 345 М.
Nginx vs Caddy Performance
15:27
Anton Putra
Рет қаралды 34 М.
Kubernetes RBAC Explained
23:17
Anton Putra
Рет қаралды 16 М.
Kubernetes cluster autoscaling for beginners
12:55
That DevOps Guy
Рет қаралды 53 М.
Kubernetes Canary Deployment (Manual vs Automated)
10:59
Anton Putra
Рет қаралды 12 М.
Cat mode and a glass of water #family #humor #fun
00:22
Kotiki_Z
Рет қаралды 42 МЛН