How to design a Deployment Pipeline (GitOps)
ฝัง
- เผยแพร่เมื่อ 29 ต.ค. 2023
- Learn how I design Continuous Deployment Pipelines. In this video I diagram out the major components and considerations taken when creating deployment pipelines for modern software companies that implement GitOps principles.
DevOps Whiteboarding Playlist: • DevOps - Whiteboarding...
Diagram created using www.eraser.io/
View my diagram: app.eraser.io/workspace/d0mh9...
Design a CI/CD Pipeline: • How to design a modern...
ArgoCD Tutorial: • ArgoCD Starter Guide: ...
GitOps Explained: • Explaining GitOps: How...
☕ Buy me a coffee: www.buymeacoffee.com/bradmorg
🛍️ Amazon Store (Homelab/TH-cam Setup): www.amazon.com/shop/devopsjou...
☁️ $200 Digital Ocean Cloud Credits: m.do.co/c/adc24155a741
Sponsorship note: I am a sponsored collaborator for the eraser product. - วิทยาศาสตร์และเทคโนโลยี
Playlist: th-cam.com/play/PLnFWJCugpwfwQgjlSg_-csiJbpBIze2qa.html
View my diagram: app.eraser.io/workspace/d0mh9JjnYl2TWetXPsXV
It would be good if you can provide a complete yaml script as per your diagram
I took a DevOps course and your videos helping very much to understand the subject.
I love your videos man, very interesting. Thank you for sharing your knowledge with us.
I enjoy the simplicity of your explanation of CICD pipeline projects.
amazing explanation, looking forward for more related content!
Thanks for this presentation!
Great tutorial as always
It would be good if you can provide a complete yaml script as per your diagram
Simple, yet detailed. i wish i can like this video more than once. you've definitely earn a sub
Is it possible you create a video putting this theory and architecture into practice using Jenkins or another automation tool?
Did you find any answers ?
best video and thank you for that
Why do you recommend to have a dedicated repo for your configuration? What about having a /kubernetes folder in your application repository instead?
Great!
Great job and the diagram really helps.CI refers to Continuous integration and CD refers to Continuous deployment/delivery, I guess you mistakenly used the "CICD" term as Continuous integration and the Deployment pipeline as CD.
How do you handle multiple deployments being integrated and deployed at very short intervals? 😅
I use a combination of ArgoCD + ArgoRollouts for that. I have videos on both if you are interested
Hi, I am confused why is the "Deployment Pipeline" not part of the "CD" in "CI/CD" pipeline?
It's actually CI/CD&CD. Continuous Delivery & continuous deployment. Delivery just means making the artifacts available, deployment means actually deploying to those environments
@@DevOpsJourney Sure that makes sense. Thanks for the excellent videos.
What if you have two app repos one for frontend and one for backend and you’re trying to accomplish this, how would you deploy both at the same time? Ensuring the new frontend can hit the new backend.
You would deploy your new backend first, then you would deploy the front-end. New backend should be compatible with the old front-end, or you would have to just run two versions of it during the transition
Why have a separate repo when you could have it all in the same repo and have the workflows separate?
best
my doubts for canary deployment
- what would happen if there are different apps across multiple node?
- in case of any issues are we going to rollback the whole deployment?
- what if multiple teams have their changes in the same deployment? we can't rollback others changes for our failure.
He didn't go a lot into detail there.
I think you would roll back the whole deployment and "all" the changes. However, this would normally be done in a microservice environment where you don't have combined changes of multiple teams and only very small incremental changes instead of huge release packages.
@@user-dq7vo6dy7g deployments generally are multi app dependent. like at least UI changes also with backend changes. if we follow canary deployment, we will have to rollback those as well. great video though. I might be missing few things. need to read more on this.
Also consider you could use something like launchdarkly to feature flag changes and turn them on gradually after the release is completed and roll back the feature if something breaks
First of all, LOVE the content your are providing. I have already learned so much.
I have a question regarding your setup though. I have implemented your Windows setup from this video th-cam.com/video/XBU_6OSlgyI/w-d-xo.html
Now I have a bit of a challenge when accessing resources behind VPN. My Corp. is using Split tun. OVPN. I am using windows client and everything, WSL included, works great.
We also work with a client that forces us to use their Fortinet full tunnel VPN. When I install the client on the Windows layer, my WSL is unable to connect to the internet.
I am thinking about spinning up a docker and install the VPN client inside. Not sure if I should install my tools there too, or "somehow" use it as a proxy for the WSL.
Any ideas, what would be the best approach to solve this issue?
Hmm I'm actually not sure what the best solution for you would be. I found this, there seems to be issues with WSL2 when using Full tunnel VPNs so you are not alone.. github.com/microsoft/WSL/issues/4277
Put some effort into making playlists.
I have not found one and no, I will not be scrolling to your previous video. Bye
You are completely right. I feel like an idiot for not doing this. Here's a link to a playlist I just created th-cam.com/play/PLnFWJCugpwfwQgjlSg_-csiJbpBIze2qa.html
Will add it to the video description and create/maintain more playlists in the future. Thanks again for the suggestion!