11
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【超入門】TerraformでEC2構築にチャレンジしてみた

Last updated at Posted at 2025-11-26

1. はじめに

こんにちは。

実は私、8月からAWS案件に参画したばかりのエンジニアで、インフラ構築の経験がほとんどありませんでした。正直、「Terraformって名前は聞いたことあるけど、何者なの……?」というレベルからのスタートでした。

そんな私が今回、意を決してチャレンジしたのは、

Terraform × AWS CLIを使って、EC2インスタンスを1台自動で構築する

という、IaC(Infrastructure as Code)の世界への第一歩です。

この記事は、私と同じように「ほぼゼロの状態からTerraformを動かしてみたい」という初学者の方に向けた記録です。「まずは何か作ってみたい」と考えている方に、ぜひ読んでいただければうれしいです。

2. Terraformって結局なに?

Terraform を簡単に説明すると、インフラの構築・変更・削除をすべてコードで管理できるツールです。

普段AWSコンソールでポチポチと設定していた作業が、Terraformを使うと main.tfというファイルに「こうしてほしい」と記述するだけで完結します。

例えば、EC2インスタンスの構築、セキュリティグループやIAMユーザーの作成、さらにはRDSやS3バケットの構築まで、コード化が可能です。

インフラをコード化するメリットは多岐にわたります。

  • 再現性が高く、誰が実行しても同じ環境が構築できる。
  • コードとして残るのでレビューしやすく、設定内容も明確になる。
  • 手作業による人的ミスが減る
  • 変更時の差分が明確になり、管理しやすい。
  • 開発、ステージング、本番といった複数環境の準備が非常に楽になる。

今回は、このIaCの基礎として、EC2を1台立ち上げてみる作業に取り組みます。

3. 今回の前提条件・検証環境

3-1. 構築する環境

今回Terraformで作成するのは、操作方法に集中するための最小構成です。

  • EC2インスタンスを1台構築します。
  • VPCやサブネット、セキュリティグループは、新しく作成せず、既存のデフォルト設定を使用します。

まずは「EC2が立ち上がる」ことを第一のゴールとし、Terraformの基本的な動きを体験することを重視しました。

3-2. ローカル環境

項目 内容
OS Windows 11
Terraform v1.13.5
AWS CLI v2.31.33
リージョン ap-northeast-1(東京)
IAM terraform 用ユーザーのアクセスキーを使用

4. AWS CLI をインストールする

4-1. AWS CLI をダウンロード

AWSの公式ページからWindows版のMSIをダウンロードし、実行します。
https://awscli.amazonaws.com/AWSCLIV2.msi

インストーラーは画面の指示通りに進めれば完了です。

4-2. インストール確認

PowerShellを開き、AWS CLIが正しくインストールされたかを確認します。

aws --version
実行結果の例
PS C:\Users\yourname> aws --version
aws-cli/2.31.33 Python/3.13.9 Windows/11 exe/AMD64

このように バージョン情報が表示されればOK です。

💡AWS CLIは、インストール直後からすぐに使えるシンプルなツールです。

5. Terraformをインストールする

Terraformはインストーラー不要で、実行ファイルを配置するだけで使えます。

5-1. Terraform をダウンロードして展開

  1. 公式サイトから Windows用のZIPをダウンロードします。
    https://developer.hashicorp.com/terraform/install
  2. 展開した terraform.exeC:\terraform など任意の場所に配置します。

5-2. PATH を通す

Windowsの環境変数「Path」 に C:\terraform を追加します。

▶ Path 追加画面
スクリーンショット 2025-11-17 094737.png

5-3. 動作確認

PowerShellを開き、Terraformが動作するか確認します。

terraform -v
実行結果の例
PS C:\Users\yourname> terraform -v
Terraform v1.13.5
on windows_amd64

このようにバージョン情報が返ってくればインストール完了です! 🎉

💡terraform.exe を置いてPATHを通すだけで使える手軽さも魅力です。

6. AWS CLI の設定

6-1. IAMユーザーを作成(Terraform 用)

AWSコンソールでIAMユーザーを作成します。

  • アクセスタイプ:アクセスキー
  • 権限:今回は検証用途なのでAdministratorAccessを設定します。(本番環境では必ず最小限の権限に設定してください)

6-2. AWS CLI に認証情報を登録

PowerShellでaws configureを実行し、アクセスキーなどを登録します。

aws configure
入力例
PS C:\Users\yourname> aws configure
AWS Access Key ID [Name]:AKIAxxxxxxxxx
AWS Secret Access Key [Name]:xxxxxxxxxxxxxx
Default region name [Name]:ap-northeast-1
Default output format [Name]: json

6-3. 認証の確認

通常は以下のコマンドで認証情報を確認できます。

aws sts get-caller-identity

もしSSLエラーに遭遇した場合は、検証環境限定の暫定対処としてaws sts get-caller-identity --no-verify-sslを試してみてください。

aws sts get-caller-identity --no-verify-ssl
実行結果例
{
    "UserId": "XXXXXXXXXXXXXXXXXXXXX",
    "Account": "123456789012",
    "Arn": "arn:aws:iam::123456789012:user/terraform-test"
}

Account が返ってくれば認証成功です。

7. Terraform プロジェクトを作る

7-1. ディレクトリ作成

作業用のディレクトリを作成し、移動します。

mkdir C:\terraform\ec2-test
cd C:\terraform\ec2-test

7-2. main.tfの作成

以下の内容で main.tf を作成します。

# ------------------------------
# AWS Provider 設定
# ------------------------------
provider "aws" {
  region = "ap-northeast-1" # 東京リージョン
  
  # ▼ SSL エラー回避用(検証環境のみ使用)
  # 通常は不要な設定です。本番では絶対に使わないでください。
  skip_credentials_validation = true
  skip_metadata_api_check     = true
  skip_requesting_account_id  = true
  insecure                    = true
}

# ------------------------------
# EC2 インスタンス作成
# ------------------------------
resource "aws_instance" "example" {
  ami           = "ami-0f9ae750e8274075b" # Amazon Linux 2 (東京)
  instance_type = "t2.micro"             # 無料枠対象

  tags = {
    Name = "terraform-test"
  }
}

💡 Terraform は宣言的ツール
「最終的にこうなってほしい状態」をコードに書けば、Terraformが自動的にその状態を実現してくれます。

8. Terraformを実行する

8-1. 初期化

まずはterraform initで初期化を行います。

terraform init

成功すると「Terraform has been successfully initialized!」と表示されます。


8-2. 実行プランの確認

terraform planで、実際にどんな変更が起こるかを確認します。

terraform plan

Plan: 1 to add, 0 to change, 0 to destroy.のように、「1 to add」となっていれば、構成は問題ありません。

💡Terraformは実行前に「何が変わるか」を見せてくれるので、安心して作業を進められます。


8-3. EC2を作成

いよいよapplyでリソースを作成します。今回は確認なしで進めるため--auto-approveをつけます。

terraform apply --auto-approve

Apply complete! Resources: 1 added.」という成功メッセージが出れば完了です。

9. AWSコンソールで確認

AWSコンソールからEC2のインスタンス一覧を見てみましょう。

terraform-test という名前の t2.micro インスタンスが起動していれば成功です。


スクリーンショット 2025-11-25 161346.png

10. 後片付け(課金防止)

使い終わったら、terraform destroyで忘れずに削除しましょう。

terraform destroy --auto-approve

Destroy complete! Resources: 1 destroyed.これでお片付けも完了です。

11. まとめ

Terraformの基本的なステップは、シンプルに整理できます。

  • AWS CLIに認証情報を設定
  • main.tfになってほしい状態を宣言
  • initplanapply で反映
  • destroy で削除

Terraformを使うことで、クリック操作のコード化、変更点の明確化、高い再現性といった大きなメリットを実感できたかと思います。

12. おわりに

今回の検証はシンプルにEC2を1台作るだけでしたが、「宣言するだけで環境ができる」Terraformの便利さとパワーを体感できました。

今後は、セキュリティグループのコード化、キーペア作成、SSH接続の自動化といった部分にも挑戦していく予定です。

読んでいただきありがとうございました! 🙏

We Are Hiring!

11
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?