반응형
- tfstate 저장할 S3 생성 및 dynamoDB 테이블 생성
resource "aws_s3_bucket" "test-tfstate" {
bucket = "evan-s3-bucket-tfstate"
}
resource "aws_s3_bucket_versioning" "test-versioning" {
bucket = aws_s3_bucket.test-tfstate.id
versioning_configuration {
status = "Enabled"
}
}
resource "aws_dynamodb_table" "terraform_state_lock" {
name = "terraform-tfstate-lock"
hash_key = "LockID"
billing_mode = "PAY_PER_REQUEST"
attribute {
name = "LockID"
type = "S"
}
}
- backend를 통하여 tfstate 저장
- 버킷명, 버킷 경로, 리전
- dynamodb table 이름
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 4.0"
}
}
backend s3 {
bucket = "evan-s3-bucket-tfstate" # S3 버킷 이름
key = "terraform/terraform.tfstate" # S3 tfstate 저장 경로
region = "ap-northeast-2" # 리전
dynamodb_table = "terraform-tfstate-lock" # dynamodb table 이름
}
}
- tfstate값은 로컬에서는 없어지고 AWS S3 버킷에 정의됨
반응형
'Terrform' 카테고리의 다른 글
[terraform] terraform module( VPC) 사용 (0) | 2024.11.13 |
---|---|
Terraform VPC 생성 (0) | 2021.08.03 |
Terraform Application Load Balancer(ALB)생성 (0) | 2021.08.02 |
Terraform EC2 생성 (0) | 2021.08.02 |
Terraform 정의 (0) | 2021.07.28 |