

# Lambda에서 계층 생성 및 삭제
<a name="creating-deleting-layers"></a>

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

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

[계층 콘텐츠를 패키징](packaging-layers.md)한 후 다음 단계는 Lambda에서 계층을 생성하는 것입니다 이 섹션에서는 Lambda 콘솔 또는 Lambda API만 사용하여 계층을 생성하고 삭제하는 방법을 보여줍니다. AWS CloudFormation을 사용하여 계층을 생성하려면 [계층으로 AWS CloudFormation 작업](layers-cfn.md) 섹션을 참조하세요. AWS Serverless Application Model(AWS SAM)을 사용하여 계층을 생성하려면 [계층으로 AWS SAM 작업](layers-sam.md) 섹션을 참조하세요.

**Topics**
+ [계층 생성](#layers-create)
+ [계층 버전 삭제](#layers-delete)

## 계층 생성
<a name="layers-create"></a>

계층을 생성하려면 로컬 시스템이나 Amazon Simple Storage Service(S3)에서 계층으로 .zip 파일 아카이브를 업로드합니다. Lambda는 함수에 대한 실행 환경을 설정할 때 계층 콘텐츠를 `/opt` 디렉토리에 추출합니다.

계층에는 하나 이상의 [계층 버전](chapter-layers.md#lambda-layer-versions)이 있을 수 있습니다. 계층을 작성할 때 Lambda에서 계층 버전을 버전 1로 설정합니다. 언제든지 기존 계층 버전에 대한 권한을 변경할 수 있습니다. 그러나 코드를 업데이트하거나 다른 구성을 변경하려면 계층의 새 버전을 생성해야 합니다.

**계층을 생성하려면(콘솔)**

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

1. **계층 생성**을 선택합니다.

1. [**계층 구성(Layer configuration)**]에서 [**이름(Name)**]에 계층 이름을 입력합니다.

1. (선택 사항) **설명**에 계층에 대한 설명을 입력합니다.

1. 계층 코드를 업로드하려면 다음 중 하나를 수행하세요.
   + 컴퓨터에서 .zip 파일을 업로드하려면 [**zip 파일 업로드(Upload a .zip file)**]를 선택합니다. 그리고 [**업로드(Upload)**]를 선택하여 로컬 .zip 파일을 선택합니다.
   + Amazon S3에서 파일을 업로드하려면 **Amazon S3에서 파일 업로드(Upload a file from Amazon S3)**를 선택합니다. 그런 다음 **Amazon S3 링크 URL**에 파일 링크를 입력합니다.

1. (선택 사항) **호환 아키텍처**에서 값을 하나 또는 둘 다 선택합니다. 자세한 내용은 [Lambda 함수에 대한 명령 세트 아키텍처의 선택 및 구성](foundation-arch.md) 섹션을 참조하세요.

1. (선택 사항) **호환 런타임**에서 계층과 호환되는 런타임을 선택합니다.

1. (선택 사항) **라이선스**의 경우 필요한 라이선스 정보를 입력합니다.

1. **생성(Create)**을 선택합니다.

또는 [publish-layer-version](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/publish-layer-version.html) AWS Command Line Interface(CLI) 명령을 실행할 수 있습니다. 예제:

```
aws lambda publish-layer-version --layer-name my-layer --zip-file fileb://layer.zip --compatible-runtimes python3.14
```

`publish-layer-version`을 실행할 때마다 Lambda는 새 [버전의 계층](chapter-layers.md#lambda-layer-versions)을 생성합니다.

## 계층 버전 삭제
<a name="layers-delete"></a>

계층 버전을 삭제하려면 [DeleteLayerVersion](https://docs.aws.amazon.com/lambda/latest/api/API_DeleteLayerVersion.html) API 작업을 사용합니다. 예를 들어, 계층 이름과 계층 버전을 지정하여 [delete-layer-version](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/delete-layer-version.html) AWS CLI 명령을 실행합니다.

```
aws lambda delete-layer-version --layer-name my-layer --version-number 1
```

계층 버전을 삭제하면 이를 사용하기 위한 Lambda 함수를 더 이상 구성할 수 없습니다. 그러나 해당 버전을 이미 사용 중인 모든 함수는 이 버전에 계속 액세스할 수 있습니다. 또한 Lambda는 계층 이름에 버전 번호를 재사용하지 않습니다.

[할당량](gettingstarted-limits.md)을 계산할 때, 계층 버전을 삭제하면 해당 버전은 더 이상 함수 및 계층 저장에 대한 기본 75GB 할당량에 포함되지 않습니다. 그러나 삭제된 계층 버전을 사용하는 함수의 경우 계층 콘텐츠는 여전히 해당 함수의 배포 패키지 크기 할당량(즉, .zip 파일 아카이브를 위한 250MB)에 포함됩니다.