How to Install Terraform on Ubuntu Server 20.04 (Step by Step Tutorial)

How to Install Terraform on Ubuntu Server 20.04.  If you are into infrastructure management, then you must be aware of the tool known as “Terraform”. Yes, you heard it right. “Terraform” is a popular open source infrastructure tool that has been used worldwide. The main purpose of developing the Terraform article is to help our readers to unleash the terraform skillsets.

What is Terraform ?

Terraform is one of the popular open source infrastructure tools that is used as code software, first developed by HashiCorp Pvt. Ltd. Terraform is a user defined and data center infrastructure service provider that uses various HashiCorp languages, optionally it uses the JSON structure language rather than XML. The main purpose of using terraform platform is to build, change, and update the infrastructure functionality safely and effectively. 

Terraform also helps users to manage the existing service providers as well as customized in house solutions. With the help of Terraform configuration files, you can describe the components which are used to run a single software application or entire business data center. One of the popular Amazon products that makes use of the Terraform infrastructure code such as “AWS” to create, update, and modify the Amazon editions.

How Does Terraform Work?

As I said earlier, Terraform is a popular platform used for changing, application versioning, and updating infrastructure efficiently and safely. Terraform is built on a plugin based architecture. This kind of architecture enables the developers to extend the terraform features by adding new plugins or compiling the modified versions of already existing plugins.

Terraform is mainly divided into two parts, they are:

  • Terraform core
  • Terraform plugins

Firstly, Terraform core uses the RFCs (remote functional calls) to establish communication between the plugins and also provides multiple ways to load and discover various plugins to use. Terraform plugins explore their beneficial features for specific amazon services such as AWS, and provisioners such as “BASH” files.

Terraform core is a statistically written compiled binary structure that uses the Go programming language. The compiled binary is nothing but a Command line interface (CLI).

The primary roles of the Terraform core include are:

  • It allows users to make use of Infrastructure as a code for reading and interpolating the configuration files and function modules.
  • Act as a resource state management.
  • Constructing the resource graph.
  • Execution of business plans.
  • Establishes communication over the RFCs.

The next component is Terraform plugins. The terraform plugins are written in Go programming language that invokes the binary executable files and transmits over RPC. All providers and provisioners are used in Terraform configuration as plugins. The terraform plugins are executed as a separate process and communicate with the binary through RPCs.

The primary roles of the Terraform plugins are as follows:

  • Initialize the binary libraries to make API calls.
  • Easy to authenticate with various infrastructure providers.
  • Define the resource that performs specific tasks.

Advantages of Terraform (Pros)

  • The terraform can be used as reproducible infrastructure management.
  • Reduces the production incident that arises due to environment configuration errors.
  • Increases the velocity and reliability.
  • Eliminates the wait time for environment provisioning.
  • Helps in cleaning the work environment.
  • The business benefits of defining infrastructure as code reduce the costs of system management and also lower the risk of unexpected problems that arise when modifications of infrastructure are implemented.

There are two easy methods to install Terraform on Ubuntu 20.04. In this post, we will show you both options one by one.

1. Install Terraform on Ubuntu 20.04 using APT

APT also known as an “Advanced Packaging Tool” is a package manager for Debian based distributions. It allows you to install and manage packages on Debian and Ubuntu operating systems. In this section, we will show you how to install Terraform using apt.

First, install the required dependencies using the following command:

				
					apt-get install wget curl unzip software-properties-common gnupg2 -y
				
			

Next, download and add the HashiCorp signed gpg keys to your system:

				
					curl -fsSL https://apt.releases.hashicorp.com/gpg | apt-key add -
				
			

Next, add the HashiCorp repository to the APT using the following command:

				
					apt-add-repository "deb [arch=$(dpkg --print-architecture)] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
				
			

Next, update the repository using the command given below:

				
					apt-get update -y
				
			

Finally, install the Terraform by running the following command:

				
					apt-get install terraform -y
				
			

Once the Terraform has been installed, verify it using the following command:

				
					terraform -v
				
			

You will get the Terraform version in the following output:

				
					Terraform v1.1.2
on linux_amd64
				
			

2. Install Terraform Manually

You can also install the Terraform manually by downloading it from the source. In this method, you can download the specific or latest version of Terraform to your system. You will also get the flexibility to install more than one version of Terraform.

First, download the latest version of Terraform source using the following command:

				
					wget https://releases.hashicorp.com/terraform/1.1.2/terraform_1.1.2_linux_amd64.zip
				
			

Once the download is completed, extract the downloaded file using the following command.

				
					unzip terraform_1.1.2_linux_amd64.zip
				
			

Next, copy the Terraform binary from the extracted file to the /usr/bin/ directory:

				
					cp terraform /usr/bin/
				
			

Next, verify the Terraform version by running the following command:

				
					terraform -v
				
			

You will get the following output:

				
					Terraform v1.1.2
on linux_amd64

				
			

Install the "auto-complete" Terraform Extension

Terraform provides auto-complete features that allow you to list all sub-commands after pressing the TAB key twice. In order to activate the auto-complete feature, you will need to install the autocomplete extension to your system.

You can install it by running the following command:

				
					terraform -install-autocomplete
				
			

Next, run the following command to activate the auto-complete features:

				
					source ~/.bashrc
				
			

To check the Terraform auto-complete feature, run the terraform command and press the TAB key twice:

				
					terraform 
				
			

You should see all sub-commands in the following output:

				
					apply         env           get           init          output        push          state         untaint       workspace     
console       fmt           graph         login         plan          refresh       taint         validate      
destroy       force-unlock  import        logout        providers     show          test          version
				
			

Uninstall Terraform from Ubuntu 20.04

If you want to remove Terraform from your system, run the following command:

				
					apt-get remove terraform -y
				
			

You can also remove it manually by running the following command:

				
					rm -rf /usr/bin/terraform
				
			

How to Install Terraform on Ubuntu Server 20.04 Conclusion

In this guide, we explained how to install Terraform using two methods. You can now choose your preferred method to install Terraform on Ubuntu 20.04 or check out Terraform cloud server. For more information, visit the Terraform documentation page.

Avatar for Hitesh Jethva
Hitesh Jethva

I am a fan of open source technology and have more than 10 years of experience working with Linux and Open Source technologies. I am one of the Linux technical writers for Cloud Infrastructure Services.

5 1 vote
Article Rating
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x