피드로 돌아가기
Dev.toInfrastructure
원문 읽기
Amazon Bedrock 기반 서버리스 AI 툴킷 구축 및 트러블슈팅 기록
BuildWithAI: What Broke, What I Learned, What's Next
AI 요약
Context
Bedrock 모델 접근 권한 설정 누락으로 인한 API 호출 실패 발생. Lambda 응답 중 에러 경로에서 CORS 헤더 누락으로 브라우저 요청 차단. DynamoDB 초기 데이터 부재로 인한 예산 컷오프 기능 작동 불능.
Technical Solution
- Amazon Bedrock 콘솔 또는 PutUseCaseForModelAccess API를 통한 모델 접근 권한 수동 활성화 및 FTU 폼 제출 프로세스 적용
- aws-marketplace:Subscribe 등 필수 IAM 권한 부여를 통한 Bedrock 모델 자동 구독 환경 구축
- Lambda 응답 헬퍼 함수를 개선하여 성공 및 에러 모든 경로에 공통 CORS 헤더를 포함하는 설계
- API Gateway 레이어에서 CloudFront 도메인으로 allowedOrigins를 제한하여 보안성 유지 및 Lambda 수준의 와일드카드 허용 구조 채택
- 별도 시드 스크립트를 통해 DynamoDB에 전역 설정 행을 삽입하여 예산 제한 Lambda의 안전장치 연결
- Next.js 16 정적 export와 S3, CloudFront 조합의 프론트엔드 및 Python 3.14 기반 Lambda 백엔드 구성
Impact
- 모델별 일일 호출 제한 설정: Nova Pro 최대 50회/일, Nova Lite 최대 50회/일, DR Reviewer 30회/일
- 응답 대기 시간: 현재 2~5초 소요
Key Takeaway
프론트엔드와 백엔드 간 통신 시 curl 테스트만으로는 CORS 설정을 완전히 검증할 수 없으며 반드시 실제 브라우저 환경에서 에러 경로를 테스트해야 함.
실천 포인트
Bedrock 모델 도입 시 IAM 권한 외에도 모델 카탈로그의 FTU 폼 제출 및 Marketplace 구독 권한 확인 필수