😄
TerraformでECSのタスクにALBを設定するメモ
TerraformでECSのタスクにALBを設定するメモ
Terraformで構築したECS FargateにALBを設定するメモ。
ALB関連モジュール
fargateはawsvpc
を使用しているため、target_type = "ip"
とする必要がある。
module "alb" {
source = "../modules/alb"
// 色々省略
}
module "alb_target_group" {
source = "../modules/alb_target_group"
name = ""
port = 80
protocol = "HTTP"
vpc_id = module.vpc.vpc_id
target_type = "ip"
health_check_enabled = true
health_check_path = "/health_check"
health_check_interval = 300
}
module "alb_listener" {
source = "../modules/alb_listener"
// 色々省略
ロードバランサー本体のarnを指定
load_balancer_arn = module.alb.alb_arn
// ターゲットグループのarnを指定
target_group_arn = module.alb_target_group.target_group_arn
}
ECSサービスモジュール
ターゲットグループのarnを指定する。
module "ecs" {
// nameとか色々省略
target_group_arn = module.alb_target_group.target_group_arn
}
ECSサービスとリスナーにそれぞれターゲットグループのarnを指定することでECS FargateのタスクのIPをターゲットにしたターゲットグループを作成することができる。サービスが正常に開始された後、タスクのIPアドレスが指定されていることが確認できる。
最後に
間違っていることがあれば、コメントに書いていただけると幸いです。
よろしくお願いいたします。
Discussion