【Terraform_v1.1.8】Windows11にインストールし、AWSにEC2をデプロイしてみる

【Terraform_v1.1.8】Windows11にインストールし、AWSにEC2をデプロイしてみる

これまでTerraformを扱ってこなかったため、今更ながら勉強したので備忘録として記載します。

Terraformとは

簡単に言えばインフラのコード化。手動で操作することなくインフラ構成を自動で管理できます。インフラの初期プロビジョニング、更新、破棄、いずれもTerraformではコードにより宣言し、実行できる。

環境

OS:Windows11
Terraform version 1.1.8 (2022年4月4日現在最新版)

Terraformの取得

  1. 下記URLから取得します。

https://www.terraform.io/downloads

  1. 取得後、解凍して任意の場所に置きます。
  1. 環境設定

3.1 [システム] -> [システムの詳細設定]を押します。

3.2 [システム環境変数] -> [Path] -> [編集] -> [新規]を押します。
変数値:2で指定した任意の場所(ここではC:\terraform_1.1.8)

  1. 確認

コマンドプロンプトから下記コマンドを実行し、バージョンを確認する

terraform -v

AWS CLIをインストール

コマンドプロンプトから下記コマンドでAWS CLI をインストールします。

msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi

確認

aws –version

AWSの情報を取得

下記コマンドを実行することでAWS CLIにIAMユーザーで接続するための情報を取得する

$ aws configure
AWS Access Key ID [None]:****************
AWS Secret Access Key [None]:****************
Default region name [None]:ap-northeast-1
Default output format [None]:Json

入力した情報が~/.awsフォルダの中に保存されます。

tfファイルの作成

「main.tf」ファイルを作成して下記コードを記入します。
置く位置はterraform.exeの場所にしています。(PATHを通していないため)

terraform {
required_providers {
aws = {
source = “hashicorp/aws”
version = “~> 3.27”
}
}
required_version = “>= 1.1.8”
}
provider “aws” {
profile = “default”
region = “us-east-1”
}
resource “aws_instance” “app_server” {
ami = “ami-0c02fb55956c7d316”
instance_type = “t2.micro”
tags = {
Name = “MyFirstTerraformInstance”
}
}

Terraform 初期化

terraform init

terraform fmt

現在のディレクトリの構成を自動でアップデート

terraform validate

構成が構文的に有効であり、内部的に一貫性があるかを確認することもできます

terraform plan

現在定義されているリソースを実際にproviderに適用した時、テラフォームがどのようなジョブを実行するかの計画を示します。

terraform apply

実際にAWS上にデプロイするコマンド

作成確認