はじめに
Terraformの導入は比較的簡単で、Windows、Mac、Linuxそれぞれの環境に対応しています。本記事では、各OSでのTerraformのインストール手順と、セットアップの基本である環境の初期化やプロバイダ設定について解説します。
Terraformのインストール方法
Windowsでのインストール
Terraform公式ダウンロードページにアクセスし、Windows向けのバイナリをダウンロードします。
ダウンロードしたZIPファイルを展開します。展開されたファイルには、terraform.exe
という実行ファイルが含まれています。terraform.exe
を任意のディレクトリ(例:C:\Terraform
)に移動し、そのディレクトリを環境変数PATH
に追加します。
コントロールパネル -> システムとセキュリティ -> システム -> システムの詳細設定 -> 環境変数 -> Path を編集し、C:\Terraform
を追加。
コマンドプロンプトまたはPowerShellで次のコマンドを実行し、Terraformが正しくインストールされていることを確認します。
terraform -v
Macでのインストール
Homebrewがインストールされている場合、次のコマンドでTerraformをインストールできます。
brew tap hashicorp/tap
brew install hashicorp/tap/terraform
インストール後、次のコマンドを実行してTerraformのバージョンを確認します。
terraform -v
Linuxでのインストール
Terraform公式ダウンロードページにアクセスし、自身のLinux環境に合ったバイナリをダウンロードします。
ダウンロードしたZIPファイルを解凍し、terraform バイナリを /usr/local/bin などのパスが通ったディレクトリに配置します。
unzip terraform_VERSION_linux_amd64.zip
sudo mv terraform /usr/local/bin/
次のコマンドで、Terraformが正しくインストールされているか確認します。
terraform -v
環境の初期化 (terraform init)
Terraformをインストールした後は、使用するディレクトリを初期化する必要があります。これは、Terraformが必要なプロバイダやモジュールを取得し、設定ファイルを準備するためのコマンドです。
使用したいディレクトリで、terraform init
コマンドを実行します。
terraform init
コマンドを実行すると、Terraformは設定ファイル (.tf
ファイル)内のプロバイダ情報に基づいて、プロバイダプラグインをダウンロードして設定を初期化します。
terraform init
に成功すると、ディレクトリ内に.terraform
フォルダが作成され、必要なプロバイダ情報や設定が保存されます。
プロバイダ設定の基本
Terraformは、プロバイダを通じてリソースを管理します。以下に、代表的なクラウドプロバイダ(AWS、GCP、Azure)の設定例を示します。
AWSのプロバイダ設定
AWSを使用するには、TerraformにAWSプロバイダを設定し、アクセスキーとシークレットキーで認証を行います。
provider "aws" {
region = "us-west-1"
access_key = "YOUR_ACCESS_KEY"
secret_key = "YOUR_SECRET_KEY"
}
環境変数を使った認証設定
アクセスキーやシークレットキーを直接コードに書きたくない場合は、環境変数を使うことが推奨されます。
export AWS_ACCESS_KEY_ID="YOUR_ACCESS_KEY"
export AWS_SECRET_ACCESS_KEY="YOUR_SECRET_KEY"
Terraformの設定ファイルでは、キーを直接書かずに以下のようにプロバイダを設定できます。
provider "aws" {
region = "us-west-1"
}
GCPのプロバイダ設定
GCPを使用するには、サービスアカウントのキーを用いて認証を行います。
provider "google" {
credentials = file("path/to/your/service-account-file.json")
project = "your-project-id"
region = "us-central1"
}
GCPのサービスアカウントファイル(JSON形式)を用いて認証を行います。gcloud
コマンドを使ってサービスアカウントを作成し、そのキーをファイルとしてダウンロードする必要があります。
Azureのプロバイダ設定
Azureでは、サービスプリンシパルを使ってTerraformに認証を行います。
provider "azurerm" {
features {}
subscription_id = "YOUR_SUBSCRIPTION_ID"
client_id = "YOUR_CLIENT_ID"
client_secret = "YOUR_CLIENT_SECRET"
tenant_id = "YOUR_TENANT_ID"
}
Azure CLIを使ってサービスプリンシパルを作成し、上記の値を取得します。また、Azure CLIにログインしていれば、環境変数を使用することもできます。
az login
この場合、Terraform設定ファイル内でプロバイダのクレデンシャルを省略できます。
まとめ
Terraformのインストールは、OSに応じて異なりますが、基本的には公式バイナリを取得し、環境変数やディレクトリに設定するだけです。インストール後、terraform init コマンドでプロジェクトの初期化を行い、プロバイダ設定を記述することで、クラウド環境にリソースを構築できます。