Slide 1

Slide 1 text

Terraformについてアウトプットする すずむら(@179Bell) WCM in TOKYO with Developers Guild

Slide 2

Slide 2 text

● 自己紹介 ● Terraformとは ● CFn VS Terraform ● コードからAWSへデプロイされる流れ ● 実際にリソースをデプロイしてみる ● まとめ アジェンダ

Slide 3

Slide 3 text

Terraformとは 
 HashiCorp社が提供するマルチクラウド上のコンピュータやネットワー クの構築を自動化するツール(IaC)
 ※IaC … Infrastructure as Code


Slide 4

Slide 4 text

CloudFormation VS Terraform CloudFromation Terraform 記述形式 JSON Yaml HCL(HashiCorp Configuration Language) ソースコード Closed Open 対応リソース AWSのみ AWS、Azure、GCP etc… 実行環境 AWS上 ローカル 排他制御 あり なし バージョン管理 なし あり

Slide 5

Slide 5 text

Terraformのコードからデプロイされる仕組み main.tf terraform apply API コール provider

Slide 6

Slide 6 text

ざっくりとVPCを立ててみます

Slide 7

Slide 7 text

Terraformライフサイクル terraform init ↓ terraform plan ↓ terraform apply ↓ terraform destroy

Slide 8

Slide 8 text

構築したいリソースを定義したファイルのあるディレクトリでコマンドを実行す ることでコードが読み込まれて以降のコマンドが実行できるようになる。

Slide 9

Slide 9 text

Terraformライフサイクル terraform init ↓ terraform plan ↓ terraform apply ↓ terraform destroy

Slide 10

Slide 10 text

✅作成されるリソースの情報が表示され、 差分がある場合は差分の確認をすることが できます。

Slide 11

Slide 11 text

Terraformライフサイクル terraform init ↓ terraform plan ↓ terraform apply ↓ terraform destroy

Slide 12

Slide 12 text

terraform applyコマンドで実際にリソースが 作成される

Slide 13

Slide 13 text

Terraformライフサイクル terraform init ↓ terraform plan ↓ terraform apply ↓ terraform destroy

Slide 14

Slide 14 text

使ってみた感想 ● CFnよりもコードが見やすい ● 配列や三項演算子、データの型があるためプログラミング言語に近いイメー ジしやすい ● 複数のリソースを一度に作れるので便利 ● 日本語の情報少なすぎて驚き

Slide 15

Slide 15 text

参考図書 OREILLY Terraform Up & Running ※全部英語です

Slide 16

Slide 16 text

ご清聴ありがとうございました!