Skip to content

infra(terraform): Phase 1 Sprint 0 — (platform) alb: ALB+Listener+SG-ALB+base cert+SSM publish(S0Infra-6) #242

Description

@win2cot

Phase 1 Sprint 0 Infra-6: (platform) alb — ALB + HTTPS Listener + SG-ALB + base cert + SSM publish

概要

dev 共有(platform)stack の ALB を構築。ALB(single)+ HTTPS Listener + SG-ALB(#241 から移設)+ base wildcard cert(ACM)。出力を SSM へ publish し、tasks stack(listener rule / TG)が共有 ALB にぶら下げる(ADR-0004)。

詳細仕様: infra/docs/adr/0004-platform-project-infra-separation.md / docs/architecture/infrastructure-plan.md §3.1 / §3.5。

stack / 配置(ADR-0004)

  • platform stack: root infra/shared/environments/dev/(key platform/dev/terraform.tfstate)、module infra/shared/modules/alb/
  • 命名 platform-dev-* / タグ Project=platform
  • network は同 stack のため直接 module 参照(SSM 不要)

実装内容

A. Terraform module(infra/shared/modules/alb/)

リソース 詳細
SG-ALB ingress 0.0.0.0/0 :80 / :443、egress all(#241 から移設)
ALB Public Subnet ×2、SG-ALB、internal=false
base cert ACM wildcard cert(共有ドメイン *.<dev host>)、DNS validation
HTTPS Listener port 443、default action = 503 fixed-response、cert = base cert
HTTP → HTTPS redirect port 80 → 443 redirect

各サービスの listener rule + TG + 深い cert + alias は tasks/route53(#379 / #322 等)が共有 ALB にぶら下げる形で追加する。

B. shared/environments/dev + SSM publish

  • infra/shared/environments/dev/main.tf から alb module 呼び出し
  • 出力を /platform/dev/alb/* に publish: arn / https-listener-arn / sg-id / dns-name / zone-id / base-cert-arn

受入条件

  • terraform plan(platform)差分なし
  • SG-ALB + ALB + HTTPS Listener(default 503)+ HTTP redirect + base cert 作成
  • /platform/dev/alb/* に arn / listener-arn / sg-id / dns / zone / cert-arn が publish 済み

関連

備考

  • task-type: task-type:impl / 優先度: priority/p0 / area: area/infra
  • claude-automation: 適用

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/infraAWS インフラ(ECS Fargate / RDS / Keycloak / IAM)変更priority/p0Critical / Blocker。本番影響あり、または他作業がブロックされるtask-type:implコード実装が主体のタスク

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions