CODE

【TIPS】tfenvでTerraformのインストールからバージョン管理までをマスターしよう

terraform-install-tfenv-usage-command-list

 

エンジニアライフスタイルブログを運営しているミウラ(@miumiu06171)です。

 

普段はフリーランスでシステムエンジニアをしております。

 

今回は、tfenvのインストールからtfenvでTerraformのバージョン管理を行う方法をまとめました。

 

 

Terraformとは

 

Terraformとは、インフラ環境を効率的に構築できるIaC(Infrastructure as Code)ツールです。

 

Terraformでコードを記述することで、インフラ環境を自動的に構築することが可能です。

 

HashiCorp社が開発したオープンソースのサービスになっています。

 

 

Terraformメリット

 

  • 誰が構築しても同一のインフラ構成で構築できる
  • 工数削減
  • Gitによるバージョン管理に対応

 

 

tfenvとは

 

tfenvとは、Terraformのバージョン管理を行い、CLI(コマンドラインインターフェース)でバージョンを切り替えることが可能なツールです。

 

 

tfenvインストール

 

tfenvのインストール手順を紹介します。

 

tfenvインストール

 

まずは、以下のコマンドを実行し、tfenvをGitHubからクローンしてきます。

 

 

 

tfenvコマンドをPATHに通す

 

次にtfenvコマンドをPATHに通します。

 

以下は、bashを使っている場合に ~/.bashrcファイル にPATHを追加する例になります。

 

 

上記 export文を ~/.bashrcファイルに追記してください。

 

 

tfenvコマンド確認

 

PATHを追加できたら、bashを起動し直した後、bash上でtfenvコマンドを実行し、以下のようにコマンドリファレンスが出力されたらインストール完了です。

 

 

 

tfenvを使ったTerraformのインストールから使い方まで

 

さきほどインストールしたtfenvに対して、Terraformをインストールする方法から使い方までを紹介します。

 

インストール可能なTerraformバージョンを確認(tfenv list-remote)

 

インストール可能なTerraformバージョンを確認するには、以下のtfenvコマンドを実行します。

 

 

 

任意のTerraformバージョンをインストール(tfenv install)

 

Terraformをインストールするには、以下のtfenvコマンドを実行します。

 

 

バージョン番号は、前述の「tfenv list-remote」コマンドで出力されたバージョンから、バージョンが新しい安定版を選択することをおすすめします。

 

 

上記は、 Terraform 1.4.6をインストールしたときのコマンド例になります。

 

 

特定のTerraformバージョンをアンインストール(tfenv uninstall)

 

tfenvにインストールした特定のTerraformバージョンをアンインストールするには、以下のコマンドを実行します。

 

 

下記は、 Terraform 1.4.6をアンインストールしたときのコマンド例になります。

 

 

 

使用するTerraformバージョンを指定・変更・切り替える(tfenv use)

 

tfenvでインストールした複数のTerraformバージョンの中から、使用するTerraformバージョンを指定・変更・切り替えるには、以下のコマンドを実行します。

 

 

下記は、 Terraform 1.4.6に切り替えるときのコマンド例になります。

 

 

 

インストールしたTerraformバージョンを確認

 

tfenvでインストールしたTerraformバージョンを確認するには、以下のコマンドを実行します。

 

 

 

.terraform-versionファイルでプロジェクトで使用するTerraformバージョンを指定

 

プロジェクトルートに.terraform-versionというファイルを配置し、このファイルにTerraformバージョンを指定すると、そのTerraformバージョンが優先して使用されます。

 

 

これにより、プロジェクトメンバー内で共通のバージョンを容易に使用することができます。

 

 

Terraformでおさえておくべきドキュメント

 

 

HCL2ドキュメント

 

HCL2とは、HashiCorp Configuration Language 2の略で、HashiCorp社の設定言語です。

 

HCL2の仕様を理解するためのドキュメントは、以下のURLで確認できます。

 

https://developer.hashicorp.com/terraform

 

 

 

Terraform CLI

 

Terraformのコマンドを理解するためのドキュメントは、以下のURLで確認できます。

 

https://developer.hashicorp.com/terraform/cli

 

 

Provider

 

AWS/Azure/GCPなど利用するProviderと連携するためのドキュメントは、以下のURLで確認できます。

 

https://registry.terraform.io/namespaces/hashicorp

 

 

まとめ

 

いかがでしたでしょうか。

 

「Terraformという言葉は聞いたことあるけどよくわからない」という方には、本記事を参考にtfenvの使い方からマスターしていただくとよいと思います。

 

 

【関連記事】

 

【TIPS】Terraformコマンド・環境構築方法・前提知識がまるわかり!