AWS SAM에서 CI/CD 시스템 및 파이프라인을 사용하여 배포 - AWS Serverless Application Model

AWS SAM에서 CI/CD 시스템 및 파이프라인을 사용하여 배포

AWS SAM은 조직이 선호하는 CI/CD 시스템을 위한 파이프라인을 만들 수 있도록 지원하여 배포 빈도 가속화, 변경 리드 타임 단축, 배포 오류 감소와 같은 CI/CD의 이점을 최소한의 노력으로 실현할 수 있습니다.

AWS SAM은 컨테이너 이미지 구축을 통해 서버리스 애플리케이션의 CI/CD 작업을 간소화합니다. AWS SAM이 제공하는 이미지에는 지원되는 여러 AWS Lambda런타임을 위한 AWS SAM CLI 및 빌드 도구가 포함되어 있습니다. 따라서 AWS SAM CLI를 사용하여 서버리스 애플리케이션을 더 쉽게 구축하고 패키징할 수 있습니다. 또한 이러한 이미지를 사용하면 작업팀들이 CI/CD 시스템용 이미지를 직접 만들고 관리해야 할 필요성이 줄어듭니다. AWS SAM 빌드 컨테이너 이미지에 대한 자세한 내용은을 잠조하세요AWS SAM의 이미지 리포지토리

여러 CI/CD 시스템이 AWS SAM 빌드 컨테이너 이미지를 지원합니다. 사용해야 하는 CI/CD 시스템은 여러 요인에 따라 달라집니다. 여기에는 애플리케이션이 단일 런타임을 사용하는지 다중 런타임을 사용하는지, 컨테이너 이미지 내에 애플리케이션을 구축할지 아니면 가상 머신(VM) 또는 베어메탈 호스트와 같은 호스트 머신에 직접 빌드할지 여부가 포함됩니다.

AWS SAM은 또한 AWS의 배포 모범 사례를 캡슐화하는 여러 CI/CD 시스템을 위한 기본 파이프라인 템플릿 세트를 제공합니다. 이러한 기본 파이프라인 템플릿은 표준 JSON/YAML 파이프라인 구성 형식을 사용하며, 내장된 모범 사례는 다중 계정 및 다중 지역 배포를 수행하고 파이프라인이 인프라를 의도하지 않게 변경할 수 없도록 확인하는 데 도움이 됩니다.

서버리스 애플리케이션을 AWS SAM 배포하는 데 사용할 수 있는 두 가지 기본 옵션이 있습니다. 1) AWS SAM CLI 명령을 사용하도록 기존 파이프라인 구성을 수정하는 것 혹은 2) 귀하 자신의 애플리케이션의 시작점으로 사용할 수 있는 예제 CI/CD 파이프라인 구성을 생성하는 것입니다.

파이프라인이란 무엇입니까?

파이프라인은 애플리케이션의 새 버전을 릴리스하기 위해 수행되는 자동화된 단계의 시퀀스입니다. AWS SAM에서는 AWS CodePipeline, Jenkins, GitLab CI/CDGitHub Action을 비롯한 여러 일반 CI/CD 시스템을 사용하여 애플리케이션을 배포할 수 있습니다.

파이프라인 템플릿에는 다중 계정 및 다중 리전 배포에 도움이 되는 AWS 배포 모범 사례가 포함되어 있습니다. 개발 및 프로덕션과 같은 AWS 환경은 일반적으로 서로 다른 AWS 계정에 존재합니다. 이를 통해 개발 팀은 의도하지 않은 인프라 변경을 방지하면서 안전한 배포 파이프라인을 구성할 수 있습니다.

고유한 사용자 지정 파이프라인 템플릿을 제공하여 전체 개발 팀에서 파이프라인을 표준화할 수도 있습니다.