카테고리 없음

ALB 로그 활성화 방법 (Access Logging)

idea9329 2025. 4. 9. 15:09
반응형

 

1️⃣ S3 버킷 준비

ALB 로그는 S3에 저장되므로, S3 버킷을 먼저 생성해요.

  • 예: my-alb-logs-bucket
  • 권장: 별도의 S3 버킷 사용
  • S3 버킷 정책 설정 필요 (아래 참고)

2️⃣ Load Balancer 설정 변경

  1. AWS 콘솔 → EC2 → "Load Balancers" 선택
  2. 로그를 활성화할 ALB 선택
  3. "Attributes" 탭 → "Edit attributes" 클릭
  4. Access logs 항목에서:
    • Enable 체크
    • S3 bucket name: 로그를 저장할 버킷 이름 입력
    • S3 bucket prefix (optional): logs/ 등 원하는 폴더 지정 가능

3️⃣ S3 버킷 정책 (IAM 권한)

로그가 정상적으로 저장되려면, 다음과 같은 정책을 S3에 설정해야 해요:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "AWSALBLogsPolicy",
      "Effect": "Allow",
      "Principal": {
        "Service": "logdelivery.elasticloadbalancing.amazonaws.com"
      },
      "Action": "s3:PutObject",
      "Resource": "arn:aws:s3:::my-alb-logs-bucket/AWSLogs/<your-account-id>/*"
    }
  ]
}

<your-account-id> 부분은 본인의 AWS 계정 ID로 바꿔주세요.


📂 로그 예시 파일 구조

s3://my-alb-logs-bucket/AWSLogs/123456789012/elasticloadbalancing/region/year/month/day/

📌 추가 팁

  • 로그는 5분~10분 단위로 수집
  • 로그 파일 이름은 자동 생성 (타임스탬프, LB 이름 포함)
  • Athena + Glue를 활용해서 로그 분석도 가능해요 (원하시면 쿼리 템플릿도 드릴게요)

🎯 CLI로 설정하고 싶다면?

aws elbv2 modify-load-balancer-attributes \
    --load-balancer-arn <LB_ARN> \
    --attributes Key=access_logs.s3.enabled,Value=true \
                 Key=access_logs.s3.bucket,Value=my-alb-logs-bucket \
                 Key=access_logs.s3.prefix,Value=logs

 

반응형