.zip 파일 아카이브를 사용하여 Ruby Lambda 함수 배포 - AWS Lambda

.zip 파일 아카이브를 사용하여 Ruby Lambda 함수 배포

AWS Lambda 함수의 코드는 함수의 핸들러 코드와 코드가 의존하는 추가 종속 항목(젬)을 포함하는 .rb 파일로 구성됩니다. Lambda에 이 함수 코드를 배포하려면 배포 패키지를 사용합니다. 이 패키지는 .zip 파일 아카이브 또는 컨테이너 이미지일 수 있습니다. Ruby에서 컨테이너 이미지를 사용하는 방법에 대한 자세한 내용은 컨테이너 이미지로 Ruby Lambda 함수 배포를 참조하세요.

배포 패키지를 .zip 파일 아카이브로 생성하려면 명령줄 도구의 기본 제공 .zip 파일 아카이브 유틸리티 또는 7zip과 같은 기타 .zip 파일 유틸리티를 사용합니다. 다음 섹션에 표시된 예제에서는 Linux 또는 MacOS 환경에서 명령줄 zip 도구를 사용한다고 가정합니다. Windows에서 동일한 명령을 사용하려면 Windows Subsystem for Linux를 설치하여 Ubuntu 및 Bash의 Windows 통합 버전을 가져옵니다.

Lambda는 POSIX 파일 권한을 사용하므로 .zip 파일 아카이브를 생성하기 전에 배포 패키지 폴더에 대한 권한을 설정해야 할 수 있습니다.

다음 섹션의 예제 명령은 Bundler 유틸리티를 사용하여 배포 패키지에 종속 항목을 추가합니다. 번들러를 설치하려면 다음 명령을 실행하세요.

gem install bundler

Ruby의 종속 항목

Ruby 런타임을 사용하는 Lambda 함수의 경우 종속 항목은 Ruby 젬일 수 있습니다. .zip 아카이브를 사용하여 함수를 배포할 때 이러한 종속 항목을 함수 코드와 함께 .zip 파일에 추가하거나 Lambda 계층을 사용할 수 있습니다. 계층은 추가 코드 또는 기타 콘텐츠를 포함할 수 있는 별도의 .zip 파일입니다. Lambda 계층 사용에 대해 자세히 알아보려면 계층으로 Lambda 종속성 관리 섹션을 참조하세요.

Ruby 런타임에는 AWS SDK for Ruby가 포함되어 있습니다. 함수에서 SDK를 사용하는 경우 SDK를 코드와 번들링할 필요가 없습니다. 그러나 종속 항목을 완전히 제어하거나 특정 버전의 SDK를 사용하기 위해 함수의 배포 패키지에 SDK를 추가할 수 있습니다. SDK를 .zip 파일에 포함하거나 Lambda 계층을 사용하여 추가할 수 있습니다. .zip 파일 또는 Lambda 계층의 종속 항목은 런타임에 포함된 버전보다 우선합니다. 런타임 버전에 포함된 SDK for Ruby 버전을 확인하려면 런타임에 포함된 SDK 버전 섹션을 참조하세요.

AWS Shared Responsibility Model에서는 사용자가 함수의 배포 패키지에 있는 모든 종속 항목을 관리해야 합니다. 여기에는 업데이트 및 보안 패치 적용이 포함됩니다. 함수의 배포 패키지에서 종속 항목을 업데이트하려면 먼저 새 .zip 파일을 생성한 다음 Lambda에 업로드합니다. 자세한 내용은 종속 항목이 있는 .zip 배포 패키지 생성.zip 파일을 사용하여 Ruby Lambda 함수 생성 및 업데이트 섹션을 참조하세요.

종속 항목이 없는 .zip 배포 패키지 생성

함수 코드에 종속 항목이 없는 경우 .zip 파일에는 함수의 핸들러 코드가 있는 .rb 파일만 포함됩니다. 선호하는 zip 유틸리티를 사용하여 루트에 .rb 파일이 있는 .zip 파일을 생성합니다. .rb 파일이.zip 파일의 루트에 없는 경우 Lambda는 코드를 실행할 수 없습니다.

.zip 파일을 배포하여 새 Lambda 함수를 생성하거나 기존 함수를 업데이트하는 방법을 알아보려면 .zip 파일을 사용하여 Ruby Lambda 함수 생성 및 업데이트 섹션을 참조하세요.

종속 항목이 있는 .zip 배포 패키지 생성

함수 코드가 추가 Ruby 젬에 의존하는 경우 이러한 종속 항목을 함수 코드와 함께 .zip 파일에 추가하거나 Lambda 계층을 사용할 수 있습니다. 이 섹션의 지침에서는 .zip 배포 패키지에 종속 항목을 포함하는 방법을 보여줍니다. 계층에 종속 항목을 포함하는 방법에 대한 지침은 종속 항목을 위한 Ruby 계층 생성 섹션을 참조하세요.

함수 코드가 프로젝트 디렉터리의 lambda_function.rb라는 파일에 저장되어 있다고 가정해 보겠습니다. 다음 예제 CLI 명령은 함수 코드와 해당 종속 항목을 포함하는 my_deployment_package.zip라는 .zip 파일을 생성합니다.

배포 패키지를 만드는 방법
  1. 프로젝트 디렉터리에서 Gemfile을 생성하여 종속 항목을 지정합니다.

    bundle init
  2. 선호하는 텍스트 편집기를 사용해 Gemfile을 편집하여 함수의 종속 항목을 지정합니다. 예를 들어 TZInfo 젬을 사용하려면 Gemfile을 다음과 같이 편집하세요.

    source "https://rubygems.org" gem "tzinfo"
  3. 다음 명령을 실행하여 Gemfile에 지정된 젬을 프로젝트 디렉터리에 설치합니다. 이 명령은 vendor/bundle을 젬 설치를 위한 기본 경로로 설정합니다.

    bundle config set --local path 'vendor/bundle' && bundle install

    다음과 유사한 출력 화면이 표시되어야 합니다.

    Fetching gem metadata from https://rubygems.org/........... Resolving dependencies... Using bundler 2.4.13 Fetching tzinfo 2.0.6 Installing tzinfo 2.0.6 ...
    참고

    나중에 젬을 전역적으로 다시 설치하려면 다음 명령을 실행합니다.

    bundle config set --local system 'true'
  4. 함수의 핸들러 코드와 이전 단계에서 설치한 종속 항목과 함께 lambda_function.rb 파일이 포함된 .zip 파일 아카이브를 생성합니다.

    zip -r my_deployment_package.zip lambda_function.rb vendor

    다음과 유사한 출력 화면이 표시되어야 합니다.

    adding: lambda_function.rb (deflated 37%) adding: vendor/ (stored 0%) adding: vendor/bundle/ (stored 0%) adding: vendor/bundle/ruby/ (stored 0%) adding: vendor/bundle/ruby/3.2.0/ (stored 0%) adding: vendor/bundle/ruby/3.2.0/build_info/ (stored 0%) adding: vendor/bundle/ruby/3.2.0/cache/ (stored 0%) adding: vendor/bundle/ruby/3.2.0/cache/aws-eventstream-1.0.1.gem (deflated 36%) ...

종속 항목을 위한 Ruby 계층 생성

이 섹션의 지침은 계층에 종속 항목을 포함하는 방법을 보여줍니다. 배포 패키지에 종속 항목을 포함하는 방법에 대한 지침은 종속 항목이 있는 .zip 배포 패키지 생성 섹션을 참조하세요.

함수에 계층을 추가하면 Lambda는 계층 콘텐츠를 해당 실행 환경의 /opt 디렉터리로 추출합니다. 각 Lambda 런타임에 대해 PATH 변수에는 /opt 디렉터리 내의 특정 폴더 경로가 이미 포함되어 있습니다. PATH 변수가 계층 콘텐츠를 가져오도록 하려면 계층 .zip 파일의 종속성이 다음 폴더 경로에 있어야 합니다.

  • ruby/gems/2.7.0 (GEM_PATH)

  • ruby/lib (RUBYLIB)

예를 들어, 계층.zip 파일 구조는 다음과 같을 수 있습니다.

json.zip └ ruby/gems/2.7.0/ | build_info | cache | doc | extensions | gems | └ json-2.1.0 └ specifications └ json-2.1.0.gemspec

또한 Lambda는 /opt/lib 디렉터리의 모든 라이브러리와 /opt/bin 디렉터리의 모든 바이너리를 자동으로 감지합니다. Lambda가 계층 콘텐츠를 제대로 찾을 수 있도록 다음 구조로 계층을 생성할 수도 있습니다.

custom-layer.zip └ lib | lib_1 | lib_2 └ bin | bin_1 | bin_2

계층을 패키징한 후 Lambda에서 계층 생성 및 삭제함수에 계층 추가을 참조하여 계층 설정을 완료합니다.

네이티브 라이브러리로 .zip 배포 패키지 생성

nokogiri, nio4rmysql과 같은 많은 일반적인 Ruby 젬은 C로 작성된 네이티브 확장을 포함합니다. C 코드가 포함된 라이브러리를 배포 패키지에 추가할 때 패키지가 Lambda 실행 환경과 호환되도록 올바르게 빌드해야 합니다.

프로덕션 애플리케이션의 경우 AWS Serverless Application Model(AWS SAM)을 사용하여 코드를 빌드하고 배포하는 것이 좋습니다. AWS SAM에서 sam build --use-container 옵션을 사용하여 Lambda와 유사한 Docker 컨테이너 내에 함수를 빌드합니다. AWS SAM을 사용하여 함수 코드를 배포하는 방법에 대한 자세한 내용은 AWS SAM 개발자 안내서의 Building applications를 참조하세요.

AWS SAM을 사용하지 않고 기본 확장이 있는 젬이 포함된 .zip 배포 패키지를 생성하려면 대신 컨테이너를 사용하여 Lambda Ruby 런타임 환경과 동일한 환경에서 종속 항목을 번들링할 수 있습니다. 이 단계를 완료하려면 빌드 머신에 Docker가 설치되어 있어야 합니다. Docker 설치에 대해 자세히 알아보려면 Install Docker Engine을 참조하세요.

Docker 컨테이너에서.zip 배포 패키지를 생성하려면
  1. 컨테이너를 저장할 로컬 빌드 머신에 폴더를 만듭니다. 해당 폴더 안에 dockerfile이라는 파일을 생성하고 다음 코드를 붙여넣습니다.

    FROM public.ecr.aws/sam/build-ruby3.2:latest-x86_64 RUN gem update bundler CMD "/bin/bash"
  2. dockerfile을 생성한 폴더 내에서 다음 명령을 실행하여 Docker 컨테이너를 생성합니다.

    docker build -t awsruby32 .
  3. 함수의 핸들러 코드와 함수의 종속 항목을 지정하는 Gemfile이 있는 .rb 파일이 포함된 프로젝트 디렉터리로 이동합니다. 해당 디렉터리 내에서 다음 명령을 실행하여 Lambda Ruby 컨테이너를 시작합니다.

    Linux/MacOS
    docker run --rm -it -v $PWD:/var/task -w /var/task awsruby32
    참고

    macOS에서는 요청한 이미지의 플랫폼이 감지된 호스트 플랫폼과 일치하지 않는다는 경고가 표시될 수 있습니다. 이 경고는 무시하세요.

    Windows PowerShell
    docker run --rm -it -v ${pwd}:var/task -w /var/task awsruby32

    컨테이너가 시작되면 bash 프롬프트가 표시됩니다.

    bash-4.2#
  4. Gemfile에 지정된 젬을 로컬 vendor/bundle 디렉터리에 설치하고 종속 항목을 설치하도록 번들 유틸리티를 구성합니다.

    bash-4.2# bundle config set --local path 'vendor/bundle' && bundle install
  5. 함수 코드 및 해당 종속 항목을 사용하여 .zip 배포 패키지를 생성합니다. 이 예제에서 함수의 핸들러 코드가 포함된 파일의 이름은 lambda_function.rb입니다.

    bash-4.2# zip -r my_deployment_package.zip lambda_function.rb vendor
  6. 컨테이너를 종료하고 로컬 프로젝트 디렉터리로 돌아갑니다.

    bash-4.2# exit

    이제 .zip 파일 배포 패키지를 사용하여 Lambda 함수를 생성하거나 업데이트할 수 있습니다. .zip 파일을 사용하여 Ruby Lambda 함수 생성 및 업데이트 섹션을 참조하세요

.zip 파일을 사용하여 Ruby Lambda 함수 생성 및 업데이트

.zip 배포 패키지를 생성한 후 이를 사용하여 새 Lambda 함수를 생성하거나 기존 함수를 업데이트할 수 있습니다. Lambda 콘솔, AWS Command Line Interface 및 Lambda API를 사용하여 .zip 패키지를 배포할 수 있습니다. AWS Serverless Application Model(AWS SAM) 및 AWS CloudFormation을 사용하여 Lambda 함수를 생성하고 업데이트할 수도 있습니다.

Lambda용 .zip 배포 패키지의 최대 크기는 250MB(압축 해제됨)입니다. 이 제한은 Lambda 계층을 포함하여 업로드하는 모든 파일의 합산 크기에 적용됩니다.

Lambda 런타임은 배포 패키지의 파일을 읽을 수 있는 권한이 필요합니다. Linux 권한 8진수 표기법에서는 Lambda에 실행 불가능한 파일(rw-r--r--)에 대한 644개의 권한과 디렉터리 및 실행 파일에 대한 755개의 권한(rwxr-xr-x)이 필요합니다.

Linux 및 MacOS에서는 chmod 명령을 사용하여 배포 패키지의 파일 및 디렉터리에 대한 파일 권한을 변경합니다. 예를 들어, 실행 파일에 올바른 권한을 부여하려면 다음 명령을 실행합니다.

chmod 755 <filepath>

Windows에서 파일 권한을 변경하려면 Microsoft Windows 설명서의 Set, View, Change, or Remove Permissions on an Object를 참조하세요.

콘솔을 사용하여.zip 파일로 함수 생성 및 업데이트

새 함수를 생성하려면 먼저 콘솔에서 함수를 생성한 다음.zip 아카이브를 업로드해야 합니다. 기존 함수를 업데이트하려면 함수에 대한 페이지를 연 다음 동일한 절차에 따라 업데이트된 .zip 파일을 추가합니다.

.zip 파일이 50MB 미만인 경우 로컬 컴퓨터에서 직접 파일을 업로드하여 함수를 생성하거나 업데이트할 수 있습니다. 50MB보다 큰 .zip 파일의 경우 먼저 패키지를 Amazon S3 버킷에 업로드해야 합니다. AWS Management Console을 사용하여 Amazon S3 버킷에 파일을 업로드하는 방법에 대한 지침은 Amazon S3 시작하기를 참조하세요. AWS CLI를 사용하여 파일을 업로드하려면 AWS CLI 사용 설명서의 객체 이동을 참조하세요.

참고

기존 함수의 배포 패키지 유형(.zip 또는 컨테이너 이미지)은 변경할 수 없습니다. 예를 들어 .zip 파일 아카이브를 사용하도록 컨테이너 이미지 함수를 변환할 수는 없습니다. 새로운 함수를 생성해야 합니다.

새 함수 생성(콘솔)
  1. Lambda 콘솔의 함수 페이지를 열고 함수 생성을 선택합니다.

  2. 새로 작성을 선택합니다.

  3. 기본 정보에서 다음과 같이 합니다.

    1. 함수 이름에 함수 이름을 입력합니다.

    2. 런타임에서 사용할 런타임을 선택합니다.

    3. (선택 사항) 아키텍처에서 함수에 대한 명령 세트 아키텍처를 선택합니다. 기본 아키텍처는 x86_64입니다. 함수에 대한 .zip 배포 패키지가 선택한 명령 세트 아키텍처와 호환되는지 확인합니다.

  4. (선택 사항) 권한(Permissions)에서 기본 실행 역할 변경(Change default execution role)을 확장합니다. 새로운 실행 역할을 생성하거나 기존 실행 역할을 사용할 수 있습니다.

  5. 함수 생성(Create function)을 선택합니다. Lambda에서 선택한 런타임을 사용하여 기본 'Hello World' 함수를 생성합니다.

로컬 시스템에서 .zip 아카이브 업로드(콘솔)
  1. Lambda 콘솔의 함수 페이지에서.zip 파일을 업로드할 함수를 선택합니다.

  2. 코드 탭을 선택합니다.

  3. 코드 소스 창에서 에서 업로드를 선택합니다.

  4. .zip 파일을 선택합니다.

  5. .zip 파일을 업로드하려면 다음을 수행합니다.

    1. 업로드를 선택한 다음 파일 선택기에서.zip 파일을 선택합니다.

    2. Open을 선택합니다.

    3. Save(저장)를 선택합니다.

Amazon S3 버킷에서.zip 아카이브 업로드(콘솔)
  1. Lambda 콘솔의 함수 페이지에서 새 .zip 파일을 업로드할 함수를 선택합니다.

  2. 코드 탭을 선택합니다.

  3. 코드 소스 창에서 에서 업로드를 선택합니다.

  4. Amazon S3 위치를 선택합니다.

  5. .zip 파일의 Amazon S3 링크 URL을 붙여 넣고 저장을 선택합니다.

콘솔 코드 편집기를 사용하여.zip 파일 함수 업데이트

.zip 배포 패키지를 사용하는 일부 함수의 경우 Lambda 콘솔의 기본 제공 코드 편집기를 사용하여 함수 코드를 직접 업데이트할 수 있습니다. 이 기능을 사용하려면 함수가 다음 조건을 충족해야 합니다.

  • 함수에서 해석된 언어 런타임(Python, Node.js 또는 Ruby) 중 하나를 사용해야 합니다.

  • 함수의 배포 패키지가 50MB(압축 해제)보다 작아야 합니다.

컨테이너 이미지 배포 패키지가 있는 함수의 함수 코드는 콘솔에서 직접 편집할 수 없습니다.

콘솔 코드 편집기를 사용하여 함수 코드 업데이트
  1. Lambda 콘솔의 함수 페이지를 열고 함수를 선택합니다.

  2. 코드 탭을 선택합니다.

  3. 코드 소스 창에서 소스 코드 파일을 선택하고 통합 코드 편집기에서 편집합니다.

  4. 배포 섹션에서 배포를 선택하여 함수의 코드를 업데이트하세요.

    Lambda 콘솔 코드 편집기에서의 배포 버튼

AWS CLI를 사용하여.zip 파일로 함수 생성 및 업데이트

AWS CLI를 사용하여 새 함수를 생성하거나.zip 파일로 기존 함수를 업데이트할 수 있습니다. create-function 및 update-function-code 명령을 사용하여 .zip 패키지를 배포합니다. .zip 파일이 50MB보다 작은 경우 로컬 빌드 시스템의 파일 위치에서 .zip 패키지를 업로드할 수 있습니다. 더 큰 파일의 경우 Amazon S3 버킷에서 .zip 패키지를 업로드해야 합니다. AWS CLI를 사용하여 Amazon S3 버킷에 파일을 업로드하는 방법에 대한 지침은 AWS CLI 사용 설명서의 객체 이동을 참조하세요.

참고

AWS CLI를 사용하여 Amazon S3 버킷에서 .zip 파일을 업로드하는 경우 버킷은 함수와 동일한 AWS 리전에 있어야 합니다.

AWS CLI에서 .zip 파일을 사용하여 새 함수를 생성하려면 다음을 지정해야 합니다.

  • 함수의 이름(--function-name)

  • 함수의 런타임(--runtime)

  • 함수의 실행 역할(--role)의 Amazon 리소스 이름(ARN)

  • 함수 코드에 있는 핸들러 메서드의 이름(--handler)

.zip 파일의 위치도 지정해야 합니다. .zip 파일이 로컬 빌드 시스템의 폴더에 있는 경우 다음 예제 명령과 같이 --zip-file 옵션을 사용하여 파일 경로를 지정합니다.

aws lambda create-function --function-name myFunction \ --runtime ruby3.2 --handler lambda_function.lambda_handler \ --role arn:aws:iam::111122223333:role/service-role/my-lambda-role \ --zip-file fileb://myFunction.zip

Amazon S3 버킷에서 .zip 파일의 위치를 지정하려면 다음 예제 명령과 같이 --code 옵션을 사용합니다. 버전이 지정된 객체에만 S3ObjectVersion 파라미터를 사용해야 합니다.

aws lambda create-function --function-name myFunction \ --runtime ruby3.2 --handler lambda_function.lambda_handler \ --role arn:aws:iam::111122223333:role/service-role/my-lambda-role \ --code S3Bucket=amzn-s3-demo-bucket,S3Key=myFileName.zip,S3ObjectVersion=myObjectVersion

CLI를 사용하여 기존 함수를 업데이트하려면 --function-name 파라미터를 사용하여 함수 이름을 지정합니다. 함수 코드를 업데이트하는 데 사용할.zip 파일의 위치도 지정해야 합니다. .zip 파일이 로컬 빌드 시스템의 폴더에 있는 경우 다음 예제 명령과 같이 --zip-file 옵션을 사용하여 파일 경로를 지정합니다.

aws lambda update-function-code --function-name myFunction \ --zip-file fileb://myFunction.zip

Amazon S3 버킷에서 .zip 파일의 위치를 지정하려면 다음 예제 명령과 같이 --s3-bucket--s3-key 옵션을 사용합니다. 버전이 지정된 객체에만 --s3-object-version 파라미터를 사용해야 합니다.

aws lambda update-function-code --function-name myFunction \ --s3-bucket amzn-s3-demo-bucket --s3-key myFileName.zip --s3-object-version myObject Version

Lambda API를 사용하여.zip 파일로 함수 생성 및 업데이트

.zip 파일 아카이브를 사용하여 함수를 생성하고 업데이트하려면 다음 API 작업을 사용합니다.

AWS SAM을 사용하여.zip 파일로 함수 생성 및 업데이트

AWS Serverless Application Model(AWS SAM)은 AWS에서 서버리스 애플리케이션을 빌드하고 실행하는 프로세스를 간소화하는 데 도움이 되는 도구 키트입니다. YAML 또는 JSON 템플릿에서 애플리케이션의 리소스를 정의하고 AWS SAM Command Line Interface(AWS SAM CLI)를 사용하여 애플리케이션을 빌드, 패키징 및 배포합니다. AWS SAM 템플릿에서 Lambda 함수를 빌드하면 AWS SAM은 함수 코드와 사용자가 지정하는 종속 항목을 사용하여 .zip 배포 패키지 또는 컨테이너 이미지를 자동으로 생성합니다. AWS SAM을 사용하여 Lambda 함수를 빌드하고 배포하는 방법에 대해 자세히 알아보려면 AWS Serverless Application Model 개발자 안내서의 Getting started with AWS SAM을 참조하세요.

AWS SAM을 사용하여 기존 .zip 파일 아카이브로 Lambda 함수를 생성할 수도 있습니다. AWS SAM을 사용하여 Lambda 함수를 생성하려면 Amazon S3 버킷 또는 빌드 시스템의 로컬 폴더에 .zip 파일을 저장할 수 있습니다. AWS CLI를 사용하여 Amazon S3 버킷에 파일을 업로드하는 방법에 대한 지침은 AWS CLI 사용 설명서의 객체 이동을 참조하세요.

AWS SAM 템플릿에서 AWS::Serverless::Function 리소스는 Lambda 함수를 지정합니다. 이 리소스에서 다음 속성을 설정하여 .zip 파일 아카이브로 함수를 생성합니다.

  • PackageType - Zip으로 설정됨

  • CodeUri - 함수 코드의 Amazon S3 URI, 로컬 폴더 경로 또는 FunctionCode 객체로 설정됨

  • Runtime - 선택한 런타임으로 설정됨

AWS SAM을 사용하면 .zip 파일이 50MB보다 큰 경우 Amazon S3 버킷에 먼저 파일을 업로드할 필요가 없습니다. AWS SAM은 로컬 빌드 시스템의 위치에서 허용되는 최대 크기 250MB(압축 해제)까지 .zip 패키지를 업로드할 수 있습니다.

AWS SAM에서 .zip 파일을 사용하여 함수를 배포하는 방법에 대해 자세히 알아보려면 AWS SAM 개발자 안내서의 AWS::Serverless::Function을 참조하세요.

AWS CloudFormation을 사용하여.zip 파일로 함수 생성 및 업데이트

AWS CloudFormation을 사용하여 .zip 파일 아카이브로 Lambda 함수를 생성할 수 있습니다. .zip 파일에서 Lambda 함수를 생성하려면 먼저 Amazon S3 버킷에 파일을 업로드해야 합니다. AWS CLI를 사용하여 Amazon S3 버킷에 파일을 업로드하는 방법에 대한 지침은 AWS CLI 사용 설명서의 객체 이동을 참조하세요.

AWS CloudFormation 템플릿에서 AWS::Lambda::Function 리소스는 Lambda 함수를 지정합니다. 이 리소스에서 다음 속성을 설정하여 .zip 파일 아카이브로 함수를 생성합니다.

  • PackageType - Zip으로 설정됨

  • CodeS3Bucket 및 S3Key 필드에 Amazon S3 버킷 이름과 .zip 파일 이름을 입력합니다.

  • Runtime - 선택한 런타임으로 설정됨

AWS CloudFormation에서 생성하는 .zip 파일은 4MB를 초과할 수 없습니다. AWS CloudFormation에서 .zip 파일을 사용하여 함수를 배포하는 방법에 대해 자세히 알아보려면 AWS CloudFormation 사용 설명서의 AWS::Lambda::Function을 참조하세요.