6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Terraform入門その二(AWSのEC2作成)

Last updated at Posted at 2019-06-19

Terraform入門その一(インストール)
Terraform入門その二(AWSのEC2作成)[本記事]
Terraform入門その三(hello worldの表示)
Terraform入門その四(AWSのELB&ASGの導入)

前回Terraformのインストール方法を記述しました。
続きまして、AWSのEC2インスタンスの作成方法を記述します。

AWS側の設定

TerraformはAWS側のAPIを通じて、作業を行います。
そのため、事前にAWSユーザのAWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYの情報を~/.aws/credentialsに入力しておいてください。
aws configureコマンドで上記情報を登録できます。
参照:AWS CLI の設定

terraformドキュメントの作成

terraformディレクトリにて、main.tfを作成し、下記を記述します。

main.tf
provider "aws" {
# "default"は.aws/credentialsの情報を読み込みます
  profile    = "default"
# 東京リージョンを設定
  region     = "ap-northeast-1"
}

# resource "インスタンスの作成" "名前"
resource "aws_instance" "example" {
    ami = "ami-04b2d1589ab1d972c"
    instance_type = "t2.micro"
}

amiの値は、EC2マネジメントコンソールで確認しています。
Screen Shot 2019-06-19 at 12.10.59 PM.png

次にterraformの初期化を行います。

mbp:terraform mac$ terraform init

準備が整いました。下記コマンドでEC2インスタンス作成を実行します。
途中の選択肢にはyesと入力してください。

mbp:terraform mac$ terraform apply

EC2のマネジメントコンソールでインスタンスの確認ができます。

タグの追加

EC2インスタンスの個々を区別するためにタグを使用するかと思います。
この追加もterraformを使用すると簡単に実行することができます。

main.tfに以下を追加します。

main.tf
# resource "インスタンスの作成" "名前"
resource "aws_instance" "example" {
    ami = "ami-04b2d1589ab1d972c"
    instance_type = "t2.micro"
# 追加分。tagのkey, valueを入力します
    tags = {
        Name = "terraform-example"
    }
}

あとはコマンドで下記を実行するのみです。

mbp:terraform mac$ terraform apply

下記記事にて、立ち上げたインスタンスにapacheをインストールしてhello world
をブラウザに表示させる設定を取り上げています。
Terrafrom入門その三(hello worldの表示)

参照

Build Infrastructure

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?