감사 로깅

이 페이지에서는 Kubernetes apiserver 감사 로그에 액세스하는 방법을 설명합니다.

개요

각 GKE On-Prem 클러스터에는 Kubernetes 감사 로그가 있으며 클러스터의 Kubernetes API 서버에 대한 호출을 시간순으로 기록합니다. 감사 로그는 의심스러운 API 요청을 조사하고 통계를 수집하는 데 유용합니다.

각 apiserver의 감사 로그는 영구 디스크에 덤프되므로 VM을 다시 시작하거나 업그레이드해도 로그가 삭제되지 않습니다. GKE On-Prem은 감사를 최대 10GB까지 보관합니다.

Kubernetes 감사 로그 액세스

관리자 클러스터를 통해서만 감사 로그에 액세스할 수 있습니다.

  1. 클러스터에서 실행 중인 Kubernetes API 서버를 확인합니다.

    kubectl get pods --all-namespaces -l component=kube-apiserver
    
  2. API 서버의 감사 로그를 다운로드합니다.

    kubectl cp -n [NAMESPACE] [APISERVER_POD_NAME]:/var/log/kube-audit/kube-apiserver-audit.log /tmp/kubeaudit.log
    

    이 명령어는 관리자 클러스터에 최대 1GB, 사용자 클러스터에 최대 850GB의 데이터를 포함할 수 있는 최신 로그 파일을 가져옵니다.

    이전 감사 기록은 별도의 파일에 보관됩니다. 이 파일을 보려면 다음을 작성합니다.

    kubectl exec -n [NAMESPACE] [APISERVER_POD_NAME] -- ls /var/log/kube-audit -la
    

    각 감사 로그의 파일 이름에는 파일이 순환된 시점을 나타내는 타임스탬프가 있습니다. 파일에는 해당 시간 및 날짜까지의 감사 로그가 포함되어 있습니다.

감사 정책

감사 로깅 동작은 정적으로 구성된 Kubernetes 감사 로깅 정책에 따라 결정됩니다. 이 정책 변경은 현재 지원되지 않습니다.