Kubernetes 감사 로그 회전 크기 설정 점검

파일 크기와 회전 파일 수를 함께 조정해 필요한 기록을 보관하세요.

설명

kube-apiserver의 --audit-log-maxsize는 감사 로그 파일을 회전하기 전의 최대 크기를 MB 단위로 정합니다. 작은 파일은 더 자주 회전되므로, 이전 파일 수가 제한된 환경에서 기록이 빨리 사라질 수 있습니다. 생략 여부만으로 파일 크기가 너무 작다고 판단할 수는 없으며 실행 버전의 기본값을 확인해야 합니다.

잠재적 영향

  • 로그 급증 시 제한된 파일 수에 더 짧은 시간의 기록만 남을 수 있습니다.
  • 지나치게 큰 파일은 저장 공간 관리와 전송에 부담을 줄 수 있습니다.

해결 방법

  • 로그 발생량과 저장·전송 여건에 맞춰 --audit-log-maxsize를 설정하세요. 예제의 100MB가 모든 환경에 충분한 것은 아닙니다.
  • 감사 정책과 파일 저장 경로를 구성하고 maxbackup, maxage 및 외부 보관 정책을 함께 검토하세요. 실제 회전 빈도와 기록 보관 기간을 확인하세요.

예시

v1.30.0의 인자만 비교합니다. 감사 정책, --audit-log-path와 필요한 마운트·API 서버 설정은 생략했습니다. 파일 크기만 설정해도 감사 로그가 활성화되는 것은 아닙니다.

변경 전

yaml
apiVersion: v1
kind: Pod
metadata:
  name: kube-apiserver
spec:
  containers:
    - name: kube-apiserver
      image: registry.k8s.io/kube-apiserver:v1.30.0
      command:
        - kube-apiserver
      args:
        - --audit-log-maxsize=50

50MB를 회전 기준으로 설정합니다. 적합성은 로그량과 전체 보관 정책에 따라 달라집니다.

변경 후

yaml
apiVersion: v1
kind: Pod
metadata:
  name: kube-apiserver
spec:
  containers:
    - name: kube-apiserver
      image: registry.k8s.io/kube-apiserver:v1.30.0
      command:
        - kube-apiserver
      args:
        - --audit-log-maxsize=100

100MB로 늘려 같은 로그량에서 회전 빈도를 낮춥니다. 필요한 기록 보관 기간을 별도로 확인해야 합니다.

참조