AWS CodeBuild
01. 주요 특징은 다음과 같습니다.
02. 주요 개념은요!
03. CodeBuild로 할 수 있는 일들은 뭘까요?
😎 요약하면, AWS CodeBuild는 개발자가 빌드 인프라를 직접 관리하지 않고도 자동으로 확장되는 클라우드 기반 빌드 환경에서 소스 코드 컴파일, 테스트, 패키징을 수행할 수 있게 해주는 완전 관리형 서비스입니다.
😎 다양한 언어와 도구를 지원하며, AWS 생태계와 긴밀히 연동되어 CI/CD 파이프라인 구축에 핵심 역할을 하죠.
AWS CodeBuild는 EC2 인스턴스 유형 및 구성 가능한 스토리지 크기 지정에 대한 지원을 추가 한다고 합니다. 🤔
무슨 말인지 모르겠으니 차근차근 하나씩 알아보고 테스트도 한번 해보겠습니다. 😎
우선 문서에서 아래와 같은 내용을 확인하였는데요,
항상 느끼지만 번역본 의미가 참 어려운 말로만 되어 있는거 같습니다. 😂
거두절미 하고 알아본 내용을 하나씩 정리해 보겠습니다.
AWS CodeBuild는 일반적으로 빌드 요청이 발생한 시점에 빌드 환경을 빌드하고 빌드가 완료되면 삭제됩니다.
→ 이것을 On-Demand Fleet 이라고합니다.
한편, 사전에 빌드 환경을 Idle 상태로 준비해 두고, 빌드의 리퀘스트가 있던 타이밍에 곧바로 개시시킬 수도 있습니다.
→ 이것을 예약 용량 플릿(Reserved Capacity Fleet) 이라고 합니다.
예약 용량 플릿은 신속하게 빌드를 시작할 수 있는 것이 장점이지만, 한편으로 상시적으로 Idle 상태로 환경을 준비해 둘 필요가 있기 때문에 요금이 계속 발생한다는 점도 있습니다.
온디맨드 플리트는 특별히 준비가 필요 없고, 예약 용량 플릿는 사전에 컴퓨팅 플리트를 작성한 후 CodeBuild 프로젝트에서 지정합니다.
Q. 질문🙋♂️! On-Demand Fleet?, Reserved Capacity Fleet?
AWS CodeBuild의 온디맨드 플릿(On-Demand Fleet)은 빌드 작업을 실행할 때 필요에 따라 자동으로 컴퓨팅 리소스를 할당하고 확장하는 완전 관리형 컴퓨팅 환경입니다.
온디맨드 플릿의 주요 특징
예약 용량 플릿과의 차이점
구분 | 예약 용량 플릿 | 온디맨드 플릿 |
|---|---|---|
인스턴스 상태 | 항상 실행 중 (상시 가동) | 빌드 요청 시 프로비저닝, 빌드 후 종료 |
빌드 시작 지연 시간 | 매우 짧음 | 프로비저닝 시간만큼 지연 가능 |
비용 구조 | 인스턴스 실행 시간과 관계없이 요금 발생 | 사용한 빌드 시간만큼만 비용 발생 |
컴퓨팅 구성 | 세밀한 구성 가능 (vCPU, 메모리, 스토리지 등) | 사전 정의된 컴퓨팅 유형 선택 |
적합한 사용 사례 | 빌드가 빈번하고 지연 시간 최소화 필요 | 빌드가 가변적이고 비용 최적화가 중요한 경우 |
과거에는,,,
예전 이미지를 찾다보니 그나마… 아래 이미지를 보면 예약 용량 플릿은 2024년 1월경에 등장한 새로운 기능으로, 그 당시는 다음과 같이 플릿 작성 시에 다음과 같은 형태로 빌드 환경의 스펙을 지정하고 있었습니다.

현재 (2025년 4월 27일 기준)
현재는 콘솔에서 다음과 같이 운영체제 컴퓨팅 모드를 선택할 수 있습니다.


먼저 선택 가이드 입니다.
기존과 같이 사전 정의된 세트에서 선택하는 형태가 아닌 추가 구성을 통해, vCPU / 메모리 / 디스크를 지정해 플릿을 구축할 수 있도록 되어 있습니다.

문서를 확인해 보니 2024년 11월 다음 업데이트에서 구현된 기능인 것 같습니다.
18개의 새로운 컴퓨팅 유형이 추가되고, 추가로 vCPU, 메모리 크기, 디스크 용량 속성을 지정함으로써 새로운 컴퓨팅 유형에 액세스할 수 있게 되었습니다.
테스트로 vCPU를 변경해보니 reserved.x86-64.16cpu.32gib로 변경되었습니다.
vCPU의 변경에 맞추어 메모리와 디스크도 자동으로 변경되고 있습니다.
어디까지나 사전에 준비되어 있는 몇 가지 옵션 중에서 선택하는 형태이므로 기준에서 벗어나는 조합을 선택할 수는 없는 것으로 보입니다.

사용자 지정 인스턴스는 최근 업데이트에 추가된 새로운 선택 모드입니다.
이 선택 모드는 위에서 언급했었던 온디맨드 플릿과 예약 용량 플릿중 실제로는 예약 용량 플릿에서만 제공되는 기능입니다.
우리가 최초에 알아보려고 했던 주제의 내용입니다.

운영 체제/아키텍처에 해당하는 인스턴스 유형이 나열되므로 선택할 수 있습니다.

디스크는 64GB가 기본값입니다.
사용자 지정 인스턴스를 선택할 때 인스턴스 유형에 따라 vCPU와 메모리가 결정되지만 추가 EBS 볼륨을 설정하여 디스크 크기를 확장할 수 있습니다.

이렇게 문서 내용과 실제 콘솔을 통해 CodeBuild를 살펴보았는데요,
최근 AWS CodeBuild는 예약 용량 플릿 (Reserved Capacity Fleet) 설정의 유연성을 크게 강화했다는 것을 알 수 있었습니다.
이제 콘솔에서 플릿 생성 시 다음과 같이 세부적으로 환경을 지정할 수 있습니다.
특히 ATTRIBUTE_BASED_COMPUTE 옵션을 활용하면 원하는 vCPU, 메모리, 디스크 스펙을 입력하여 CodeBuild가 조건에 맞는 최적 인스턴스를 자동으로 선택하도록 할 수 있습니다.
이로써 워크로드 특성에 최적화된 빌드 환경을 손쉽게 구성할 수 있겠죠?
비용도 참고해주세요!
사용자 지정 인스턴스의 추가 스토리지 요금 (서울 리전 기준)
서울 리전(ap-northeast-2)의 추가 스토리지 요금은 공식 AWS CodeBuild 요금 페이지에서 $0.000000037/분/GB로 책정되어 있습니다.
긴 글 읽어주셔서 감사합니다!
참고문서
[1] AWS CodeBuild란 무엇인가요? - AWS CodeBuild
[3] AWS CodeBuild, 이제 예약 용량을 위한 추가 컴퓨팅 유형 지원 - AWS
[5] 관리형 빌드 서버 - AWS CodeBuild 요금 - AWS
