AWS Lambda와 함께 AWS 인프라 컴포저 사용 - AWS Lambda

AWS Lambda와 함께 AWS 인프라 컴포저 사용

AWS 인프라 컴포저은 AWS에 최신 애플리케이션을 디자인하기 위한 비주얼 빌더입니다. 시각적 캔버스에서 AWS 서비스를 드래그, 그룹화 및 연결하여 애플리케이션 아키텍처를 설계합니다. Infrastructure Composer는 설계에서 AWS SAM 또는 AWS CloudFormation을 사용하여 배포할 수 있는 코드형 인프라(IaC) 템플릿을 생성합니다.

Infrastructure Composer로 Lambda 함수 내보내기

Lambda 콘솔을 사용하여 기존 Lambda 함수의 구성을 기반으로 새 프로젝트를 생성하여 Infrastructure Composer 사용을 시작할 수 있습니다. 함수의 구성 및 코드를 Infrastructure Composer로 내보내서 새 프로젝트를 생성하려면 다음을 수행하세요.

  1. Lambda 콘솔의 함수 페이지를 엽니다.

  2. Infrastructure Composer 프로젝트의 기준으로 사용하려는 함수를 선택합니다.

  3. 함수 개요 창에서 Infrastructure Composer로 내보내기를 선택합니다.

    함수의 구성 및 코드를 Infrastructure Composer로 내보내기 위해 Lambda는 계정에 Amazon S3 버킷을 생성하여 이 데이터를 임시로 저장합니다.

  4. 대화 상자에서 확인 및 프로젝트 생성을 선택하여 이 버킷의 기본 이름을 수락하고 함수의 구성 및 코드를 Infrastructure Composer로 내보냅니다.

  5. (선택 사항) Lambda가 생성하는 Amazon S3 버킷의 다른 이름을 선택하려면 새 이름을 입력하고 확인 및 프로젝트 생성을 선택합니다. Amazon S3 버킷에 이름은 전역적으로 고유해야 하며 버킷 이름 지정 규칙을 따라야 합니다.

  6. 프로젝트 및 함수 파일을 Infrastructure Composer에 저장하려면 로컬 동기화 모드를 활성화합니다.

참고

이전에 Application Composer로 내보내기 기능을 사용하고 기본 이름을 사용하여 Amazon S3 버킷을 생성한 경우, Lambda는 이 버킷이 아직 존재한다면 재사용할 수 있습니다. 대화 상자에서 기본 버킷 이름을 수락하여 기존 버킷을 재사용합니다.

Amazon S3 버킷 구성 전송

Lambda가 함수 구성을 전송하기 위해 생성하는 Amazon S3 버킷은 AES 256 암호화 표준을 사용하여 객체를 자동으로 암호화합니다. Lambda는 또한 버킷 소유자 조건을 사용하도록 버킷을 구성하여 AWS 계정만 버킷에 객체를 추가할 수 있도록 합니다.

Lambda는 업로드 후 10일이 지나면 객체를 자동으로 삭제하도록 버킷을 구성합니다. 하지만 Lambda는 버킷 자체를 자동으로 삭제하지 않습니다. AWS 계정에서 버킷을 삭제하려면 버킷 삭제의 지침을 따릅니다. 기본 버킷 이름은 10자리 영숫자 문자열인 접두사 lambdasam을 사용하며, 함수를 생성한 AWS 리전의 위치는 다음과 같습니다.

lambdasam-06f22da95b-us-east-1

AWS 계정에 추가되어 추가 요금이 부과되지 않도록 하려면 Infrastructure Composer로 함수 내보내기를 완료하는 즉시 Amazon S3 버킷을 삭제하는 것이 좋습니다.

표준 Amazon S3 요금이 적용됩니다.

필수 권한

Infrastructure Composer 기능을 포함하는 Lambda 통합을 사용하려면 AWS SAM 템플릿을 다운로드하고 Amazon S3에 함수 구성을 작성할 수 있는 특정 권한이 필요합니다.

AWS SAM 템플릿을 다운로드하려면 다음 API 작업을 사용할 권한이 있어야 합니다.

IAM 사용자 역할에 AWSLambda_ReadOnlyAccess AWS 관리형 정책을 추가하여 이러한 모든 작업을 사용할 권한을 부여할 수 있습니다.

Lambda가 Amazon S3에 함수 구성을 작성하려면 다음 API 작업을 사용할 권한이 있어야 합니다.

함수 구성을 Infrastructure Composer로 내보낼 수 없는 경우 계정에 이러한 작업에 필요한 권한이 있는지 확인합니다. 필요한 권한이 있지만 여전히 함수 구성을 내보낼 수 없는 경우 Amazon S3에 대한 액세스 권한을 제한할 수 있는 리소스 기반 정책이 있는지 확인합니다.

기타 리소스

Infrastructure Composer에서 기존 Lambda 함수를 기반으로 서버리스 애플리케이션을 설계하는 방법에 대한 자세한 자습서는 코드형 인프라(IaC)와 함께 Lambda 사용를 참조하세요.

Infrastructure Composer 및 AWS SAM을 사용하여 Lambda를 사용하는 완전한 서버리스 애플리케이션을 설계 및 배포하려면 AWS 인프라 컴포저 자습서AWS 서버리스 패턴 워크숍에서 찾아 따라할 수도 있습니다.