기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS::Serverless::Function
AWS Lambda 함수, AWS Identity and Access Management (IAM) 실행 역할 및 함수를 트리거하는 이벤트 소스 매핑을 생성합니다.
AWS::Serverless::Function 리소스는 Metadata
리소스 속성도 지원하므로 애플리케이션에 필요한 사용자 지정 런타임을 빌드 AWS SAM 하도록에 지시할 수 있습니다. 사용자 지정 런타임을 구축하는 방법에 대한 자세한 정보는 에서 사용자 지정 런타임을 사용하여 Lambda 함수 빌드 AWS SAM 섹션을 참조하세요.
참고
에 배포하면가 AWS SAM 리소스를 AWS CloudFormation 리소스로 AWS CloudFormation AWS SAM 변환합니다. 자세한 내용은 AWS SAM용으로 생성된 AWS CloudFormation 리소스 단원을 참조하십시오.
구문
AWS Serverless Application Model (AWS SAM) 템플릿에서이 개체를 선언하려면 다음 구문을 사용합니다.
YAML
Type: AWS::Serverless::Function Properties: Architectures:
List
AssumeRolePolicyDocument:JSON
AutoPublishAlias:String
AutoPublishAliasAllProperties:Boolean
AutoPublishCodeSha256:String
CodeSigningConfigArn:String
CodeUri:String | FunctionCode
DeadLetterQueue:Map | DeadLetterQueue
DeploymentPreference:DeploymentPreference
Description:String
Environment:Environment
EphemeralStorage:EphemeralStorage
EventInvokeConfig:EventInvokeConfiguration
Events:EventSource
FileSystemConfigs:List
FunctionName:String
FunctionUrlConfig:FunctionUrlConfig
Handler:String
ImageConfig:ImageConfig
ImageUri:String
InlineCode:String
KmsKeyArn:String
Layers:List
LoggingConfig:LoggingConfig
MemorySize:Integer
PackageType:String
PermissionsBoundary:String
Policies:String | List | Map
PropagateTags:Boolean
ProvisionedConcurrencyConfig:ProvisionedConcurrencyConfig
RecursiveLoop:String
ReservedConcurrentExecutions:Integer
Role:String
RolePath:String
Runtime:String
RuntimeManagementConfig:RuntimeManagementConfig
SnapStart:SnapStart
SourceKMSKeyArn:String
Tags:Map
Timeout:Integer
Tracing:String
VersionDescription:String
VpcConfig:VpcConfig
속성
-
Architectures
-
함수의 명령 세트 아키텍처입니다.
이 속성에 대한 자세한 내용은 AWS Lambda 개발자 안내서의 Lambda 명령 세트 아키텍처를 참조하십시오.
유효한 값:
x86_64
혹은arm64
중 하나유형: 목록
필수 항목 여부: 아니요
기본값:
x86_64
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의Architectures
속성으로 직접 전달됩니다. -
AssumeRolePolicyDocument
-
이 함수에 AssumeRolePolicyDocument 대해 생성된 기본값에
Role
대한를 추가합니다. 이 속성이 지정되지 않은 경우이 함수에 대한 기본 수임 역할을 AWS SAM 추가합니다.유형: JSON
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::IAM::Role
리소스의AssumeRolePolicyDocument
속성과 유사합니다.는이 속성을이 함수에 대해 생성된 IAM 역할에 AWS SAM 추가합니다. 이 함수에 역할의 Amazon 리소스 이름(ARN)이 제공된 경우이 속성은 아무 작업도 수행하지 않습니다. -
AutoPublishAlias
-
Lambda 별칭의 이름. Lambda의 별칭에 대한 자세한 내용은 AWS Lambda 개발자 안내서의 Lambda 함수 별칭을 참조하세요. 이 속성을 사용하는 예제는 AWS SAM에서 서버리스 애플리케이션의 점진적 배포 섹션을 참조하세요.
AWS SAM 생성 AWS::Lambda::Version 및 AWS::Lambda::Alias이 속성이 설정된 경우 리소스. 이 시나리오에 대한 자세한 내용은 AutoPublishalias 속성 지정됨 섹션을 참조하세요. 생성된 AWS CloudFormation 리소스에 대한 일반 정보는 섹션을 참조하세요AWS SAM용으로 생성된 AWS CloudFormation 리소스.
유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은에 고유 AWS SAM 하며 AWS CloudFormation 동등한 속성이 없습니다.
-
AutoPublishAliasAllProperties
-
새
AWS::Lambda::Version
이 생성되는 시기를 지정합니다.true
의 경우, Lambda 함수의 속성이 변경되면 새 Lambda 버전이 생성됩니다.false
의 경우, 다음 속성 중 하나가 변경된 경우에만 새 Lambda 버전이 생성됩니다.-
Environment
,MemorySize
, 또는SnapStart
. -
Code
속성의 업데이트를 초래하는 일체의 변경(예:CodeDict
,ImageUri
, 혹은InlineCode
).
이 속성은
AutoPublishAlias
이 정의될 것을 요구합니다.만약
AutoPublishSha256
도 지정되면, 그것의 행위는AutoPublishAliasAllProperties: true
에 우선합니다.유형: 부울
필수 항목 여부: 아니요
기본값:
false
AWS CloudFormation 호환성:이 속성은에 고유 AWS SAM 하며 AWS CloudFormation 동등한 속성이 없습니다.
-
-
AutoPublishCodeSha256
-
이 문자열을 사용할 경우
CodeUri
값과 함께 새 Lambda 버전을 게시해야 하는지 여부를 결정하는 데 사용됩니다. Amazon S3 위치에 저장된 배포 패키지가 업데이트된 Lambda 함수 코드가 포함된 새 배포 패키지로 교체되지만,CodeUri
속성은 변경되지 않은 상태로 유지되는 경우(새 배포 패키지가 새 Amazon S3 위치에 업로드되고CodeUri
가 새 위치로 변경되는 경우와 반대) 발생할 수 있는 배포 문제를 해결하기 위해 이 속성을 주로 사용합니다.이 문제는 다음과 같은 특성을 가진 AWS SAM 템플릿으로 표시됩니다.
DeploymentPreference
객체가 점진적 배포를 위해 구성됩니다(AWS SAM에서 서버리스 애플리케이션의 점진적 배포에 설명되어 있음).AutoPublishAlias
속성이 설정되어 있으며 배포 간에 변경되지 않습니다.CodeUri
속성이 설정되어 있으며 배포 간에 변경되지 않습니다.
이 시나리오에서
AutoPublishCodeSha256
을 업데이트하면 새 Lambda 버전이 성공적으로 생성됩니다. 하지만 Amazon S3에 배포된 새 함수 코드는 인식되지 않습니다. 새 함수 코드를 인식하려면 Amazon S3 버킷에서 버전 관리를 사용하는 것이 좋습니다. Lambda 함수의Version
속성을 지정하고 항상 최신 배포 패키지를 사용하도록 버킷을 구성합니다.이 시나리오에서 점진적 배포를 성공적으로 트리거하려면
AutoPublishCodeSha256
에 대한 고유한 값을 제공해야 합니다.유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은에 고유 AWS SAM 하며 AWS CloudFormation 동등한 속성이 없습니다.
-
CodeSigningConfigArn
-
ARN의 AWS::Lambda::CodeSigningConfig이 함수에 대한 코드 서명을 활성화하는 데 사용되는 리소스입니다. 코드 서명에 대한 자세한 내용은 AWS SAM 애플리케이션에 대한 코드 서명 설정 섹션을 참조하세요.
유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의CodeSigningConfigArn
속성으로 직접 전달됩니다. -
CodeUri
-
함수의 코드입니다. 허용 가능한 값은 다음을 포함합니다.
-
함수의 Amazon S3 입니다URI. 예:
s3://bucket-123456789/sam-app/1234567890abcdefg
. -
함수의 로컬 경로. 예:
hello_world/
. -
FunctionCode 객체입니다.
참고
함수의 Amazon S3 URI 또는 FunctionCode 객체를 제공하는 경우 유효한 Lambda 배포 패키지를 참조해야 합니다.
로컬 파일 경로를 제공하는 경우 AWS SAM CLI 배포 시 로컬 파일을 업로드합니다. 자세한 내용은 가 배포 시 로컬 파일을 AWS SAM 업로드하는 방법을 참조하십시오.
CodeUri
속성에서 내장 함수를 사용하는 경우 AWS SAM 는 값을 올바르게 구문 분석할 수 없습니다. 대신 AWS::LanguageExtensions transform을 사용하는 것이 좋습니다.유형: [ 문자열 | FunctionCode ]
필수 항목 여부: 조건부.
PackageType
이Zip
로 설정된 경우,CodeUri
또는 중InlineCode
하나가 필요합니다.AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의Code
속성과 유사합니다. 중첩된 Amazon S3 속성은 다르게 지정됩니다. -
-
DeadLetterQueue
-
Lambda가 처리할 수 없는 이벤트를 전송하는 Amazon Simple Notification Service(AmazonSNS) 주제 또는 Amazon Simple Queue Service(AmazonSQS) 대기열을 구성합니다. DLQ(Dead Letter Queue) 기능에 대한 자세한 내용은 AWS Lambda 개발자 안내서의 DLQ(Dead Letter Queue)를 참조하세요.
참고
Lambda 함수의 이벤트 소스가 Amazon SQS 대기열인 경우 Lambda 함수가 아닌 소스 대기열에 대한 배달 못한 편지 대기열을 구성합니다. 함수에 구성하는 배달하지 못한 편지 대기열은 이벤트 소스 대기열이 아닌 함수의 비동기식 호출 대기열에 사용됩니다.
유형: 맵 | DeadLetterQueue
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의DeadLetterConfig
속성과 유사합니다. AWS CloudFormation 의 유형은에서 파생되는 반면TargetArn
AWS SAM 의 경우와 함께 유형을 전달해야 합니다TargetArn
. -
DeploymentPreference
-
점진적 Lambda 배포를 가능하게 하는 설정.
DeploymentPreference
객체가 지정된 경우는 AWS SAM AWS::CodeDeploy::ApplicationServerlessDeploymentApplication
(스택당 1개), AWS::CodeDeploy::DeploymentGroup
, 및 라고 함 AWS::IAM::Role 라는 이름입니다<function-logical-id>
DeploymentGroupCodeDeployServiceRole
.필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은에 고유 AWS SAM 하며 AWS CloudFormation 동등한 속성이 없습니다.
추가 참조: 이 속성에 대한 자세한 내용은 AWS SAM에서 서버리스 애플리케이션의 점진적 배포 섹션을 참조하세요.
-
Description
-
함수에 대한 설명입니다.
유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의Description
속성으로 직접 전달됩니다. -
Environment
-
런타임 환경에 대한 구성.
유형: Environment
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의Environment
속성으로 직접 전달됩니다. -
EphemeralStorage
-
/tmp
의 Lambda 함수에서 사용할 수 있는 디스크 공간 (MB)을 지정하는 객체.실행 역할에 대한 자세한 내용은 AWS Lambda 개발자 가이드의 Lambda 실행 역할을 참조하세요.
유형: EphemeralStorage
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의EphemeralStorage
속성으로 직접 전달됩니다. -
EventInvokeConfig
-
Lambda 함수의 이벤트 호출 구성을 설명하는 객체입니다.
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은에 고유 AWS SAM 하며 AWS CloudFormation 동등한 속성이 없습니다.
-
Events
-
이 함수를 트리거하는 이벤트를 지정합니다. 이벤트는 유형 및 각 유형에 따라 달라지는 속성 집합으로 구성됩니다.
유형: EventSource
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은에 고유 AWS SAM 하며 AWS CloudFormation 동등한 속성이 없습니다.
-
FileSystemConfigs
-
Amazon Elastic File System(AmazonEFS) 파일 시스템의 연결 설정을 지정하는 FileSystemConfig 객체 목록입니다.
템플릿에가 포함된 경우 AWS::EFS::MountTarget 또한
DependsOn
리소스 속성을 지정하여 함수 전에 탑재 대상이 생성되거나 업데이트되도록 해야 합니다.유형: 목록
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의FileSystemConfigs
속성으로 직접 전달됩니다. -
FunctionName
-
함수의 이름. 이름을 지정하지 않으면 고유한 이름 하나가 귀하를 위해 생성됩니다.
유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의FunctionName
속성으로 직접 전달됩니다. -
FunctionUrlConfig
-
함수를 설명하는 객체입니다URL. 함수URL는 함수를 호출하는 데 사용할 수 있는 HTTPS 엔드포인트입니다.
자세한 내용은 AWS Lambda 개발자 안내서의 함수URLs를 참조하세요.
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은에 고유 AWS SAM 하며 AWS CloudFormation 동등한 속성이 없습니다.
-
Handler
-
코드 내에서 실행을 시작하기 위해 호출되는 함수입니다. 이 속성은
PackageType
속성이Zip
로 설정된 경우에만 필요합니다.유형: 문자열
필수 항목 여부: 조건부
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의Handler
속성으로 직접 전달됩니다. -
ImageConfig
-
Lambda 컨테이너 이미지 설정을 구성하는 데 사용되는 객체입니다. 자세한 내용은 AWS Lambda 개발자 가이드에서 Lambda로 컨테이너 이미지 사용하기를 참조하세요.
유형: ImageConfig
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의ImageConfig
속성으로 직접 전달됩니다. -
ImageUri
-
Lambda 함수URI의 컨테이너 이미지에 대한 Amazon Elastic Container Registry(AmazonECR) 리포지토리의 . 이 속성은
PackageType
속성이Image
로 설정된 경우에만 적용되며, 그렇지 않으면 무시됩니다. 자세한 내용은 AWS Lambda 개발자 가이드에서 Lambda로 컨테이너 이미지 사용하기를 참조하세요.참고
PackageType
속성이 로 설정된 경우Image
ImageUri
가 필요하거나 AWS SAM 템플릿 파일에 필요한Metadata
항목을 사용하여 애플리케이션을 빌드해야 합니다. 자세한 내용은 AWS SAM을 사용한 기본 빌드 단원을 참조하십시오.필요한
Metadata
항목을 사용하여 애플리케이션을 빌드하는 것이ImageUri
에 우선하므로 둘 다 지정하면ImageUri
은 무시됩니다.유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
Code
데이터 유형의ImageUri
속성으로 직접 전달됩니다. -
InlineCode
-
템플릿에 직접 작성된 Lambda 함수 코드입니다. 이 속성은
PackageType
속성이Zip
로 설정된 경우에만 적용되며, 그렇지 않으면 무시됩니다.참고
PackageType
속성이Zip
(기본값)으로 설정된 경우CodeUri
또는InlineCode
중 하나가 요구됩니다.유형: 문자열
필수 항목 여부: 조건부
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
Code
데이터 유형의ZipFile
속성으로 직접 전달됩니다. -
KmsKeyArn
-
Lambda가 함수ARN의 환경 변수를 암호화하고 복호화하는 데 사용하는 AWS Key Management Service (AWS KMS) 키의 입니다.
유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의KmsKeyArn
속성으로 직접 전달됩니다. -
Layers
-
이 함수가 사용해야
LayerVersion
ARNs 하는 목록입니다. 여기에 지정된 순서는 Lambda 함수를 실행할 때 들여오는 순서입니다.유형: 목록
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의Layers
속성으로 직접 전달됩니다. -
LoggingConfig
-
함수의 Amazon CloudWatch Logs 구성 설정입니다.
유형: LoggingConfig
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의LoggingConfig
속성으로 직접 전달됩니다. -
MemorySize
-
함수 호출당 할당된 메모리 크기(MB)입니다.
유형: 정수
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의MemorySize
속성으로 직접 전달됩니다. -
PackageType
-
Lambda 함수의 배포 패키지 유형. 자세한 내용은 AWS Lambda 개발자 안내서의 Lambda 배포 패키지를 참조하세요.
참고:
1. 이 속성을
Zip
(기본값)으로 설정하면CodeUri
또는InlineCode
이 적용되며ImageUri
는 무시됩니다.2. 이 속성을
Image
로 설정하면ImageUri
속성만 적용되고CodeUri
및InlineCode
는 둘 다 무시됩니다. 함수의 컨테이너 이미지를 저장하는 데 필요한 Amazon ECR리포지토리는에서 자동으로 생성할 수 있습니다. AWS SAM CLI. 자세한 내용은 섹션을 참조하세요sam deploy.유효한 값:
Zip
또는Image
유형: 문자열
필수 항목 여부: 아니요
기본값:
Zip
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의PackageType
속성으로 직접 전달됩니다. -
PermissionsBoundary
-
이 함수ARN의 실행 역할에 사용할 권한 경계의 입니다. 이 속성은 역할이 자동으로 생성된 경우에만 작동합니다.
유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::IAM::Role
리소스의PermissionsBoundary
속성으로 직접 전달됩니다. -
Policies
-
이 함수의 권한 정책. 정책은 함수의 기본 AWS Identity and Access Management (IAM) 실행 역할에 추가됩니다.
이 속성은 단일 값 또는 값 목록을 허용합니다. 허용되는 값은 다음과 같습니다.
-
.ARN AWS 관리형 정책 또는 고객 관리형 정책의 .
-
다음 목록에서
AWS 관리형 정책의 이름입니다. -
에서 형식이 지정된 인라인 IAM 정책 YAML 맵으로 사용할 수 있습니다.
참고
Role
속성을 설정하면 이 속성은 무시됩니다.유형: 문자열 | 목록 | 맵
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::IAM::Role
리소스의Policies
속성과 유사합니다. -
Tags
속성의 태그를 AWS::Serverless::Function 생성된 리소스로 전달할지 여부를 지정합니다. 귀하의 생성된 리소스에 태그를 전파하도록True
을 지정합니다.유형: 부울
필수 항목 여부: 아니요
기본값:
False
AWS CloudFormation 호환성:이 속성은에 고유 AWS SAM 하며 AWS CloudFormation 동등한 속성이 없습니다.
-
ProvisionedConcurrencyConfig
-
함수의 별칭에 대한 프로비저닝된 동시성 구성.
참고
AutoPublishAlias
가 설정된 경우에만ProvisionedConcurrencyConfig
을 지정할 수 있습니다. 이렇게 하지 않으면 오류가 발생합니다.유형: ProvisionedConcurrencyConfig
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Alias
리소스의ProvisionedConcurrencyConfig
속성으로 직접 전달됩니다. -
RecursiveLoop
-
함수의 재귀 루프 감지 구성 상태입니다.
이 값이
Allow
로 설정되어 있으면 Lambda가 재귀 루프의 일부로 호출되는 함수를 감지해도 아무런 조치를 취하지 않습니다.이 값이
Terminate
로 설정되어 있으면 Lambda가 재귀 루프의 일부로 호출되는 함수를 감지한 경우 함수가 호출되는 것을 중지하고 사용자에게 알립니다.유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의RecursiveLoop
속성으로 직접 전달됩니다. -
ReservedConcurrentExecutions
-
함수에 대해 예비하고 싶은 최대 동시 실행 수를 지정합니다.
이 속성에 대한 자세한 내용은 AWS Lambda 개발자 안내서의 Lambda함수 규모 조정을 참조하세요.
유형: 정수
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의ReservedConcurrentExecutions
속성으로 직접 전달됩니다. -
Role
-
이 함수ARN의 실행 IAM 역할로 사용할 역할의 입니다.
유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의Role
속성과 유사합니다. 이는에서 필요하지 AWS CloudFormation 만 에서는 필요하지 않습니다 AWS SAM. 역할을 지정하지 않으면
의 논리 ID로 귀하에게 하나가 생성됩니다.<function-logical-id>
Role -
RolePath
-
함수의 IAM 실행 역할 경로입니다.
역할이 자동으로 생성될 때 이 속성을 사용하십시오.
Role
속성에 역할이 지정된 경우에는 사용하지 마십시오.유형: 문자열
필수 항목 여부: 조건부
AWS CloudFormation 호환성:이 속성은
AWS::IAM::Role
리소스의Path
속성으로 직접 전달됩니다. -
Runtime
-
함수 런타임의 식별자입니다. 이 속성은
PackageType
속성이Zip
로 설정된 경우에만 필요합니다.참고
이 속성의
provided
식별자를 지정하는 경우Metadata
리소스 속성을 사용하여이 함수에 필요한 사용자 지정 런타임을 빌드 AWS SAM 하도록에 지시할 수 있습니다. 사용자 지정 런타임을 구축하는 방법에 대한 자세한 정보는 에서 사용자 지정 런타임을 사용하여 Lambda 함수 빌드 AWS SAM 섹션을 참조하세요.유형: 문자열
필수 항목 여부: 조건부
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의Runtime
속성으로 직접 전달됩니다. -
RuntimeManagementConfig
-
런타임 환경 업데이트, 롤백 동작, 특정 런타임 버전 선택 등 Lambda 함수의 런타임 관리 옵션을 구성합니다. 자세한 내용은 AWS Lambda 개발자 안내서의 Lambda 런타임 업데이트를 참조하세요.
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의RuntimeManagementConfig
속성으로 직접 전달됩니다. -
SnapStart
-
모든 새 Lambda 함수 버전의 스냅샷을 생성합니다. 스냅샷은 모든 종속성을 포함하여 초기화된 함수의 캐시된 상태입니다. 함수는 한 번만 초기화되고 캐시된 상태는 향후 모든 호출에 재사용되므로 함수를 초기화해야 하는 횟수를 줄여 애플리케이션 성능을 개선합니다. 자세한 내용은 AWS Lambda 개발자 안내서의 Lambda를 사용한 시작 성능 개선을 SnapStart 참조하세요.
유형: SnapStart
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의SnapStart
속성으로 직접 전달됩니다. -
SourceKmsKeyArn
-
고객의 ZIP 함수 코드를 암호화하는 데 ARN 사용되는 KMS 키를 나타냅니다.
유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
Code
데이터 유형의SourceKmsKeyArn
속성으로 직접 전달됩니다. -
이 함수에 추가된 태그를 지정하는 맵(문자열에 문자열)입니다. 태그의 유효한 키와 값에 관한 자세한 내용은 AWS Lambda 개발자 안내서의 태그 키 및 값 요구 사항을 참조하세요.
스택이 생성되면는이 Lambda 함수와이 함수에 대해 생성된 기본 역할에
lambda:createdBy:SAM
태그를 AWS SAM 자동으로 추가합니다.유형: 맵
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의Tags
속성과 유사합니다. 의Tags
속성은 키-값 페어로 AWS SAM 구성됩니다(이 AWS CloudFormation 속성은Tag
객체 목록으로 구성됨). 또한는이 Lambda 함수와이 함수에 대해 생성된 기본 역할에lambda:createdBy:SAM
태그를 AWS SAM 자동으로 추가합니다. -
Timeout
-
중지되기 전까지 함수를 실행할 수 있는 최대 시간(초).
유형: 정수
필수 항목 여부: 아니요
기본값: 3
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의Timeout
속성으로 직접 전달됩니다. -
Tracing
-
함수의 X-Ray 추적 모드를 지정하는 문자열.
-
Active
– 함수에 대한 X-Ray 추적을 활성화합니다. -
Disabled
– 함수에 대한 X-Ray를 비활성화합니다. -
PassThrough
– 함수에 대한 X-Ray 추적을 활성화합니다. 샘플링 결정은 다운스트림 서비스에 위임됩니다.
Active
또는PassThrough
로 지정되고Role
속성이 설정되지 않은 경우, AWS SAM 는 귀하를 위해 생성한 Lambda 실행 역할에arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess
정책을 추가합니다.X-Ray에 대한 자세한 내용은 AWS Lambda 개발자 안내서의 AWS Lambda 에서 사용을 AWS X-Ray 참조하세요.
유효한 값: [
Active
|Disabled
|PassThrough
]유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의TracingConfig
속성과 유사합니다. -
-
VersionDescription
-
새 Lambda 버전 리소스에 추가되는
Description
필드를 지정합니다.유형: 문자열
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Version
리소스의Description
속성으로 직접 전달됩니다. -
VpcConfig
-
이 함수가 가상 프라이빗 클라우드() 내의 프라이빗 리소스에 액세스할 수 있도록 하는 구성입니다VPC.
유형: VpcConfig
필수 항목 여부: 아니요
AWS CloudFormation 호환성:이 속성은
AWS::Lambda::Function
리소스의VpcConfig
속성으로 직접 전달됩니다.
반환 값
Ref
Ref
내장 함수에 이 리소스의 논리적 ID를 입력하면 기저의 Lambda 함수의 리소스 이름이 반환됩니다.
Ref
함수의 사용에 대한 자세한 내용은 AWS CloudFormation 사용자 가이드의 Ref
섹션을 참조하세요.
Fn::GetAtt
Fn::GetAtt
은 이 유형의 지정된 속성에 대한 값을 반환합니다. 다음은 사용 가능한 속성과 반환되는 샘플 값.
Fn::GetAtt
의 사용에 대한 자세한 내용은 AWS CloudFormation 사용자 가이드의 Fn::GetAtt
섹션을 참조하세요.
Arn
-
기본 Lambda 함수ARN의 입니다.
예시
단순 함수
다음은 Amazon S3 버킷에 있는 패키지 유형 Zip
(기본값) 및 함수 코드의 AWS::Serverless::Function 리소스에 대한 기본 예제입니다.
YAML
Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: python3.9 CodeUri: s3://
bucket-name
/key-name
함수 속성 예제
다음은 InlineCode
, Layers
, Tracing
, Policies
, Amazon EFS
및 Api
이벤트 소스를 사용하는 패키지 유형 Zip
(기본값) AWS::Serverless::Function의 예입니다.
YAML
Type: AWS::Serverless::Function DependsOn: MyMountTarget # This is needed if an AWS::EFS::MountTarget resource is declared for EFS Properties: Handler: index.handler Runtime: python3.9 InlineCode: | def handler(event, context): print("Hello, world!") ReservedConcurrentExecutions: 30 Layers: - Ref: MyLayer Tracing: Active Timeout: 120 FileSystemConfigs: - Arn: !Ref MyEfsFileSystem LocalMountPath: /mnt/EFS Policies: - AWSLambdaExecute - Version: '2012-10-17' Statement: - Effect: Allow Action: - s3:GetObject - s3:GetObjectACL Resource: 'arn:aws:s3:::
amzn-s3-demo-bucket
/*' Events: ApiEvent: Type: Api Properties: Path: /path Method: get
ImageConfig 예제
다음은 패키지 유형Image
의 Lambda 함수에 대한 ImageConfig
의 예제입니다.
YAML
HelloWorldFunction: Type: AWS::Serverless::Function Properties: PackageType: Image ImageUri:
account-id
.dkr.ecr.region
.amazonaws.com/ecr-repo-name
:image-name
ImageConfig: Command: - "app.lambda_handler
" EntryPoint: - "entrypoint1
" WorkingDirectory: "workDir
"
RuntimeManagementConfig 예제
현재 동작에 따라 런타임 환경을 업데이트하도록 구성된 Lambda 함수:
TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: UpdateRuntimeOn: Auto
함수가 업데이트될 때 런타임 환경을 업데이트하도록 구성된 Lambda 함수:
TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: UpdateRuntimeOn: FunctionUpdate
런타임 환경을 수동으로 업데이트하도록 구성된 Lambda 함수:
TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: RuntimeVersionArn: arn:aws:lambda:us-east-1::runtime:4c459dd0104ee29ec65dcad056c0b3ddbe20d6db76b265ade7eda9a066859b1e UpdateRuntimeOn: Manual
SnapStart 예제
향후 버전에 대해가 SnapStart 켜져 있는 Lambda 함수의 예:
TestFunc Type: AWS::Serverless::Function Properties: ... SnapStart: ApplyOn: PublishedVersions