5
1

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 バケット作成

コード化するメリットはたくさんあります。

  • 再現性がある
  • レビューしやすい
  • 人的ミスが減る
  • 差分が明確
  • dev/stg/prod のような複数環境が作りやすい

今回はその入り口として、EC2 を 1 台立ててみるところまでやってみます。

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

3-1. 構築する環境

今回 Terraform で作るのは以下の 最小構成 です。

  • EC2 インスタンス 1 台
  • 既存のデフォルト VPC を使用(VPC を自前で作らない)
  • サブネットもデフォルトのもの
  • セキュリティグループも Terraform で作らず AWS 既定のもの

まずは “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

インストーラーは Next を押していくだけで完了します。

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 はterraform.exe を置いて PATH を通すだけという手軽さが魅力。

6. AWS CLI の設定

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

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

  • アクセスタイプ:アクセスキー
  • 権限:検証用途なら AdministratorAccess で OK
    (本番では最小権限にしてください)

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

PowerShell で以下を実行します。

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. 認証の確認

通常はこれが通れば OK です。

aws sts get-caller-identity

しかし私はここで 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 has been successfully initialized!

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

terraform plan

▽ 結果の一部

Plan: 1 to add, 0 to change, 0 to destroy.

「1 to add」なら構成は問題ありません。

💡 Terraform の良いところ
実行前に「何が変わるか」を見せてくれるので安心。


8-3. EC2を作成

いよいよ apply です。

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 --auto-approve
Destroy complete! Resources: 1 destroyed.

これでお片付け完了です。

11. まとめ

Terraform の基本ステップはとてもシンプルです。

  1. AWS CLI に認証情報を設定
  2. main.tf に“なってほしい状態”を宣言
  3. init → plan → apply で反映
  4. destroy で削除

Terraform は、

  • クリック操作をコード化できる
  • 変更点が明確
  • 再現性がある(誰がやっても同じ環境ができる)
    といったメリットが非常に大きいです。

12. おわりに

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

次はこのあたりに挑戦予定です。

  • セキュリティグループのコード化
  • キーペア作成
  • SSH接続の自動化

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

We Are Hiring!

5
1
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
5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?