PROJECT 03 / 사내 해커톤 · 프로토타입
FigOps — AWS 인프라 설계 및 Terraform 자동화
규칙 기반 비용 계산과 AI 인프라 제안서
AWS 아키텍처 설계부터 Terraform 코드 생성, 예상 비용 계산, AI 인프라 제안서 작성까지 한 흐름으로 연결한 사내 해커톤 프로토타입
프로젝트 정보
| 항목 | 내용 |
|---|---|
| 프로젝트명 | FigOps |
| 프로젝트 유형 | 메가존클라우드 사내 메가톤 팀 프로젝트 |
| 진행 일자 | 2026.05.09 |
| 담당 업무 | AWS 비용 계산 및 Gemini API 기반 인프라 제안서 개발 |
| 주요 기술 | AWS, Terraform, Gemini API, JavaScript |
개요
AWS 인프라를 설계한 뒤 Terraform 코드를 작성하고 예상 비용을 검토하는 과정에는 반복 작업이 많습니다. FigOps는 캔버스에 AWS 리소스를 드래그 앤 드롭하면 아키텍처를 구성하고 Terraform 코드를 생성하며, 비용 검토와 제안서 작성까지 이어지도록 만든 사내 해커톤 프로토타입입니다.
팀원들과 AWS 아키텍처 설계 및 Terraform 기반 인프라 자동화 기능을 공동 설계했으며, 저는 AWS 가격 데이터를 이용한 비용 계산과 Gemini API 기반 인프라 제안서 생성 기능을 담당했습니다.
해결하려던 문제
아키텍처가 바뀔 때마다 Terraform 코드와 예상 비용을 각각 다시 정리해야 했고, 계산 결과만으로는 설계 의도와 보안 고려사항을 함께 전달하기 어려웠습니다. 특히 비용처럼 정확한 수치가 필요한 영역을 생성형 AI에만 맡기면 결과가 달라지거나 근거가 불명확해질 수 있었습니다.
그래서 정해진 가격과 사용량으로 계산할 수 있는 비용 영역은 규칙 기반으로 처리하고, 서비스 맥락에 맞는 분석과 설명이 필요한 제안서 작성에만 생성형 AI를 활용했습니다.
주요 기능
시각적 AWS 인프라 설계와 Terraform 코드 생성
사용자는 팔레트에서 EC2, RDS, S3 등의 AWS 리소스를 선택해 캔버스에 배치하고 연결할 수 있습니다. 구성한 아키텍처와 리소스 설정을 바탕으로 Terraform 코드를 생성하는 흐름을 팀원들과 공동 설계했습니다.
AWS 예상 비용 계산 및 시각화
AWS 가격 정보를 정리한 JSON 파일과 캔버스에 배치된 리소스의 종류·설정값을 연결해 예상 비용을 계산했습니다. 정해진 가격과 사용량을 기준으로 산출해 같은 입력에는 일관된 결과가 나오도록 했습니다.
용량이나 조회 기간이 바뀌면 비용을 즉시 다시 계산하고, 리소스별 비용은 표로, 서비스별 비용 비중은 도넛 차트로 표현해 전체 비용과 주요 비중을 함께 확인할 수 있게 구현했습니다.
Gemini API 기반 인프라 제안서
사용자가 입력한 서비스 목적, 예상 MAU, 성장률과 아키텍처·Terraform 코드·비용 계산 결과를 Gemini API에 전달해 인프라 제안서를 생성했습니다. 제안서는 서비스 개요, 구성 설명, 비용 분석, 보안 고려사항을 포함하도록 구성했습니다.
생성된 내용은 사용자가 직접 수정할 수 있고, 필요한 항목만 선택해 다시 작성하도록 요청할 수 있게 구현해 전체 보고서를 반복 생성하는 불필요한 API 호출을 줄였습니다.
시스템 구조
FigOps는 AWS 리소스를 배치하는 설계 캔버스, Terraform 코드를 생성하는 영역, 가격 JSON을 이용해 비용을 계산·시각화하는 영역, Gemini API로 제안서를 작성하는 영역으로 구성했습니다.
비용 계산 결과를 AI가 임의로 산출하게 하지 않고 규칙 기반 계산 결과를 제안서 입력으로 전달했습니다. 이를 통해 수치 계산과 자연어 분석의 책임을 분리했습니다.
담당 업무
비용 계산 로직
AWS 가격 정보를 JSON으로 정리하고 EC2, RDS, S3 등 캔버스에 배치된 리소스 종류와 설정값에 맞는 가격을 적용했습니다. 용량과 조회 기간 등 사용자가 바꿀 수 있는 조건을 계산식에 반영해 입력 변경 시 예상 비용이 즉시 갱신되도록 구현했습니다.
비용 데이터 시각화
리소스별 예상 비용을 표로 제공하고 서비스별 비용 비중을 도넛 차트로 시각화했습니다. 사용자가 총액뿐 아니라 어떤 서비스가 비용에서 큰 비중을 차지하는지도 한 화면에서 비교할 수 있도록 구성했습니다.
AI 제안서 생성 및 편집
서비스 목적, 예상 MAU와 성장률, 아키텍처, Terraform 코드, 규칙 기반 비용 계산 결과를 Gemini API에 전달했습니다. 반환된 내용을 인프라 제안서 형태로 구성하고, 직접 편집과 항목별 재작성 기능을 구현했습니다.
기술 선택에서 고민한 점
비용은 왜 규칙 기반으로 계산했나
비용은 같은 조건에서 같은 수치가 나와야 하고 계산 근거를 확인할 수 있어야 합니다. 따라서 생성형 AI의 응답으로 비용을 추정하지 않고, 정리된 AWS 가격 데이터와 사용량을 계산식에 적용했습니다. 이 방식으로 AI 환각이 비용 수치에 개입할 가능성을 줄이고 입력 변경에도 즉시 대응할 수 있었습니다.
제안서에는 왜 Gemini API를 사용했나
인프라 제안서는 비용 수치만 나열하는 것이 아니라 서비스 목적과 규모, 성장 가능성, 아키텍처 구성, 보안 고려사항을 연결해 설명해야 합니다. 정형 계산으로 처리하기 어려운 분석과 자연어 작성을 Gemini API에 맡기고, 정확성이 필요한 비용 수치는 규칙 기반 결과를 전달했습니다.
즉, 정확한 수치가 필요한 계산에는 규칙 기반 방식을, 상황에 맞는 분석과 설명에는 생성형 AI를 적용해 결과의 신뢰성과 개발 속도, API 비용 효율을 함께 고려했습니다.
결과
AWS 리소스를 캔버스에 배치해 Terraform 코드를 생성하고, 예상 비용 계산과 AI 인프라 제안서 작성까지 이어지는 프로토타입을 완성해 사내 메가톤에서 실제 시연했습니다.
제가 맡은 기능에서는 EC2, RDS, S3 등 리소스별 예상 비용을 계산해 표와 도넛 차트로 보여주고, 그 결과와 아키텍처 정보를 활용해 비용 분석과 보안 고려사항을 포함한 제안서를 생성할 수 있도록 구현했습니다.
회고
생성형 AI를 모든 처리에 사용하는 것보다 문제의 성격에 따라 적용 범위를 구분하는 것이 중요하다는 점을 배웠습니다. 비용처럼 검증 가능하고 일관된 값이 필요한 영역은 규칙 기반 로직이 적합했고, 여러 정보를 종합해 사람이 읽기 쉬운 문서로 구성하는 영역에서는 생성형 AI가 효과적이었습니다.
또한 항목별 재작성 기능을 구현하면서 전체 요청을 반복하는 대신 필요한 범위만 AI에 요청하면 응답 속도와 API 사용 비용을 함께 관리할 수 있다는 점을 경험했습니다.

