피드로 돌아가기
Dev.toBackend
원문 읽기
Aurora PostgreSQL Serverless Express를 AWS CDK와 Drizzle ORM으로 통합하여 CloudFormation 미지원 상황에서 커스텀 리소스 기반 배포 및 IAM 인증 기반 스키마 관리 구현
Aurora PostgreSQL Serverless (Express configuration) with CDK and Drizzle
AI 요약
Context
Aurora PostgreSQL Serverless Express 구성은 CloudFormation 네이티브 지원이 없어 직접 RDS API를 호출해야 했다. CDK 기반 인프라스트럭처 코드로 관리하면서도 Express 인스턴스를 프로비저닝할 방법이 필요했다.
Technical Solution
- AwsCustomResource를 통한 클러스터 생성: CreateDBCluster API를 직접 호출하여
WithExpressConfiguration: true파라미터로 Express 모드 활성화 - 클러스터 식별자 정규화: 63자 제한을 준수하면서 고유한 리소스명 생성을 위해
toIdentifier()함수로 대문자 제거 및 특수문자 하이픈 변환 - 다단계 정리 리소스 구성: 클러스터 생성 → 조회 → 인스턴스 삭제 → 클러스터 삭제 순서로 의존성 관리
- IAM 인증 기반 Drizzle 통합: RDS Signer를 사용하여 임시 인증 토큰 생성 후 Drizzle ORM의 드라이버에 전달
- 스키마 및 데이터 검증: Drizzle Kit으로 마이그레이션 적용 및 Drizzle Studio에서 IAM 인증된 연결로 데이터 시각화
Key Takeaway
CloudFormation 미지원 AWS 신규 기능도 AwsCustomResource와 AWS SDK를 활용하면 IaC 워크플로우 내에서 관리 가능하며, IAM 인증 토큰 기반 접근으로 장기 자격증명 관리 부담을 제거할 수 있다.
실천 포인트
AWS CDK를 통해 Aurora Serverless Express를 배포하는 팀에서 AwsCustomResource의 onCreate/onUpdate/onDelete 핸들러에 RDS API 호출을 정의하고, Drizzle ORM 연결 시 RDS Signer에서 발급한 임시 토큰을 사용하면 CloudFormation 지원 전까지도 프로덕션 준비 수준의 스키마 관리 및 배포 자동화가 가능하다.