はじめに
本記事では、TerraformをCLIからパッケージマネージャーを使ってインストールする方法と基本操作について紹介します。
MacやWindows(WSL)を使用している方でも簡単に環境構築を行うことができます。
なお、Terraformの概要については前回の記事でまとめています。
インストール
1.パッケージマネージャーをダウンロードします。
# macの場合
brew tap hashicorp/tap
brew install hashicorp/tap/terraform
# Linuxの場合
wget -O - https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install terraform
2.Terraform のバージョンを確認します。
terraform -v
Terraformの基本コマンドと操作手順
Terraformをインストールした後は、以下のフローでインフラの管理を行います。
1. 初期化(Initialize):プロジェクト開始時に実行します。
terraform init
このコマンドを実行すると以下の処理が行われます:
- Provider(AWS,Azure,GCPなど)のダウンロード
- 設定ファイル(.tf)で指定されたProviderの必要なバイナリがダウンロードされます。
- backendの設定
- 状態ファイル(terraform.tfstate)の保存先や管理方法が構成されます。
- moduleの取得
- 設定ファイルで参照している外部モジュールがダウンロードされます。
2. 計画(Plan): 変更内容を事前確認します。
terraform plan
このコマンドを実行すると以下の処理が行われます:
- 現在の状態と設定ファイルを比較
- 追加・変更・削除されるリソースの一覧を表示
- 実際の変更は行わず、実行計画のみを表示
3. 適用(Apply):計画した変更を実際に適用します。
terraform apply
このコマンドを実行すると以下の処理が行われます:
- 再度planを実行して変更内容を表示
- 確認メッセージが表示され、承認後に変更を適用
- terraform.tfstateファイルが更新され、管理状態が記録される
4. 破棄(Destroy): Terraformで作成したリソースを削除します。
terraform destroy
このコマンドを実行すると以下の処理が行われます:
- 管理下にあるすべてのリソースの削除計画を表示
- 確認後、すべてのリソースを削除
まとめ
本記事では、MacとLinux環境でのTerraform のインストール方法と基本的な実行フローを紹介しました。パッケージマネージャーを使うことで、異なるOSでも簡単にTerraformを導入することができます。
また、Terraformの基本コマンドの役割と実行内容について理解することで、インフラ変更の前に何が起こるかを事前に確認でき、より安全に作業できます。