AWS Terraform

Terraform

Terraformとは

クラウドサービス上のインフラリソースをコードで定義できるOSSのIaCツール
AWS CloudFormationとは異なり、GCP等でも利用可能

IaC

Infrastructure as Code

AWS CloudFormation

AWS専用のIaCツール

インストール

tfenv list-remote
brew install tfenv X.X.X
tfenv use X.X.X

コマンド

機能 コマンド 備考
初期化 terraform init
テスト terraform plan
実行 terraform apply
削除 terraform destroy

ファイル

メイン

※main.tf
terraform {
 required_version = “>= 1.5.1”

 // awsプロバイダーのバージョン
 required_providers {
  aws = {
   source = “hashicorp/aws”
   version = “~> 4.16”
  }
 }
}

// awsプロバイダー
変数ファイルから取得
variable “access_key” {}
variable “secret_key” {}

provider “aws” {
 region = “ap-northeast-1”
 access_key = var.access_key
 secret_key = var.secret_key
}

リソース
resource 〜 {
 「リソース」参照
}

変数

access_key = “〜”
secret_key = “〜”

リソース

s3バケット作成

resource “aws_s3_bucket” “test” {
 bucket = “sample”
}

TerraFormer

TerraFormerとは

AWS環境からTeraFormコードを生成するツール

コマンド

コード生成

terraformer import aws
--resources=ecs, ec2_instance
--regions=XXX

Django

前の記事

Django View
Flask

次の記事

Flask ルーティング