

# 함수에 계층 추가
<a name="adding-layers"></a>

Lambda 계층은 추가 코드 또는 데이터를 포함하는 .zip 파일 아카이브입니다. 계층에는 일반적으로 라이브러리 종속 항목, [사용자 지정 런타임](runtimes-custom.md) 또는 구성 파일이 포함됩니다.

이 섹션에서는 Lambda 함수에 계층을 추가하는 방법을 설명합니다. 계층에 대한 개념 정보와 계층 사용을 고려하는 이유에 대한 자세한 내용은 [계층으로 Lambda 종속성 관리](chapter-layers.md) 섹션을 참조하세요.

계층을 사용하도록 Lambda 함수를 구성하려면 먼저 다음을 수행해야 합니다.
+ [계층 콘텐츠 패키징](packaging-layers.md)
+ [Lambda에서 계층 생성](creating-deleting-layers.md)
+ 계층 버전에 대해 [GetLayerVersion](https://docs.aws.amazon.com/lambda/latest/api/API_GetLayerVersion.html) API를 직접적으로 호출할 권한이 있는지 확인합니다. AWS 계정의 함수인 경우 [사용자 정책](access-control-identity-based.md)에 이 권한이 있어야 합니다. 다른 계정에서 계층을 사용하려면 해당 계정의 소유자가 [리소스 기반 정책](access-control-resource-based.md)에서 계정 권한을 부여해야 합니다. 예제는 [Lambda 계층에 다른 계정에 대한 액세스 권한 부여](permissions-layer-cross-account.md)을 참조하세요.

Lambda 함수에 최대 5개의 계층을 추가할 수 있습니다. 함수 및 모든 계층의 압축되지 않은 총 크기는 압축 해제된 배포 패키지 크기 할당량인 250MB를 초과할 수 없습니다. 자세한 내용은 [Lambda 할당량](gettingstarted-limits.md) 섹션을 참조하세요.

함수는 이미 추가한 모든 계층 버전을 계속 사용할 수 있습니다. 이는 해당 계층 버전이 삭제되거나 계층 액세스 권한이 취소된 후에도 마찬가지입니다. 그러나 삭제된 계층 버전을 사용하는 새 함수는 작성할 수 없습니다.

**함수에 계층을 추가하려면 다음을 수행하세요.**

1. Lambda 콘솔의 [함수 페이지](https://console.aws.amazon.com/lambda/home#/functions)를 엽니다.

1. 함수를 선택합니다.

1. 아래로 스크롤하여 **계층** 섹션으로 이동하고 **계층 추가**를 선택하세요.

1. **계층 선택**에서 계층 소스를 선택합니다.

   1. **AWS 계층**: [AWS 관리형 확장](extensions-api-partners.md#aws-managed-extensions) 목록에서 선택합니다.

   1. **사용자 지정 계층**: AWS 계정에서 생성된 계층을 선택합니다.

   1. **ARN 지정**: [타사 확장](extensions-api-partners.md) 등의 [다른 AWS 계정](permissions-layer-cross-account.md)의 계층을 사용하려면 Amazon 리소스 이름(ARN)을 입력합니다.

1. **추가**를 선택합니다.

계층을 추가하는 순서에 따라 나중에 Lambda가 계층 콘텐츠를 실행 환경에 병합하는 순서가 결정됩니다. 콘솔을 사용하여 계층 병합 순서를 변경할 수 있습니다.

**함수의 계층 병합 순서 업데이트(콘솔)**

1. Lambda 콘솔의 [함수 페이지](https://console.aws.amazon.com/lambda/home#/functions)를 엽니다.

1. 구성할 함수를 선택합니다.

1. [**계층(Layers)**]에서 [**편집(Edit)**]을 선택합니다.

1. 계층 중 하나를 선택합니다.

1. [**앞에 병합(Merge earlier)**] 또는 [**뒤에 병합(Merge later)**]을 선택하여 계층의 순서를 조정합니다.

1. **저장**을 선택합니다.

계층의 버전이 지정됩니다. 각 계층 버전의 콘텐츠는 변경할 수 없습니다. 계층의 소유자는 새 계층 버전을 릴리스하여 업데이트된 콘텐츠를 제공할 수 있습니다. 콘솔을 사용하여 함수에 연결된 계층 버전을 업데이트할 수 있습니다.

**함수의 계층 버전 업데이트(콘솔)**

1. Lambda 콘솔의 [계층 페이지](https://console.aws.amazon.com/lambda/home#/layers)를 엽니다.

1. 버전을 업데이트하려는 계층을 선택합니다.

1. **이 버전을 사용하는 함수** 탭을 선택합니다.

1. 수정하려는 함수를 선택하고 **편집**을 선택합니다.

1. **계층 버전**에서 변경할 계층 버전을 선택합니다.

1. **함수 업데이트(Update functions)**를 선택합니다.

여러 AWS 계정에 걸쳐 함수의 계층 버전을 업데이트할 수 없습니다.

## 계층 정보 찾기
<a name="finding-layer-information"></a>

계정에서 함수의 런타임과 호환되는 계층을 찾으려면 [ListLayers](https://docs.aws.amazon.com/lambda/latest/api/API_ListLayers.html) API를 사용하세요. 예를 들어, 다음 [list-layers](https://docs.aws.amazon.com/cli/latest/reference/lambda/list-layers.html) AWS Command Line Interface(CLI) 명령을 사용할 수 있습니다.

```
aws lambda list-layers --compatible-runtime python3.14
```

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

```
{
    "Layers": [
        {
            "LayerName": "my-layer",
            "LayerArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer",
            "LatestMatchingVersion": {
                "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:2",
                "Version": 2,
                "Description": "My layer",
                "CreatedDate": "2025-04-15T00:37:46.592+0000",
                "CompatibleRuntimes": [
                    "python3.14"
                ]
            }
        }
    ]
}
```

계정의 모든 계층을 나열하려면 `--compatible-runtime` 옵션을 생략합니다. 응답 세부 정보에는 각 계층의 최신 버전이 표시됩니다.

[ListLayerVersions](https://docs.aws.amazon.com/lambda/latest/api/API_ListLayerVersions.html) API를 사용하여 최신 버전의 계층을 가져올 수도 있습니다. 예를 들어, 다음 `list-layer-versions` CLI 명령을 사용할 수 있습니다. 

```
aws lambda list-layer-versions --layer-name my-layer
```

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

```
{
    "LayerVersions": [
        {
            "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:2",
            "Version": 2,
            "Description": "My layer",
            "CreatedDate": "2023-11-15T00:37:46.592+0000",
            "CompatibleRuntimes": [
                "java11"
            ]
        },
        {
            "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:1",
            "Version": 1,
            "Description": "My layer",
            "CreatedDate": "2023-11-15T00:27:46.592+0000",
            "CompatibleRuntimes": [
                "java11"
            ]
        }
    ]
}
```