In this post, I’m going to show you how to install Terraform, a tool for building, changing, and versioning infrastructure safely and efficiently.
Terraform enables predictable and consistent provisioning of IBM Cloud platform, classic infrastructure, and VPC infrastructure resources by using a high-level scripting language while enabling Infrastructure as Code.
During your journey to the cloud, Terraform will greatly help you manage your IT resources and assist in building cloud native infrastructure by offering Infrastructure as Code. Infrastructure is described using a high-level configuration syntax. This allows a blueprint of your data center to be versioned and treated as you would any other code. Additionally, infrastructure can be shared and re-used.
To learn more about Infrastructure as code, see the following video:
How to install Terraform on a Linux Virtual Server Instance in IBM Cloud
The installation has four main components:
- Install the Terraform executable
- Install the IBM Cloud Plugin
- Install the IBM Cloud Command Line Interface (or CLI)
- Install the IBM Cloud CLI VPC Plugin
Prerequisite
Create a Linux Virtual Server Instance (VSI) to use as our system that we want to install Terraform. The advantage of using the VSI as your system to perform Terraform work is that you do not need to install products onto your local machine. Moreover, you can share the VSI with peers who need to do Terraform work without forcing them to install Terraform on their local machines. Lastly, the VSI we will create will cost pennies a day to own in IBM Cloud.
- Log into your IBM Cloud account and provision a new VSI with the following specifications:
- Balanced Profile with 2vCPUs and 4GB RAM
- Centos 7.x Operating System
- SSH into the VSI to begin installing Terraform as guided below. If you are using Windows, you can use a great freeware program called Putty.
Note: We will install Terraform version 0.11.14 and the IBM Cloud Plugin version 0.17.3 because those are the versions as of this writing.
Step 1: Install Terraform
- Create the directory with the following command:
mkdir terraform && cd terraform
- Then, download Terraform using this command:
wget https://releases.hashicorp.com/terraform/0.11.14/terraform_0.11.14_linux_amd64.zip
- Install a program called ‘unzip’ in order to unpack the download by entering the following:
Sudo yum install unzip
- Once installed, unpack the Terraform download:
unzip terraform_0.11.14_linux_amd64.zip
- Set the Linux path to point to Terraform with the following command:
export PATH=$PATH:$HOME/terraform
- Test that Terraform is installed by typing this command:
terraform
Step 2: Install IBM Cloud Plugin v0.17.3
- Download the IBM Cloud Plugin v0.17.3 for Linux:
wget https://github.com/IBM-Cloud/terraform-provider-ibm/releases/download/v0.17.3/linux_amd64.zip
- Unpack the download:
unzip linux_amd64.zip
- Create a hidden directory for the IBM Cloud Plugin:
mkdir -p $HOME/.terraform.d/plugins
- Move the IBM Cloud Plugin to that new hidden directory:
mv terraform-provider-ibm* $HOME/.terraform.d/plugins/
- Move to that hidden directory and run the IBM Cloud Plugin to be sure it is installed:
cd $HOME/.terraform.d/plugins && ./terraform-provider-ibm_v0.17.3
Step 3: Install IBM Cloud Command Line Interface (CLI)
- Use the following command to install the IBM Cloud CLI:
curl -fsSL https://clis.cloud.ibm.com/install/linux | sh
Step 4: Install IBM Cloud Plugin
- Run the following command to install the IBM Cloud Plugin:
ibmcloud plugin install vpc-infrastructure
- Set the IBM Cloud Plugin to use our IBM Cloud Account by giving it your API Key:
ibmcloud login --apikey <your key>
- Note: To create an API Key, go to the IBM Cloud account and choose Manage > Access(IAM) and click the Create an IBM Cloud API Key button.
- Set the IBM Cloud Plugin to use either Gen1 or Gen2 of IBM Cloud VPC:
ibmcloud is target --gen 1
ORibmcloud is target --gen 2
Learn more
To learn how to use Terraform, please visit the IBM Demos site on Virtual Private Cloud (VPC) on IBM Cloud for videos and product tours.
To install Terraform on a different Operating System, please follow the links below for each step.