본문으로 건너뛰기
버전: 4.6.1-saas

설치 및 초기화

이 가이드는 NetFUNNEL CloudFront 에이전트의 설치 및 초기화 과정을 설명합니다.


1단계: Client ID 가져오기

  1. NetFUNNEL 콘솔로 이동
  2. 우측 상단의 프로필 아이콘 클릭
  3. 통합 자격 증명 (Integration Credentials) 메뉴 선택
  4. Client ID 복사
Client ID 확인 위치

콘솔 화면 우측 상단의 프로필 아이콘을 클릭한 후, 통합 자격 증명 메뉴에서 확인할 수 있습니다.


2단계: IAM 설정

IAM 역할 생성

  1. AWS IAM 콘솔 → [역할] 클릭
  2. [역할 생성] 클릭
  3. 신뢰할 수 있는 엔터티: AWS 서비스 선택
  4. 사용 사례: Lambda 선택
  5. [다음: 권한] 클릭

Trust Entity 설정

  1. 역할 생성 후 [Trust Entity] 탭 클릭
  2. Trust Entity 편집 후 아래 JSON 붙여넣기:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": [
"edgelambda.amazonaws.com",
"lambda.amazonaws.com"
]
},
"Action": "sts:AssumeRole"
}
]
}

정책 첨부

  1. [권한] 탭 클릭
  2. [권한 추가] → [인라인 정책 만들기] 클릭
  3. JSON 탭에 아래 정책 붙여넣기 (Lambda 함수가 CloudWatch 로그를 생성하고 쓸 수 있도록 함):
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": "*"
}
]
}

3단계: Lambda 함수 생성

리전 선택

Lambda 함수는 us-east-1 (N. Virginia) 리전에서 생성해야 합니다. 이는 AWS의 요구 사항으로, 이 리전은 함수를 전 세계적으로 복제하기 위한 중앙 위치 역할을 하기 때문입니다.

Lambda 함수 생성

  1. us-east-1 리전의 Lambda 콘솔로 이동
  2. [함수 생성] 클릭
  3. [처음부터 작성] 선택
  4. 함수 이름 입력 (예: "netfunnel-agent")
  5. 런타임: Node.js 선택
  6. 위에서 생성한 IAM 역할 선택
  7. [함수 생성] 클릭

Lambda 함수 설정

  1. https://agent-lib.stclab.com/agents/cdn/cloudfront/netfunnel-cloudfront-agent-latest.js 에서 netfunnel-cloudfront-agent.js 파일 다운로드
  2. [코드] 탭에서 코드 소스에 netfunnel-cloudfront-agent.js 파일 업로드
  3. index.mjs 파일 열고 아래 코드 작성:
import handleEvent from './netfunnel-cloudfront-agent.js';
const config = {
clientID: "{{CLIENT_ID}}",
}
export const handler = async (event) => {
return await handleEvent(event, config)
};

CLIENT_ID는 NetFUNNEL 콘솔에서 확인하세요.

  1. package.json 파일 생성 후 아래 코드 붙여넣기:
{
"name": "cloudfront-agent",
"type": "module",
"dependencies": {}
}
  1. [Deploy] 버튼 클릭
  2. [버전] 탭 → [새 버전 발행] 클릭

4단계: CloudFront 설정

Lambda@Edge 연결

  1. Lambda@Edge를 적용할 CloudFront Distribution 선택
  2. [동작] 탭에서 항목 선택 후 [편집] 클릭
  3. 하단의 함수 연결에서:
    • 뷰어 요청: 생성한 Lambda 함수 ARN 입력 (버전 포함, 예: :1)
    • 뷰어 응답: 생성한 Lambda 함수 ARN 입력 (버전 포함, 예: :1)
  4. [변경 사항 저장] 클릭

CloudFront 무효화

  1. [무효화] 탭 클릭
  2. [무효화 생성] 클릭
  3. 객체 경로: /* 입력
  4. [무효화 생성] 클릭
  5. 무효화 완료 후 CloudFront에 Lambda@Edge 연결이 적용됩니다

다음 단계