EC2 Image Builder에 대해 알아보자!
안녕하세요! 클래스메소드 금상원 입니다.
이번 블로그에서는 EC2 Image Builder에 대해 알아보도록 하겠습니다.
EC2 Image Builder 란?
EC2 Image Builder는 AWS에서 제공하는 표준화된 이미지를 자동으로 생성하고 관리하는 서비스입니다. 운영체제 설치, 소프트웨어 패키지 구성, 보안 패치 적용 등을 자동화하는 데 도움이 AWS 서비스 되는 완전관리형입니다.
주로 여러 서버에 동일한 환경을 구성해야 할 때나, 정기적으로 보안 업데이트가 적용된 새로운 서버 이미지가 필요한 경우에 사용됩니다. 서비스 이름에 EC2가 포함되어 있지만, Amazon EC2뿐만 아니라 온프레미스의 가상 머신 이미지나 컨테이너 이미지 생성에도 사용할 수 있어 다양한 환경에서 활용이 가능합니다.
EC2 Image Builder의 동작 흐름
EC2 Image Builder의 동작 흐름은 아래와 같이 진행 됩니다.
- 빌드 단계
- 기본 이미지 선택
- 빌드 구성 요소 적용 (소프트웨어 설치, 설정)
- 테스트 단계
- 생성된 이미지 검증
- 정의된 테스트 실행
- 배포 단계
- 테스트 통과 시 이미지 배포
- 지정된 리전 및 AWS계정에 이미지 복제
EC2 Image Builder 요금
EC2 Image Builder 자체는 무료 서비스입니다. 하지만 EC2 Image Builder의 작성, 보존, 공유를 위해 사용한 리소스에 대한 요금은 발생합니다.
- 리소스의 예
- EC2 인스턴스
- EBS 스냅샷
- Amazon S3 (로그용)
- Amazon CloudWatch Logs (로그용)
- Amazon Inspector 등
지원 되는 OS와 버전
EC2 Image Builder는 특정 OS의 버전만을 지원합니다.
지원 되는 OS의 정보는 아래의 공식 홈페이지에서 확인을 부탁드립니다.
EC2 Image Builder 기능
- 자동화된 이미지 관리
- OS 이미지 빌드, 커스터마이징, 배포 자동화
- 파이프라인을 통한 지속적인 이미지 관리
- 보안 및 규정 준수
- 최신 보안 패치가 적용된 이미지 생성
- 컴플라이언스 요구사항 충족
- 하이브리드 환경 지원
- AWS 환경 이미지 생성
- VM Import/Export와 연동하여 온프레미스 환경 지원
- 품질 보증
- 프로덕션 환경 적용 전 자동화된 테스트
- 이미지 검증 프로세스 내장
- 관리
- 수명 주기 정책 사용가능
- AWS 계정 간 리소스 공유
알아두면 좋은 EC2 Image Builder의 용어
EC2 Image Builder 사용하기에 앞서 아래의 용어들을 알아 두면 각 작업의 흐름이나
구성 요소
EC2 Image Builder에서 이미지를 생성하기 전에는 두 가지 주요 구성 요소를 정의해야 합니다
- 빌드 구성 요소
- 이미지에 필요한 소프트웨어 설치 과정을 정의합니다
- 소프트웨어 다운로드, 설치, 설정 방법을 문서화합니다
- 예: 웹 서버 설치, 보안 패치 적용 등
- 테스트 구성 요소
- 설치된 소프트웨어의 정상 작동 여부를 확인하는 테스트를 정의합니다
- 품질 검증을 위한 테스트 절차를 문서화합니다
- 예: 서비스 구동 확인, 보안 설정 검증 등
이러한 구성 요소들을 통해 안정적이고 표준화된 이미지 생성이 가능합니다.
이미지 레시피 와 컨테이너 레시피
이미지 레시피 와 컨테이너 레시피는 출력 AMI 이미지에 대해 원하는 구성을 생성하기 위해 기본 이미지 및 기본 이미지에 적용할 구성 요소를 정의하는 문서입니다.
EC2의 경우는, 이미지 레시피.컨테이너의 경우는 컨테이너 레시피가 됩니다.
이미지 파이프라인
이미지 파이프라인은 이미지 생성을 자동화하기 위한 설정입니다.
다음 요소들을 하나의 자동화된 흐름으로 구성합니다.
- 레시피 설정
- 어떤 이미지를 만들지 정의
- 필요한 구성 요소 지정
- 인프라 설정
- 이미지 생성에 사용될 리소스 정의
- 인스턴스 유형, 네트워크 설정 등
- 배포 설정
- 생성된 이미지의 배포 방법 지정
- 배포 대상 리전 및 AWS계정 설정
- 실행 트리거
- 자동 실행 조건 설정
- 예: 일정 주기, 수동
마무리
이번 블로그에서는 EC2 Image Builder에 대해 알아보았습니다. 평소에 EC2 Image Builder에 관심이 있으셨던 분들께 조금이나마 도움이 되었으면 좋겠습니다.
참고 자료