16.5. Pod 보안 승인 경고 정보
Pod 보안 승인 컨트롤러의 감사 수준에 Pod 거부가 있다고 보고하면 PodSecurityViolation
경고가 트리거됩니다. 이 경고는 하루 동안 지속됩니다.
Kubernetes API 서버 감사 로그를 보고 트리거된 경고를 조사합니다. 예를 들어 글로벌 적용이 restricted
Pod 보안 수준으로 설정된 경우 워크로드가 승인에 실패할 가능성이 높습니다.
Pod 보안 승인 위반 감사 이벤트를 식별하는 데 도움이 되는 내용은 Kubernetes 문서의 감사 주석을 참조하십시오.
16.5.1. Pod 보안 위반 확인
PodSecurityViolation
경고는 Pod 보안 위반을 유발하는 워크로드에 대한 세부 정보를 제공하지 않습니다. Kubernetes API 서버 감사 로그를 검토하여 영향을 받는 워크로드를 식별할 수 있습니다. 이 절차에서는 must-gather
툴을 사용하여 감사 로그를 수집한 다음 pod-security.kubernetes.io/audit-violations
주석을 검색합니다.
사전 요구 사항
-
jq
를 설치했습니다. -
cluster-admin
역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
프로세스
감사 로그를 수집하려면 다음 명령을 입력합니다.
$ oc adm must-gather -- /usr/bin/gather_audit_logs
영향을 받는 워크로드 세부 정보를 출력하려면 다음 명령을 입력합니다.
$ zgrep -h pod-security.kubernetes.io/audit-violations must-gather.local.<archive_id>/<image_digest_id>/audit_logs/kube-apiserver/*log.gz \ | jq -r 'select((.annotations["pod-security.kubernetes.io/audit-violations"] != null) and (.objectRef.resource=="pods")) | .objectRef.namespace + " " + .objectRef.name' \ | sort | uniq -c
<
;archive_id
> 및 <image_digest_id
>를 실제 경로 이름으로 바꿉니다.출력 예
1 test-namespace my-pod