티스토리 뷰
alb의 로깅은 기본적으로 비활성화 되어있음
access로그를 활성화하면 cloudwatch로 put하는게 아닌 s3로 5분마다 압축하여 로깅을 함
해당 로깅을 하는 방법에 대한 정리
먼저 로그가 저장될 S3 버킷에 아래와 같은 권한 설정을 한다
S3는 ALB와 동일한 리전에 있어야 함
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::600734575887:root"
},
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::{{버킷이름}}/{{경로}}/*"
}
]
}
600734575887의 경우 seoul 리전의 alb account이며 타 리전의 경우 아래 페이지 참조
로깅을 활성화하면 테스트 로그를 쓰는데 해당 부분 테스트(편의상 테스트는 console에서 수행)
위와같이 설정 후 저장을 한다
이후 해당 위치의 AWSLogs/ 하위로 가보면 아래와 같이 testfile이 생성되었으며 정상적으로 작동 한다는 의미
이제 테스트가 완료되었으니 ing 생성시 해당 로깅 설정이 적용되도록 annotation을 추가해준다
alb.ingress.kubernetes.io/load-balancer-attributes: access_logs.s3.enabled=true,access_logs.s3.bucket={{버킷이름}},access_logs.s3.prefix={{경로}}
실제 로그는 아래의 경로에 ip별로 압축되어 생성됨
경로
elasticloadbalancing/{{리전}}/{{년}}/{{월}}/{{일}}
elasticloadbalancing/ap-northeast-2/2022/06/16/
'클라우드 > 쿠버네티스' 카테고리의 다른 글
Linkerd 배포시 인증서 지정 (0) | 2022.07.14 |
---|---|
Github Webhook IP LIST(Jenkins 방화벽 허용) (0) | 2022.07.14 |
Lens의 대체제 K9S (0) | 2022.05.31 |
velero를 이용한 오브젝트 복구 (0) | 2022.05.25 |
쿠버네티스 컨테이너 런타임 Docker에서 Containerd로 (0) | 2022.05.24 |