
terraform AWS provider 6.0.0 버전부터 리소스별 리전이 가능해졌다.
https://registry.terraform.io/providers/hashicorp/aws/latest/docs/guides/enhanced-region-support
이번에 AWS Lambda를 여러개 리전에 배포해야해서 terraform을 사용해보았다.
밑의 코드처럼 locals에 사용할 리전을 적고 리소스에서 for_each region 설정으로 멀티리전에 배포할 수 있다.
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 6.0"
}
}
}
provider "aws" {
region = "us-east-1"
}
locals {
regions = toset([
"ap-northeast-1", "ap-northeast-2", "ap-east-2", "ap-south-1", // 일본 서울 대만 인도
])
}
resource "aws_lambda_function" "lambda_name" {
for_each = local.regions
region = each.value
}
코드 소스
https://github.com/stupidJoon/yt-ranking/blob/main/terraform/terraform.tf