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