Most Common Kubernetes Deployment Strategies (Examples & Code)

  Рет қаралды 41,968

Anton Putra

Anton Putra

Күн бұрын

Пікірлер: 95
@AntonPutra
@AntonPutra Жыл бұрын
🔴 - To support my channel, I’d like to offer Mentorship/On-the-Job Support/Consulting - me@antonputra.com
@tusharshukla7215
@tusharshukla7215 15 күн бұрын
Hi Anton, thanks for making this video, but I observed at 9:34minutes, the accessModes shouldn't be "ReadWriteOncePod" as you talked here about the Pod accessibility. Please correct me if I misunderstood something here.
@kunalkatdare9799
@kunalkatdare9799 8 ай бұрын
Thanks! Usually all videos show these deployment strategies conceptually, but you demonstrated how it's actually done! Big thanks!
@worldsofgalaxy
@worldsofgalaxy 9 ай бұрын
Never seen before such clear explanation..Hatts off 👍👍
@AntonPutra
@AntonPutra 9 ай бұрын
thanks a lot!
@hamidullahmuslih6301
@hamidullahmuslih6301 Жыл бұрын
I love your explanations, very clear, awesome examples, and straight to the point. Thank you for your hard work!!
@AntonPutra
@AntonPutra Жыл бұрын
Thank you!
@kayoutube690
@kayoutube690 Жыл бұрын
you deserve lots of subscribers, thank you for sharing your knowledge.
@AntonPutra
@AntonPutra Жыл бұрын
Thanks :)
@김도형-g2i
@김도형-g2i 10 ай бұрын
This is so well explained. You also added in examples that we can understand and apply in the real world. Great thanks for sharing such knowledge. subscribed.
@AntonPutra
@AntonPutra 10 ай бұрын
thanks!
@victors9585
@victors9585 Жыл бұрын
В нетленку!!!! 🔥🌟🔥🌟🔥🌟🔥Сердечно благодарю, Антон!!! 🙏❤🙏❤🙏❤🙏
@AntonPutra
@AntonPutra Жыл бұрын
spasibo=)
@agun21st
@agun21st Жыл бұрын
Wow! this is really very help full K8s Deployment contents for when we call a service api and it show "Service Upstream problem". Sir your content is Unique on the k8s Tutorials. 💝
@GabrielPozo
@GabrielPozo Жыл бұрын
This is always an exciting topic, a fantastic video, thanks for sharing this quality of content!!!
@AntonPutra
@AntonPutra Жыл бұрын
thanks!
@ladioladeni
@ladioladeni Жыл бұрын
Anton my man! Quality contents as usual
@AntonPutra
@AntonPutra Жыл бұрын
Thank you!
@maxmarko5949
@maxmarko5949 3 ай бұрын
awesome! visualization is the key
@AntonPutra
@AntonPutra 3 ай бұрын
thank you!
@milindchavan007
@milindchavan007 4 ай бұрын
This is awesome! please make detailed canary setup videos, its really very helpful.
@AntonPutra
@AntonPutra 4 ай бұрын
Thank you! Will do
@chasim1982
@chasim1982 Жыл бұрын
Great Content, Thanks Sir, best IT teacher, learned a lot from You! ❤
@AntonPutra
@AntonPutra Жыл бұрын
Thank you❤
@asezen77
@asezen77 11 ай бұрын
Thanks
@cristobalzuluaga3065
@cristobalzuluaga3065 Жыл бұрын
underrated channel
@softwareasafun
@softwareasafun Жыл бұрын
Thanks!
@AntonPutra
@AntonPutra Жыл бұрын
Thank you for support!
@NarendraChennamsetty
@NarendraChennamsetty 5 ай бұрын
These tutorials are amazing
@AntonPutra
@AntonPutra 5 ай бұрын
thanks you!!
@IuliiaFedotchenko-nu8lm
@IuliiaFedotchenko-nu8lm 6 ай бұрын
very good explained as always. thanks a lot for all your videos
@AntonPutra
@AntonPutra 6 ай бұрын
🫡
@asezen77
@asezen77 11 ай бұрын
Thank you very much for all your content.
@AntonPutra
@AntonPutra 11 ай бұрын
my pleasure
@diegonayalazo
@diegonayalazo Жыл бұрын
Masterclass. Thanks Teacher!
@AntonPutra
@AntonPutra Жыл бұрын
Thank you!
@swa1211
@swa1211 5 ай бұрын
very nice explanation and helpful , thx a lot
@AntonPutra
@AntonPutra 5 ай бұрын
thank you!
@sonadas7213
@sonadas7213 Жыл бұрын
Thanks for sharing your knowledge, your explanation is up to the mark.
@AntonPutra
@AntonPutra Жыл бұрын
Thank you!
@agonzalezo
@agonzalezo 4 ай бұрын
Great content, thanks Anton Putra. How could you use blue/green strategy in a cluster that have too many deployments interconnected each other? So If you have to change all service to point to the new deployment all your external client will use it too or not?
@AntonPutra
@AntonPutra 4 ай бұрын
I'm not sure if I understood the question, but you can use blue/green deployment. Before providing access to your clients, you can thoroughly test your new "green" deployment. If it looks okay, you can, let's say, change the DNS or Kubernetes (k8s) label. You can use other strategies as well. For instance, you might need an additional HTTP header to hit the new version, etc. It's much more difficult for data transformation pipelines that many companies use, such as with Kafka.
@agonzalezo
@agonzalezo 4 ай бұрын
thanks for your reply Anton. suppose you are running an application that has 10 or more micro services in your cluster, if you upgrade one of them and use blue/green is easy to do unit test but if you have to do test more complex like integration or functional it becomes so hard(my point of view). i mean you would have to duplicate all other deployments and make it pointing to the upgraded deployment. again great content 🤜🏼🤛🏼
@AntonPutra
@AntonPutra 4 ай бұрын
@@agonzalezo Agreed. Sometimes you have to test all different applications together, let's say, in a staging environment. Instead of using blue-green deployment, you just release them all at once. Since you tested that in staging, you have a good chance of a successful production push.
@joobis.b4568
@joobis.b4568 7 ай бұрын
great explanation! thankyou for doing this
@AntonPutra
@AntonPutra 7 ай бұрын
thanks!
@jeffkirchoff14
@jeffkirchoff14 3 ай бұрын
You've Explained so well sir 🙏 I'd like to share this on twitter... May I ?
@AntonPutra
@AntonPutra 3 ай бұрын
sure :)
@dimadiachenko1
@dimadiachenko1 Жыл бұрын
awesome structured video, thanks!
@AntonPutra
@AntonPutra Жыл бұрын
Thank you!
@coveraver
@coveraver Жыл бұрын
Thank you! Can we balance traffic between services in the different namespaces by istio with flagger or something?
@AntonPutra
@AntonPutra Жыл бұрын
It's not common, what's your use case? I'll see if I can test istio with cross namespace virtual service
@coveraver
@coveraver Жыл бұрын
it would be great. There are three services in different namespaces stage, prod and green. I need to balance traffic between them. this can be done using ingress canary, but in this case, if the application crashes, it is not excluded from balancing and the user will receive either 200 or 503.
@vipuldepolkar1189
@vipuldepolkar1189 Жыл бұрын
Hi, i m fron india, and your teaching style is very good. I'm waiting for more videos for kubernates and terraform with azure
@AntonPutra
@AntonPutra Жыл бұрын
Thanks, Azure is coming soon =)
@Diego_UG
@Diego_UG Жыл бұрын
thanks for the video, question: what is a deployment strategy like when there are database migrations and how do you plan a rollback in this type of situation?
@AntonPutra
@AntonPutra Жыл бұрын
it's case by case but in general try to make migration backward compatible
@Diego_UG
@Diego_UG Жыл бұрын
Yes, although as the company grows and technology teams are formed, it becomes necessary to implement policies to ensure that these methodologies are followed by everyone on the team. So, in the case of databases, what would the policies be like? One policy could be: modifying a field in the database involves the following steps: 1) Create a new field with a different name, migrate, run a test; 2) Ensure new information is recorded in the new table, keeping new records in both tables, run a test; 3) Migrate data from one table to another, run a test; 4) Ensure new information only enters the row, run a test; 5) Delete the old table; 6) End.?
@Jaffarnefarious
@Jaffarnefarious Жыл бұрын
Thanks a lot Anton!
@AntonPutra
@AntonPutra Жыл бұрын
welcome!
@bobbylelapin
@bobbylelapin Жыл бұрын
Love your content! What workstation you have? ARM MacBook laptop?
@AntonPutra
@AntonPutra Жыл бұрын
Thanks, yes Apple M1 Pro
@wilmarmunoz6212
@wilmarmunoz6212 9 ай бұрын
this is amazing, well explained!
@AhmedAymanElSayed-e1i
@AhmedAymanElSayed-e1i Жыл бұрын
I have a question, why are there 2 pods being created in 5:08 minute while the specified maxSurge is 25% from 4 replicas which should be 1
@AntonPutra
@AntonPutra Жыл бұрын
yes, 25% is 1 pod (4 total), but k8s terminated at the same time 1, so total 5
@yogithakakarla1716
@yogithakakarla1716 Жыл бұрын
So, in canary deployment as we can forward 10% of traffic to new version. Can we make sure that only our team users can access this new version 10% . And end-users or customer should access 90% of old version. Is it possible
@AntonPutra
@AntonPutra Жыл бұрын
Sure, if you use native K8s objects, you would add an additional label to the deployment, for example, "deployment: canary". Then, you'd create another service that selects only canary pods, similar to the blue/green example. In Flagger, this is already implemented, and when you run a test, it will target only the canary.
@node_hodler
@node_hodler Жыл бұрын
otlicino, spasibo!
@AntonPutra
@AntonPutra Жыл бұрын
pojaluysta!
@kayoutube690
@kayoutube690 Жыл бұрын
sir do you have video about kubernetes pod termination and sig term? how the pod gracefully terminated specially in prod?
@AntonPutra
@AntonPutra Жыл бұрын
I don't, but there is a hook that you can use and provide a custom command to execute before terminating the pod - kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/
@nguyenphu-o5d
@nguyenphu-o5d 3 ай бұрын
Hi, I successfully deploy some services but having the Nameserver limits were exceeded issue, is it happen due to too many services?
@AntonPutra
@AntonPutra 3 ай бұрын
it's very unlikely, what's your setup and can you paste exact error message
@nguyenphu-o5d
@nguyenphu-o5d 3 ай бұрын
@@AntonPutra I found a way to fix it, I tried systemctl restart systemd-resolved.service and the issue is gone some how.
@rahulchowdhury279
@rahulchowdhury279 Жыл бұрын
plz make a DETAILED video on Cortex.
@rahulchowdhury279
@rahulchowdhury279 Жыл бұрын
Love your videos. Both prometheus operator videos helped me out a lot
@AntonPutra
@AntonPutra Жыл бұрын
Sure will do!
@LalalL-j4n
@LalalL-j4n 2 ай бұрын
Very good video brother and very nice explanation 🫰
@AntonPutra
@AntonPutra 2 ай бұрын
thank you!
@Diego_UG
@Diego_UG Жыл бұрын
another question: how do we deploy a pod if its task or actions are executed internally and not by a request from a user?
@AntonPutra
@AntonPutra Жыл бұрын
do you mean like a data pipeline (kafka consumer/producer), you can automate and it's much harder and that's why most examples focused on request based apps :)
@domw2391
@domw2391 Жыл бұрын
I’m using argocd rollout but I don’t know what’s the main difference between native k8s deployment strategy and Argo d rollout
@AntonPutra
@AntonPutra Жыл бұрын
It uses default rolling-update unless you explicitly update it in the yaml
@rahulchowdhury279
@rahulchowdhury279 Жыл бұрын
ArgoRollouts can do canary and bluegreen
@hermanwahyudi6724
@hermanwahyudi6724 3 ай бұрын
what the diff between rolling update and canary?
@AntonPutra
@AntonPutra 3 ай бұрын
By 'canary,' we mean a controlled rollout of the new application version to a small subset of users, followed by testing that version. If the tests pass, we roll out this version to a wider audience. Kubernetes built in rolling update, gradually replacing the old version with the new one. You can potentially use health checks for testing, but it is not the same.
@hermanwahyudi6724
@hermanwahyudi6724 3 ай бұрын
@@AntonPutra how to set/config the rollout of canary to a small subset of user? just use small percentage? or use sticky session also?
@devopsRussia
@devopsRussia Ай бұрын
Можно помедленнее?
@AntonPutra
@AntonPutra Ай бұрын
horosho
@bx3556
@bx3556 11 күн бұрын
forget istio, it's chinese stuff. I wouldn't trust it, remember some of the Chinese software that had seriously amateurish vulnerabilities; it's super untrustworthy. Everything else in video is great.
@ol_suh
@ol_suh 5 күн бұрын
13 And no man hath ascended up to heaven, but he that came down from heaven, even the Son of man which is in heaven. 14 And as Moses lifted up the serpent in the wilderness, even so must the Son of man be lifted up: 15 That whosoever believeth in him should not perish, but have eternal life. 16 For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life. 17 For God sent not his Son into the world to condemn the world; but that the world through him might be saved. 18 He that believeth on him is not condemned: but he that believeth not is condemned already, because he hath not believed in the name of the only begotten Son of God. 19 And this is the condemnation, that light is come into the world, and men loved darkness rather than light, because their deeds were evil. 20 For every one that doeth evil hateth the light, neither cometh to the light, lest his deeds should be reproved. 21 But he that doeth truth cometh to the light, that his deeds may be made manifest, that they are wrought in God. (Jn.3:13-21)
@KapitalKashh
@KapitalKashh 5 ай бұрын
Fortnite!!
@kingschermann8161
@kingschermann8161 Жыл бұрын
'Promo SM'
@CloudWithUgur
@CloudWithUgur Жыл бұрын
you should enable "join" so we can support you
@AntonPutra
@AntonPutra Жыл бұрын
Thanks will do =)
Kubernetes Canary Deployment (Manual vs Automated)
10:59
Anton Putra
Рет қаралды 11 М.
Istio & Service Mesh - simply explained in 15 mins
16:09
TechWorld with Nana
Рет қаралды 678 М.
Quando A Diferença De Altura É Muito Grande 😲😂
00:12
Mari Maria
Рет қаралды 19 МЛН
Why no RONALDO?! 🤔⚽️
00:28
Celine Dept
Рет қаралды 99 МЛН
Sigma Kid Mistake #funny #sigma
00:17
CRAZY GREAPA
Рет қаралды 15 МЛН
Kubernetes Ingress Explained (2 Types)
8:54
Anton Putra
Рет қаралды 44 М.
Top 5 Most-Used Deployment Strategies
10:00
ByteByteGo
Рет қаралды 283 М.
Ollama on Kubernetes: ChatGPT for free!
18:29
Mathis Van Eetvelde
Рет қаралды 9 М.
MongoDB vs. PostgreSQL: Performance & Functionality
14:35
Anton Putra
Рет қаралды 28 М.
How to debug Kubernetes? (Deployments, Services & Ingress)
18:45
Anton Putra
Рет қаралды 10 М.
Kubernetes Deployment strategies | Blue-Green Deployment | Argo rollout | ADAM
25:07
Learn DevOps Easy (Wezva-Technologies)
Рет қаралды 14 М.
Quando A Diferença De Altura É Muito Grande 😲😂
00:12
Mari Maria
Рет қаралды 19 МЛН