1HFbf3qWlekiKcIhCAHolSA R5RLI8

Get started with Terraform

Introduction to Terraform

Terraform is an open-source infrastructure as code (IaC) tool that allows you to manage your cloud infrastructure using a declarative configuration language. With Terraform, you can define and manage your infrastructure as code, which makes it easy to version control and reproduce your infrastructure changes. Terraform is compatible with multiple cloud providers, including AWS, Azure, and Google Cloud, among others.

Step 1: Installing Terraform

To install Terraform, you will need to download the binary package for your operating system from the official Terraform website. Terraform supports multiple operating systems, including Linux, MacOS, and Windows. Once you have downloaded the package, extract it to a directory of your choice. You will then need to add the directory to your system’s PATH environment variable.

To check if Terraform is installed correctly, open a new terminal window and run the terraform version command. If Terraform is installed correctly, you should see the version number displayed.

Step 2: Creating a working directory

Create a new directory where you can store your Terraform files. This can be done using the mkdir command on your terminal. Once the directory is created, navigate to the directory using the cd command.

Step 3: Writing a Terraform configuration file

In the working directory, create a new file with an .tf extension (e.g., main.tf) and add your Terraform code to this file. For this example, we will create a simple AWS EC2 instance.

provider “aws” {
region = “us-west-2”

resource “aws_instance” “example” {
ami = “ami-0c55b159cbfafe1f0”
instance_type = “t2.micro”

In this example, we are specifying the provider as AWS and setting the region to us-west-2. We then create an EC2 instance using the aws_instance resource, setting the instance type to t2.micro and using an AMI ID for Ubuntu 18.04.

Step 4: Initializing the working directory

Before Terraform can manage your infrastructure, it needs to initialize the working directory. This is done using the terraform init command in your working directory. This command downloads any required providers and sets up the working directory for Terraform.

Step 5: Planning and previewing the infrastructure changes

Once the working directory is initialized, you can run the terraform plan command to preview the changes that Terraform will make to your infrastructure. This command creates an execution plan that shows the changes that Terraform will make to your infrastructure. In our example, running the plan command should show that Terraform will create an EC2 instance.

terraform plan

The output of the plan the command will display any new resources that Terraform will create, any resources that will be modified, and any resources that will be deleted. The command will also display any variables that Terraform will use during the applying step. This plan can help you verify that Terraform is creating the expected resources and help you troubleshoot any errors that might occur during the application step. Once you are satisfied with the plan, you can move on to the next step, which is applying the changes.

Terraform will perform the following actions:

# aws_instance.example will be created
+ resource “aws_instance” “example” {
+ ami = “ami-0c55b159cbfafe1f0”
+ arn = (known after apply)
+ associate_public_ip_address = (known after apply)
+ availability_zone = (known after apply)
+ cpu_core_count = (known after apply)
+ cpu_threads_per_core = (known after apply)
+ ebs_optimized = (known after apply)
+ get_password_data = falseStep 6: Applying the changes

Once you are satisfied with the plan and preview, you can apply the changes by running the terraform apply command. This command creates the resources specified in your configuration file. In our example, this command will create an EC2 instance in AWS.

terraform apply

Terraform will ask for confirmation before applying any changes. Type yes to proceed.


aws_instance.example: Creating…
aws_instance.example: Still creating… [10s elapsed]
aws_instance.example: Still creating… [20s elapsed]
aws_instance.example: Still creating… [30s elapsed]
aws_instance.example: Creation complete after 36s [id=i-0123456789abcdef0]

Apply complete! Resources: 1 added, 0 changed, 0 destroyed.Step 7: Verifying the resources

Once the apply the command is completed, and you can verify that the resources have been created as expected by logging into your AWS account and navigating to the EC2 dashboard to see the instance that was created.

That’s it! You have successfully installed Terraform and created a sample AWS EC2 instance using Terraform. You can continue to develop your infrastructure by writing more Terraform code, running plan and apply commands as needed.

In conclusion, Terraform provides an efficient and reliable way to manage your cloud infrastructure as code. With Terraform, you can easily automate infrastructure deployment, version control, and auditing. You can start exploring more advanced Terraform features and use cases to optimize and scale your cloud infrastructure.

Leave a Comment

Your email address will not be published. Required fields are marked *

five × three =