함수 생성
함수는 두 단계로 생성합니다.
-
함수 코드를 JavaScript로 생성합니다. CloudFront 콘솔의 기본 예제를 사용하거나, 직접 작성할 수 있습니다. 자세한 정보는 다음 주제를 참조하세요.
-
CloudFront를 사용하여 함수를 생성하고 코드를 포함합니다. 코드는 함수 내에 존재합니다(참조용이 아님).
- Console
-
함수를 만들려면
-
CloudFront 콘솔(https://console.aws.amazon.com/cloudfront/v4/home#/functions
)에 로그인하고 함수 페이지를 엽니다. -
함수 생성(Create function)을 선택합니다.
-
AWS 계정 내에서 고유한 함수 이름을 입력한 다음 JavaScript 버전을 선택하고 계속을 선택합니다. 새 함수의 세부 정보 페이지가 나타납니다.
참고
함수에서 키 값 페어를 사용하려면 JavaScript 런타임 2.0을 선택해야 합니다.
-
함수 코드 섹션에서 빌드 탭을 선택하고 함수 코드를 입력합니다. 빌드 탭에 포함된 샘플 코드는 함수 코드의 기본 구문을 보여줍니다.
-
Save changes(변경 사항 저장)를 선택합니다.
-
함수 코드에서 키 값 페어를 사용하는 경우 키 값 저장소를 연결해야 합니다.
함수를 처음 생성할 때 키 값 저장소를 연결할 수 있습니다. 또는 나중에 함수를 업데이트하여 연결할 수도 있습니다.
지금 키 값 저장소를 연결하려면 다음 단계를 따르세요.
-
KeyValueStore 연결 섹션에서 기존 KeyValueStore 연결을 선택합니다.
-
함수의 키 값 페어가 들어 있는 키 값 저장소를 선택한 다음 KeyValueStore 연결을 선택합니다.
CloudFront는 저장소를 함수와 즉시 연결하므로 함수를 저장하지 않아도 됩니다.
-
-
- CLI
-
CLI를 사용하는 경우 일반적으로 먼저 파일에 함수 코드를 생성한 다음 AWS CLI로 함수를 생성합니다.
함수를 만들려면
-
함수 코드를 파일로 만든 다음 컴퓨터가 연결할 수 있는 디렉터리에 저장합니다.
-
다음 예제와 같이 명령을 실행합니다. 이 예제에서는
fileb://
표기법을 사용하여 파일을 전달합니다. 명령을 더 쉽게 읽을 수 있도록 줄 바꿈도 포함되어 있습니다.aws cloudfront create-function \ --name MaxAge \ --function-config '{"Comment":"Max Age 2 years","Runtime":"cloudfront-js-2.0","KeyValueStoreAssociations":{"Quantity":1,"Items":[{"KeyValueStoreARN":"arn:aws:cloudfront::111122223333:key-value-store/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"}]}}' \ --function-code fileb://function-max-age-v1.js
참고
-
Runtime
- JavaScript의 버전입니다. 함수에 키 값 페어를 사용하려면 버전 2.0을 지정해야 합니다. -
KeyValueStoreAssociations
- 함수에서 키 값 페어를 사용하는 경우 함수를 처음 생성할 때 키 값 저장소를 연결할 수 있습니다. 또는update-function
을 사용하여 나중에 연결할 수도 있습니다. 각 함수에 키 값 저장소가 하나만 연결될 수 있기 때문에Quantity
는 항상1
입니다.
명령이 제대로 실행되면 다음과 비슷한 출력이 표시됩니다.
ETag: ETVABCEXAMPLE FunctionSummary: FunctionConfig: Comment: Max Age 2 years Runtime: cloudfront-js-2.0 KeyValueStoreAssociations= \ {Quantity=1, \ Items=[{KeyValueStoreARN='arn:aws:cloudfront::111122223333:key-value-store/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111'}]} \ FunctionMetadata: CreatedTime: '2021-04-18T20:38:56.915000+00:00' FunctionARN: arn:aws:cloudfront::111122223333:function/MaxAge LastModifiedTime: '2023-11-19T20:38:56.915000+00:00' Stage: DEVELOPMENT Name: MaxAge Status: UNPUBLISHED Location: https://cloudfront.amazonaws.com/2020-05-31/function/arn:aws:cloudfront:::function/MaxAge
대부분의 정보는 요청에서 반복된 내용입니다. 기타 정보는 CloudFront에 의해 추가됩니다.
참고
-
ETag
- 이 값은 키 값 저장소를 수정할 때마다 변경됩니다. 나중에 이 값과 함수 이름을 사용하여 함수를 참조할 수 있습니다. 항상 현재ETag
를 사용하도록 하세요. -
FunctionARN
- CloudFront 함수의 ARN입니다. -
111122223333 – AWS 계정입니다.
-
Stage
- 함수의 스테이지(LIVE
또는DEVELOPMENT
)입니다. -
Status
- 함수의 상태(PUBLISHED
또는UNPUBLISHED
)입니다.
-
-
생성한 함수는 DEVELOPMENT
스테이지에 추가됩니다. 함수를 게시하기 전에 함수를 테스트하는 것이 좋습니다. 함수를 게시하고 나면 함수가 LIVE
스테이지로 변경됩니다.