What is Terraform?

Terrafom is a tool for the efficient and secure provisioning of everything from individual resources to complex infrastructures.
Terraform can control all common cloud providers and in-house solutions.

The configurations of the resources are saved in files.
Desired changes are generated by Terraform in an execution plan, validated and only then implemented.
This allows you to ensure in advance which dependent resources will also be changed.

Terrraform is able to provision low- and high-level components.
Low-level components are server instances, storage and network.
High-level components are DNS entries or SaaS features.

5 technical business cases that are possible with Terraform….

Use infrastructure as code

With the HashiCorp Configuration Language, Terraform offers a code language for planning, operating and changing resources and infrastructures.
The status of the components is also saved and changes can be easily tracked.
To save valuable time when developing additional resources and infrastructures, the code can be reused for other projects.

Perform multi-cloud deployment

Implementing multi-cloud deployments is a major challenge as many existing infrastructure management tools are cloud-specific.
Terraform is cloud independent and allows to manage multiple providers and handle overlapping dependencies with a single configuration.
This simplifies management and orchestration and helps to build large multi-cloud infrastructures.

Shorten the provisioning time of resources

Traditionally, the VMs and resources are clicked together via the portal.
For complex landscapes, this can take days and is also prone to errors.
With Terraform, resources can be fully provisioned in just a few minutes.
Multiple cloud services can also be provided in a standardized manner.

Reduce development costs

With Terraform, the knowledge of how a service or resource should be set up and scaled can be “codified” in a configuration.
Terraform configurations can be shared within an organization so that teams can use the configuration as a black box and use Terraform as a tool to manage their services.

Self-Services

For larger organizations, it becomes difficult for a central operations team to manage a large and growing infrastructure.
Instead, it becomes more attractive to create a “self-serve” infrastructure that allows product teams to manage their own infrastructure using tools provided by the central operations team.

5 technical functions that are possible with Terraform….

Perform Windows domain join

Terraform can perform a domain join.
This has the advantage that you can log in with a domain admin user immediately after provisioning a new VM and complete the follow-up work for the system.

Store passwords and secrets

Terrafrom can generate passwords and write them to an Azure KeyVault.
This ensures that the passwords for the login user are not displayed natively in the code and that only authorized users have access to them.

Deploy WebService

With Terrafrom it is possible to roll out a VM with an active web server such as Ngix.
This allows you to react very agilely to changing test scenarios of the department and to provide a test scenario several times with the identical code

Activate firewall rules

With Terraform, you can define firewall rules once and activate them across all relevant resource groups via the NetworkSecurityGroups.
This saves you the time and effort of setting identical rules for each resource group.

Distribute VM Backup Policy

With Terraform you can distribute the configured backup policy in the shortest possible time and thus ensure that all Vm resources are properly included in the backup.