LoginSignup
0
0

More than 3 years have passed since last update.

TerraformでAWSのEC2インスタンスを作成する

Posted at

概要

Terraformを用いて、AWSのEC2インスタンスを作成する。
Terraformを用いることで毎回同一構成でのインスタンスが作成可能となる。

Terraformをインストール

$ brew install terraform

$ terraform -v

Terraform v0.14.10
+ provider registry.terraform.io/hashicorp/aws v2.70.0

Your version of Terraform is out of date! The latest version
is 0.15.0. You can update by downloading from https://www.terraform.io/downloads.html

AWSのアカウント作成

アカウントを作成して、作業用ユーザーを作成しておく

Terraformの設定

作業用ディレクトリを作成

$ mkdir terraform_for_aws

$ cd terraform_for_aws

AWSへのアクセス情報を作成

AWSコンソールのIAMのユーザーから使用したいユーザーの概要に
image.png

image.png

作成した情報をもとにawsへのアクセス情報を記載したファイルを作成する

$ vim ~/.aws/`file_name`

aws_access_key_id = XXXXXXXXXXXXXX
aws_secret_access_key = XXXXXXXXXXXXXXXXXXXXXXXXX
$ vim main.tf
main.tf
resource "aws_instance" "sandbox" {
  count         = 2 # インスタンス数
  ami           = "ami-785c491f" # Ubuntu 16.04 LTS official ami
  instance_type = "t2.micro"

  tags = {
    Name = "${format("sandbox-%02d", count.index + 1)}"
  }
}
$ vim variables.tf
variables.tf
provider "aws" {
  version = "~> 2.0"
  region  = "ap-northeast-1" # 東京リージョン
  shared_credentials_file = "/Users/`user_name`/.aws/`file_name`" # 作成したファイルパス
}

インスタンスを作成する

# 初期化
$ terraform init
# 構築する環境の確認
$ terraform plan
# 実際に構築する
$ terraform apply

実際にEC2インスタンスが作成された

image.png

インスタンスを削除する

$ terraform destory

作成したインスタンスが終了済みとなる
一定期間経過すると一覧からも消える
image.png

0
0
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
0
0