Full Tutorial ArgoCD and Kustomize for GitOps Deployments | Part 1
Ғылым және технология
Day 43 of #100DaysOfKubernetes, in which we highlight
* What is ArgoCD and how would it interact with Kustomize
* How do we deploy ArgoCD
* Setting up Kustomize in our example repository
* How do we tell ArgoCD to deploy and manage our Kustomize files
Resources
* ArgoCD Website argoproj.github.io/argo-cd/
* Previous video on ArgoCD • Full Tutorial GitOps &...
* Kustomize Website kustomize.io/
* Previous video on Kustomize • YAML made simple with ...
The documentation with the commands can be found here at the end: devops.anaisurl.com/kubernetes
⌚Timestamps⌚
00:00 - Intro
01:30 - Our cluster & benefits of the setup
09:28 - Setting up ArgoCD
12:43 - Using Kustomize
17:45 - Telling ArgoCD about Kustomize
21:32 - What did we do?
25:35 - Outro
Community
✨Discord Community community.100daysofkubernetes.io
✨Checkout the video introduction of the challenge: • Join me for: #100 Days...
Throughout the challenge, I am
✨ Continuing the weekly DevOps Diary newsletter anaisurl.com/tag/devops/
✨ Follow me on Twitter for all updates (and memes) / urlichsanais
Пікірлер: 44
Jesus Christ! This is EXACTLY what I am looking for to get the stuff I need to get done at work. ... THANK YOU. Please, more of this!
your efforts are very much appreciated Anais and thanks to sharing such valuable information.
Great video, just starting my journey and this way helpful and easy to follow!
Thank you Anais for choosing this topic 👏🏻👏🏻
@AnaisUrlichs
2 жыл бұрын
Feel free to propose topics :) and thank you for the comment
Thanks for the detailed video, Any idea when we can expect Part 2?
Amazing breakdown !!
it was helpful! Thank you!
Hey Anais, great video. I learned something today ;) Just a question: you have your kustomize/manifests in a specific branch, called kustomize. Is that some kind of best practice? If so, do you know why? Thanks. I normally use a folder in the main branch called pipeline for CICD stuff and another called k8s for the manifests or helm charts.
Hi, Anais cool&perfect 🙏
really amazing video thanks a lot
@AnaisUrlichs
2 жыл бұрын
thank you :)
Hey Anais, great explanation and a really important topic to touch upon. Just a tiny feedback, the music background was a little bit too much for me. But again I very much liked the content and everything.
@AnaisUrlichs
2 жыл бұрын
Heya, thank you so much for the feedback that is great to know ☺️ I wil be more cafeul in the future
@Anais Thanks for the video. Can you please upload the part 2 where you are using git webhook to automate the process please?
Nice Explanation!, where is Part 2?
It would be great if you could create a playlist of this series - 100 days of k8s
@AnaisUrlichs
2 жыл бұрын
Heya, there actually is already a playlist: Hope this helps kzread.info/head/PLWnens-FYbIpUpmiiNYfkqTZQUYppGMFV
Love your videos! A small suggestion: maybe it's only me, but I think the music is a tad bit loud and becomes a bit distracting.
@AnaisUrlichs
2 жыл бұрын
thank you for the feedback, I will make it more quiet or leave it out :D just experimenting a bit so your feedback is really valuable
@farzadmf
2 жыл бұрын
Just keep doing what you're doing. It's great 👍
good video, can u show argocd using image docker with this example pls :)
Thanks. What is the tool where you draw diagrams? 😊
Thanks Anais for great video , could you please make on tutorial with helm and argocd ? And any reason why not help and why kustomize ?
@AnaisUrlichs
2 жыл бұрын
Heya, I used Helm Charts in my previous video on ArgoCD :) I could make a video on why you would want to use Helm and in which cases kustomize etc. would you be interested in that?
@mtik000
2 жыл бұрын
@@AnaisUrlichs That would be fantastic, actually!
@anais any suggestions as to why the status would be unknown for argocd kustomization.yaml? Kustomize build command works fine locally
Hi there! Where is part 2? Quite interested in the GitHub actions part
@dhano6sk
2 жыл бұрын
check it out kzread.info/dash/bejne/ZYB2rraAlrnbmpc.html
Great Video ! Thanks for sharing the knowledge. But it would have looked better without background music. :)
@AnaisUrlichs
2 жыл бұрын
Thank you for the feedback. That is me experimenting around a little but got similar feedback a few times :)
I wonder how would you incorporate this approach into CI build pipeline? I think right now you assume that image building and manifest creation is done locally?
@AnaisUrlichs
2 жыл бұрын
So the plan is to have the following steps 1. Build container image and push to registry 2. Update the image tag referenced in Kustomize 3. Run Kustomize build 4. ArgoCD will automatically sync the changes from Git with the in-cluster resources I will show that in my next video
@havefuntrading6263
2 жыл бұрын
@@AnaisUrlichs thanks, that would be interesting to watch. I would also be keen to know your opinion on using a separate config repo for argocd. Right now any change to manifest files (even adding a comment) would result in new image build and deployment which might not be desirable in production like setups.
@mtik000
2 жыл бұрын
@@havefuntrading6263 The way my company has it set up, is that CI is responsible for testing and building images. In the same project repo, we have a "deployments" folder and manifests for each environment (sandbox, staging, and production). To kick off a deployment to sandbox, for example, someone commits an update to the image tag to "deployments/sandbox/values.yaml". ArgoCD in the sandbox environment is configured to look at that `values.yaml` file, sees the change, and deploys it. Promoting to a higher environment (e.g. sandbox to staging) is a matter of updating "deployments/staging/values.yaml".
@havefuntrading6263
2 жыл бұрын
@@mtik000 thanks for the explanation. When you update a deployment file to e.g. trigger deployment to staging will this also trigger the CI build and create new image version?
@mtik000
2 жыл бұрын
@@havefuntrading6263 Not the way we do it, no. CI builds the images during merges of source code to the main branch. When we want to "promote" a release to sandbox, e.g., a dev selects an image tag and manually commits the change to "deploy/sandbox/values.yaml" on the "main" branch, then merges that to the "sandbox" branch. ArgoCD (deployed on our sandbox cluster) sees _that_ change, and does the deploy. Once that tag is tested, the same tag is committed to "deploy/staging/values.yaml" on the "main" branch and merged to the "staging" branch. ArgoCD (deployed on our staging cluster) sees _that_ change, and does the deploy. To be honest, it's a little confusing dealing with the branches and the directories. We just have to remember to commit to the appropriate file in the main branch and then merge it to the branch that ArgoCD is watching.
Hiii, I need your help to convert helm charts into kustomize using Jenkins pipeline script.
hola
Merci !
Really helpful. Thanks!