In today digital world, whatever tool or tech we use, it is used over some platform, mostly over the Cloud Platforms.
If we want to automate the cloud platform Or the infrastructure then the role of terraform comes into play....
Either we can SetUp our own infrastructure Or we can get it from the 3rd party or the cloud service providers ( Public Cloud ).
So the point here is that if we want our infrastructure to be automated then this can be done with the help of code,this concept of managing the infrastructure is known as the infrastructure-as-code .
Suppose we have a use case in which a company wants to change or migrate its cloud providers to another, now the challenge here is that each and every platform has its own way or language for automation and it is difficult to learn all of them.
To solve this kind of challenge we need a common language or the script that can be used to automate any kind of the platform.
Terraform is one tool solution for all the providers or the platforms. By just using the terraform we can control any of the cloud or the providers.
Terraform is just a software that we can install in our system, that system is known as the workstation.
Terraform can talk to any of the platforms (AWS, Azure, kubernetes) using the language known as the Hashicorp Configuration language.