

# 튜토리얼: 키 값을 포함하는 CloudFront 함수 생성
<a name="functions-tutorial-kvs"></a>

이 자습서에서는 CloudFront 함수를 사용하여 키 값을 포함하는 방법을 보여줍니다. 키 값은 키 값 페어의 일부입니다. 사용자는 키 값 페어의 이름을 함수 코드에 포함할 수 있습니다. 함수 실행 시 CloudFront가 이름을 값으로 대체합니다.

키 값 페어는 키 값 저장소에 저장되는 변수입니다. 함수에 하드 코딩된 값 대신 키를 사용하면 함수가 더 유연해집니다. 코드 변경 내용을 배포하지 않고도 키 값을 변경할 수 있습니다. 키 값 페어를 사용하면 함수 크기를 줄일 수도 있습니다. 자세한 내용은 [Amazon CloudFront KeyValueStore](kvs-with-functions.md) 섹션을 참조하세요.

**Contents**
+ [사전 조건](#functions-kvs-tutorial-prerequisites)
+ [키 값 저장소 생성](#functions-kvs-tutorial-kvs-step)
+ [키 값 저장소에 키 값 페어 추가](#add-key-value-pairs-to-store)
+ [키 값 저장소를 함수와 연결](#functions-kvs-tutorial-functions-step)
+ [함수 코드 테스트 및 게시](#test-and-publish-function-code)

## 사전 조건
<a name="functions-kvs-tutorial-prerequisites"></a>

CloudFront Functions 함수 및 키 값 저장소를 처음 사용하는 경우 [튜토리얼: CloudFront Functions를 사용하여 간단한 함수 생성](functions-tutorial.md)의 튜토리얼을 따르는 것이 좋습니다.

해당 튜토리얼을 완료한 후에는 이 튜토리얼을 따라 이전에 생성한 함수를 확장할 수 있습니다. 이 튜토리얼에서는 키 값 저장소를 먼저 생성하려는 것이 좋습니다.

## 키 값 저장소 생성
<a name="functions-kvs-tutorial-kvs-step"></a>

먼저 함수에 사용할 키 값 저장소를 생성합니다.

**키 값 저장소를 생성하려면**

1. 함수에 포함하려는 키 값 페어를 계획합니다. 키 이름을 적어두세요. 함수에 사용하려는 키 값 페어는 하나의 키 값 저장소에 있어야 합니다.

1. 작업 순서를 결정합니다. 다음 두 가지 방법으로 진행할 수 있습니다.
   + 키 값 저장소를 생성하고 저장소에 키 값 페어를 추가합니다. 그런 다음 함수를 생성(또는 수정)하고 키 이름을 통합합니다.
   + 또는 함수를 생성(또는 수정)하고 사용하려는 키 이름으로 통합합니다. 그런 다음 키 값 저장소를 생성하고 저장소에 키 값 페어를 추가합니다.

1. AWS Management Console에 로그인한 다음 [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home)에서 CloudFront 콘솔을 엽니다.

1. 탐색 창에서 **함수**를 선택한 다음 **KeyValueStores** 탭을 선택합니다.

1. **KeyValueStore 생성**을 선택하고 다음과 같이 필드를 작성합니다.
   + 저장소 이름을 입력하고 필요한 경우 설명을 입력합니다.
   + **S3 URI**를 비워 둡니다. 이 튜토리얼에서는 키 값 페어를 수동으로 입력합니다.

1. **생성(Create)**을 선택합니다. 새로운 키 값 저장소의 세부 정보 페이지가 나타납니다. 이 페이지에는 현재 비어 있는 **키 값 페어** 섹션이 포함되어 있습니다.

## 키 값 저장소에 키 값 페어 추가
<a name="add-key-value-pairs-to-store"></a>

그런 다음 이전에 생성한 키 값 저장소에 키 값 페어의 목록을 수동으로 추가합니다.

**키 값 저장소에 키 값 페어를 추가하려면**

1. **키 값 페어** 섹션에서 **키 값 페어 추가**를 선택합니다.

1. **태그 추가**를 선택한 다음 키와 값을 입력합니다. 확인 표시를 선택하여 변경 사항을 확인하고 이 단계를 반복하여 더 추가합니다.

1. 작업을 마쳤으면 **변경 사항 저장**을 선택하여 키 값 페어를 키 값 저장소에 저장합니다. 확인 대화 상자에서 **완료**를 선택합니다.

이제 키 값 페어 그룹이 포함된 키 값 저장소가 생겼습니다.



## 키 값 저장소를 함수와 연결
<a name="functions-kvs-tutorial-functions-step"></a>

이제 키 값 저장소가 생성되었습니다. 그리고 키 값 저장소의 키 이름을 포함하는 함수를 만들거나 수정했습니다. 이제 키 값 저장소와 함수를 연결할 수 있습니다. 이 연결은 함수 내에서 생성할 수 있습니다.

**키 값 저장소를 함수와 연결하려면**

1. 탐색 창에서 **함수**를 선택합니다. 기본적으로 **함수** 탭이 맨 위에 표시됩니다.

1. 함수 이름을 선택하고 **연결된 KeyValueStore** 섹션에서 **기존 KeyValueStore 연결**을 선택합니다.

1. 키 값 저장소를 선택하고 **KeyValueStore 연결**을 선택합니다.

**참고**  
각 함수에는 하나의 키 값 저장소만 연결할 수 있습니다.

## 함수 코드 테스트 및 게시
<a name="test-and-publish-function-code"></a>

키 값 저장소를 함수와 연결한 후 함수 코드를 테스트하고 게시할 수 있습니다. 다음을 수행할 때를 포함하여 함수 코드를 수정할 때마다 항상 함수 코드를 테스트해야 합니다.
+ 키 값 저장소를 함수와 연결할 때
+ 새로운 키 값 페어를 포함하도록 함수와 해당 키 값 저장소를 수정할 때
+ 키 값 페어의 값을 변경할 때

**함수 코드를 테스트하고 게시하려면**

1. 함수를 테스트하는 방법은 [함수 테스트](test-function.md) 섹션을 참조하세요. `DEVELOPMENT` 스테이지에서 함수를 테스트하도록 선택해야 합니다.

1. `LIVE` 환경에서 새 키 값 페어 또는 수정된 키 값 페어와 함께 함수를 사용할 준비가 되면 함수를 게시합니다.

   함수를 게시하면 CloudFront는 `DEVELOPMENT` 스테이지에서 라이브 스테이지로 함수 버전을 복사합니다. 함수에는 새 코드가 포함되며 키 값 저장소와 연결됩니다. 라이브 스테이지에서는 연결을 다시 수행하지 않아도 됩니다.

   함수를 게시하는 방법은 [함수 게시](publish-function.md) 섹션을 참조하세요.