IT/AWS

[AWS] NLB Access log 활성화 방법

양눈 2025. 1. 16. 15:04
반응형

NLB 엑세스 로그도 활성화 하려면 S3를 만들고 권한을 먼저 부여해야 해당 디렉토리로 로그를 저장 할 수 있다. 

1. S3를 만들고 버킷 선택후 "권한" > "버킷정책"으로 가서 아래와 같이 작성 한후 저장 해준다. 

(저장 경로 패턴만 잘 지정해 주면 별 문제 없이 저장된다.)

{
    "Version": "2012-10-17",
    "Id": "AWSLogDeliveryWrite",
    "Statement": [
        {
            "Sid": "AWSLogDeliveryAclCheck",
            "Effect": "Allow",
            "Principal": {
                "Service": "delivery.logs.amazonaws.com"
            },
            "Action": "s3:GetBucketAcl",
            "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket",     # 버킷명 입력
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": ["012345678912"]  # 어카운트 12자리 입력
                },
                "ArnLike": {
                    "aws:SourceArn": ["arn:aws:logs:region:012345678912:*"]   # 리전명, 어카운트명 12자리 입력
                }
            }
        },
        {
            "Sid": "AWSLogDeliveryWrite",
            "Effect": "Allow",
            "Principal": {
                "Service": "delivery.logs.amazonaws.com"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/Prefix/AWSLogs/account-ID/*",   
            # 버킷명 뒷부분을 동일하게 맞춰 주거나  "버킷명/nlblog/*" 등과 같은 패턴으로 입력해 준다. 
            "Condition": {
                "StringEquals": {
                    "s3:x-amz-acl": "bucket-owner-full-control",
                    "aws:SourceAccount": ["012345678912"]  # 어카운트 12자리 입력
                },
                "ArnLike": {
                    "aws:SourceArn": ["arn:aws:logs:region:012345678912:*"]   # 리전명, 어카운트명 12자리 입력
                }
            }
        }
    ]
}

위쪽에 권한만 잘 들어갔다면 AWS 문서에 나와 있는 아래 순서대로 활성화 하면 된다. 

  1. 에서 Amazon EC2 콘솔을 엽니다https://console.aws.amazon.com/ec2/.
  2. 탐색 창에서 로드 밸런서를 선택합니다.
  3. 로드 밸런서 이름을 선택하여 세부 정보 페이지를 엽니다.
  4. 속성성(Attributes) 탭에서 편집(Edit)을 선택합니다.
  5. [Edit load balancer attributes] 페이지에서 다음 작업을 수행합니다.
    1. 모니터링에서 액세스 로그를 켭니다.
    2. S3 찾아보기를 선택하고 사용할 버킷을 선택합니다. 또는 접두사를 포함하여 S3 버킷의 위치를 입력합니다.
    3. Save changes(변경 사항 저장)를 선택합니다.

로그는 zip 형태로 시간 단위로 저장 된다. 

 

원본출처.  https://docs.aws.amazon.com/ko_kr/elasticloadbalancing/latest/network/enable-access-logs.html

반응형