审核日志记录

本页面介绍如何访问 Kubernetes apiserver 审核日志。

概览

每个 GKE On-Prem 集群都有 Kubernetes 审核日志记录,可按时间顺序记录对集群的 Kubernetes API 服务器的调用。审核日志适合用于调查可疑的 API 请求或者收集统计信息。

来自每个 apiserver 的审核日志会转储到永久性磁盘,这样虚拟机重启/升级就不会导致日志消失。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 审核日志记录政策决定。目前不支持更改此政策。