How to Effectively Use Ansible, Terraform, and Argo CD in a Kubernetes Setup?

0
20
Asked By TechWhiz84 On

I'm diving into the roles of Ansible, Terraform, and Argo CD within a modern Kubernetes and GitOps environment and want to ensure I'm on the right track. As far as I gather:

- Terraform is primarily for infrastructure provisioning, like creating VMs, managing networks, and setting up cloud resources, including Kubernetes.
- Ansible is focused on server configuration, handling things like OS packages, files, and services, typically set up before Kubernetes is in play.

Now, I need clarity on where Argo CD fits into all this:

1. Once I have a Kubernetes cluster (like EKS or k3s) set up with Terraform, what's the best practice for installing Argo CD? Should I use the Terraform Kubernetes provider, Ansible, or just stick with a straightforward `kubectl apply`?
2. Is the usual order of operations:
- Terraform for infrastructure and cluster setup,
- a one-time bootstrap using `kubectl apply` for Argo CD,
- and then let Argo CD take charge of managing the rest in the cluster?
3. In my plan, I'm thinking to initially set up a base Argo CD and then utilize it to manage the Argo CD Vault Plugin as well.

I want to avoid overlapping tools and stick to what's actually practiced in the field, rather than what's just technically feasible. Would love to hear how others approach this in real-world scenarios!

5 Answers

Answered By ScriptSavvy93 On

While some mix in Ansible, in our experience, just having Terraform for provisioning and Argo CD for application lifecycle management works best. Ansible feels like overkill for Kubernetes environments, especially with Argo CD handling a lot of that.

Answered By CloudCrafter99 On

We usually handle Argo CD installation via a Helm chart after deploying our managed Kubernetes cluster with Terraform. After that, Argo CD manages everything else within the cluster smoothly.

Answered By InfraGuru28 On

For us, Terraform sets up all infrastructure, and we're using kubectl to install Argo CD directly. It's quite effective since Argo CD can manage multiple clusters if you need that. Ansible hasn't been part of our pipeline at all.

Answered By GitGenius56 On

Definitely go with GitOps practices; use Terraform for the infrastructure and bootstrap Argo CD right after. Minimal use of Ansible is necessary unless you have specific initial configurations that need doing.

Answered By DevOpsNinja07 On

I've found using Terraform for infrastructure and a Helm chart for Argo CD is a solid combination. Once installed, Argo CD manages its own upgrades via manifests in a Git repository, simplifying our processes.

Related Questions

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.