

# 계층으로 AWS CloudFormation 작업
<a name="layers-cfn"></a>

CloudFormation을 사용하여 계층을 생성하고 해당 계층을 Lambda 함수와 연결할 수 있습니다. 다음 예제 템플릿에서는 `my-lambda-layer`라는 계층을 만들고 **계층** 속성을 사용하여 Lambda 함수에 계층을 연결합니다.

이 예제에서 템플릿은 기존 IAM [실행 역할](lambda-intro-execution-role.md)의 Amazon 리소스 이름(ARN)을 지정합니다. 또한 CloudFormation [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) 리소스를 사용하여 템플릿에서 새 실행 역할을 생성할 수도 있습니다.

함수에는 계층을 사용하는 데 특별한 권한이 필요하지 않습니다.

```
---
Description: CloudFormation Template for Lambda Function with Lambda Layer
Resources:
  MyLambdaLayer:
    Type: AWS::Lambda::LayerVersion
    Properties:
      LayerName: my-lambda-layer
      Description: My Lambda Layer
      Content:
        S3Bucket: amzn-s3-demo-bucket
        S3Key: my-layer.zip
      CompatibleRuntimes:
        - python3.9
        - python3.10
        - python3.11

  MyLambdaFunction:
    Type: AWS::Lambda::Function
    Properties:
      FunctionName: my-lambda-function
      Runtime: python3.9
      Handler: index.handler
      Timeout: 10
      Role: arn:aws:iam::111122223333:role/my_lambda_role
      Layers:
        - !Ref MyLambdaLayer
```