ArgoCD Starter Guide: Full Tutorial for ArgoCD in Kubernetes
HTML-код
- Опубликовано: 3 июн 2024
- Want to learn GitOps? ArgoCD is GitOps for Kubernetes. In this practical tutorial video I teach you everything you need to know get started with ArgoCD on your Kubernetes cluster. Watch or follow along with your own Kubernetes cluster and let's implement ArgoCD!
🛍️ Amazon Store (homelab/youtube setup): www.amazon.com/shop/devopsjou...
☕ Buy me a coffee: www.buymeacoffee.com/bradmorg
📁 Code Available here: github.com/devopsjourney1/arg...
📘 Chapters:
00:00 What you will learn in this video
0:30 Helm Theory - Everything you need to know
1:33 Example Pipeline for ArgoCD
2:45 ArgoCD Disaster Recovery and Multi-Cluster Support
3:36 What we will do in the Lab
4:15 Installing ArgoCD, Portforward, Argo Password, Login
6:39 Deploying a Helm Application with ArgoCD
15:12 ArgoCD to Rollback applications
17:48 Deploying a Kustomize application with ArgoCD
19:44 Kustomize vs Helm Configmap Demonstration
25:13 Using ArgoCD CLI to create, sync, delete and troubleshoot
👨💻 Join our Discord Community of DevOps Engineers: / discord
#Kubernetes #ArgoCD #GitOps #Tutorial #GettingStarted #Declarative #Configuration #ContiuousDelivery #Deployment - Наука
Let me know what technology you are trying to learn next
monitoring argocd applications using promethues and grafana
How to deploy argo cd in EKS using terraform? and how we will access argo cd gui without comprimising security?
Argo Rollout is very confusing to setup, please do a tutorial on it.
Bitbucket and Bamboo 😢
Hi bro
Video is nice, as i have small, can you please do video of "install argocd using helm" please
Excellent Tutorial on ArgoCD !! - Absolute pleasure to listen to you. Gratitude !!
😍The Video. Clear concise explanations. I knew Kustomize before and I always wondered why config generator. Now I get the reason. Thanks for your explanations.
great simple and clear tutorial, thank you sir.
great tutorial to begin with. clear and concise.
Can you do another real time DevOps CI/CD lab? Really enjoyed your last one and found your mentorship insightful!
very nice explanation sir
Amazing video. Thank you.
Its too very good informative videos. thank you so much sir ❤
Great tutorial!!
you are the best!! no words to say :)
Around 25:00, when using Helm, you should use a checksum annotation of the config map in the deployment. Google "helm tricks automatically roll deployments", it'll be the first result from the Helm docs.
Great video, cheers!
You are a hero!
@DevOpsJourney Why wouldn't you just use a `checksum` annotation inside of your Helm deployment that digests the contents of the ConfigMap? When the contents of the ConfigMap changes, it changes the Deployment triggering a rolling update of the pods? Does ArgoCD do something different than stock Helm + K8s?
could you do tutorials on taskfile and just ?
very nice. Im from Belgium, i speak french, but i have all understand ;-)
I'm interested in a video showing ArgoCD - GitLab not deploying a web app, but an Apache Camel-K integration.
Would it be possible for you to make one? I think you will have the right reflexes directly on ArgoCD.
The Kustomize version is really interesting, especially when you don't want to create the entire helm ecosystem.
THANKS
Hi, at 10:37, you are saying one argocd installation can manage multiple kubernates cluster, but i don't understand how? because argocd is going to be installed in a specific cluster, so is there not one-to-one relationship between argocd and K8S cluster, if not how you can manage multiple K8S cluster?
There is a clusters tab. You can add other clusters into ArgoCD there. ArgoCD will just need credentials and a URI for connecting/managing other clusters
After performing the port forwarding, while trying to browse the url i am having issue as "unable to connect"
How can resources created using Terraform be managed using ArgoCD ?
Please explain Argo cd with helm charts
if it is helm chart and deployed by argocd, would I still able to use helm CLI to rollback and list etc? or I have to use argocd CLI then?
Use the argocli
I noticed that you are using an animated moving background which is really cool .. How do you create those?
I use Davinci Resolve, chose a gradient color then added icons and animated them in Fusion
@@DevOpsJourney Thanks
Thanks for the video, but apparently the most important piece is missing. When the actual application code changes, how do you build a new image (with a new tag other than "latest"? and how do you update the helm and kustomize configurations with that new image name:tag, and how do you trigger anrgo CD that application code has been changed, new image has been created and it (argo cd) should kick off and deploy the newest version? In your video you only showed what happens when the configuration part changes. So it is incomplete IMHO.
Thanks for the comment. I briefly mention this at 1:35. You would have two repositories, one for the image and one for the configuration. The CI/CD for the first repository would work like any other container pipeline, but at the end it would submit a PR to your config repository to update it with the new image tag.
I didn't work it into the practical portion of the video because I didn't want to overcomplicate things I just wanted to show the basics of ArgoCD. Most people when getting started with ArgoCD update the configuration repository manually with the new image tag.
I hope that makes sense. Thanks again for your feedback - I was thinking of doing a video of a complete Gitops flow that does exactly what you mentioned and your comment has inspired me to do that, so check back in a month or so :)
How to monitor these application using prometheus and grafana ??
I'm trying to deploy this on an M series mac, how can I specify the architecture of the nodes? I'm looking at the values.yaml file but I'm not sure how I can edit the files so it deploys as arm64
If running on a M series Mac the architecture of minikube will be arm64. The key is to make sure our images are ARM64 compatible. The deployment is using the image devopsjourney1/mywebapp:latest - which does support ARM64. I only recently shipped the ARM64-compatible image, so you may have an older one cached. try removing and re-pulling devopsjourney1/mywebapp:latest.
If that doesn't work then I will try creating a new image for you that is only ARM64. I think the issue might be that minikube doesn't always understand how to use multi-arch images properly
🎉🎉🎉
How does ArgoCD know or detect which Kubernetes clusters are available to deploy to?
1. Create a kubeconfig file containing the cluster's credentials.
2. Login to ArgoCD and navigate to the Clusters page.
3. Select the “Create Cluster” button at the top right.
4. Select the type of cluster you want to add and provide the necessary credentials.
5. When prompted, select the kubeconfig file you created in step 1. Click Create
CLI commands:
argocd cluster add dev-cluster1 --name dev-cluster1
argocd cluster list
nice nice nice nice ....
❤
There is an old tool to handle configmap changes, called stakater/Reloader
"kubectl create namespace argocd" gives me "The connection to the server localhost:8080 was refused - did you specify the right host or port?"
Hey there. this sounds like your minikube environment is not running. Make sure docker is running then do a `minikube start`
Inginix
Openshift vs kubernetes
cant we open Argocd using public IP instead of localhost ?
Yes create a kubernetes ingress and point it to the argocd server service
cute cuddle?
kube kutle lmao
pod stuck at pending in the early stages of this video..
You on a M series laptop?
@@DevOpsJourney asus g14 2023
@@DevOpsJourney using wsl (ubuntu 20)
You don't need kubernetes unless you are FMANG
yeah but a lot of companies want to be FMANG, and I like being paid by those companies :)
You need k8s in many companies, not only FMANG
Sometimes you dont have a choice. Some tools offer self managed option, and used kube platform.
hi, i tried the lab for kustom-webapp, i got this error: Unable to create application: application spec for kustom-webapp-dev is invalid: InvalidSpecError: Unable to generate manifests in kustom-webapp/overlays/dev: rpc error: code = Unknown desc = Manifest generation error (cached): `kustomize build /kustom-webapp/overlays/dev` failed exit status 1: Error: invalid Kustomization: json: cannot unmarshal string into Go struct field Kustomization.patches of type types.Patch. Please how can that be resolved?
Update line #5 of kustom-webapp/overlays/dev/kustomization.yaml file to "- path: replicas.yaml". It should work.
@@seadragonrock7235 Thanks