3 ms·
This is not a bad high level description. I asked myself almost the exact same question as the OP a year ago, though I had prior experience with Ansible, so kn
by dynamite-ready 6y ago
This is not a bad high level description.
I asked myself almost the exact same question as the OP a year ago, though I had prior experience with Ansible, so knew what I was getting into.
My advice to the OP, as it's all new to you, is to learn Ansible. It will require more work than Terraform, but Ansible can be made to perform the same functions as Terraform, and a heck of a lot more stuff that will prove useful to you, if you're looking into how to provision cloud instances.
That makes Ansible sound like it's hard work, but it's actually quite the opposite.
It's surprisingly easy to do something useful with it.
Ansible is probably best described as a scripting environment / DSL combination to help you control multiple machines remotely for build and provisioning purposes.
You have 2 separate remote machines, and want to install Postgres on both of them? Use Ansible.
Want to install GIT and then pull your project repo onto two machines? Use Ansible.
Perhaps you have 3 machines, want git on all 3, but Postgres on only one of them?
Ansible again.
Where there is an overlap with Terraform, is that Ansible can also be used as an interface to control AWS/Google cloud/Whatever services, which is Terraform's sole purpose. Terraform provides a cloud platform agnostic interface to allow you to spin up new cloud instances, and perform some provisioning tasks, but it will only skim the surface of what you can do with dedicated Ansible scripts.
- ejanus 6y agoI learnt a bunch ...I will build up my knowledge from Ansible first.