Журналы аудита Kubernetes должны сообщать вам об этом. Аудит Kubernetes предоставляет хронологический набор записей, относящихся к безопасности, документирующих последовательность действий, которые затронули систему отдельными пользователями, администраторами или другими компонентами системы.
известны следующие уровни аудита:
Нет - не регистрировать события, соответствующие этому правилу.
Метаданные - метаданные запроса журнала (запрашивающий пользователь, отметка времени, ресурс, глагол и т. д. c.), но не тело запроса или ответа.
Запрос - регистрировать метаданные события и тело запроса, но не тело ответа. Это не относится к нересурсным запросам.
RequestResponse - регистрировать метаданные событий, тела запросов и ответов. Это не относится к запросам, не связанным с ресурсами.
Вы можете написать политику аудита, как показано ниже:
apiVersion: audit.k8s.io/v1 # This is required.
kind: Policy
# Don't generate audit events for all requests in RequestReceived stage.
omitStages:
- "RequestReceived"
rules:
# Log deployment changes at RequestResponse level
- level: RequestResponse
resources:
- group: "apps/v1"
resources: ["deployments"]
Вы должны применить это с помощью --audit-policy-file
flag of Сервер API kube.
Также вы можете Fluentd собирать журналы аудита, как в этом руководстве
https://kubernetes.io/docs/tasks/debug-application-cluster/audit/