kubernetes-开启审计日志
·
kubernetes-开启审计日志
前面文章中通过kubeadm部署完kubernetes,现在想对apiserver开启审计日志

大致步骤:
- 创建审计策略文件(放在
/etc/kubernetes/audit-policy.yaml) - 修改 API Server 的 static pod 配置文件(
/etc/kubernetes/manifests/kube-apiserver.yaml) - kubelet 会自动重启 API Server(因为 static pod)
创建审计策略文件
#vim /etc/kubernetes/audit-policy.yaml
apiVersion: audit.k8s.io/v1
kind: Policy
rules:
# 记录所有关键的变更操作
- level: RequestResponse
verbs: ["create", "update", "patch", "delete"]
resources:
- group: ""
resources: ["pods", "services", "endpoints", "configmaps", "secrets"]
- group: "apps"
resources: ["deployments", "statefulsets", "daemonsets", "replicasets"]
- group: "batch"
resources: ["jobs", "cronjobs"]
修改apiserver的manifest
#vim /etc/kubernetes/manifests/kube-apiserver.yaml
在kube-apiserver command启动添加以下参数:
- --audit-policy-file=/etc/kubernetes/audit-policy.yaml
- --audit-log-path=/var/log/kubernetes/audit.log
- --audit-log-maxage=30
- --audit-log-maxbackup=10
- --audit-log-maxsize=100
在 volumes: 下添加:
- name: audit-policy
hostPath:
path: /etc/kubernetes/audit-policy.yaml
type: File
- name: audit-log
hostPath:
path: /var/log/kubernetes
type: DirectoryOrCreate
在 volumeMounts: 下添加:
- mountPath: /etc/kubernetes/audit-policy.yaml
name: audit-policy
readOnly: true
- mountPath: /var/log/kubernetes
name: audit-log
等待apiserver重启
因为这是 static pod,保存文件后 kubelet 会自动触发 API Server 重建。
#ps aux|grep apiserver|grep audit
更多推荐



所有评论(0)