kubesphere 3.4.1 开启审计日志
适用于3.4.1 的kubesphere 版本的系统。
1. 导入elk镜像
修改 push_image.sh 下的ANSIBLE_DOCKER_REGISTRY_ADDRESS 为当前集群的镜像仓库地址
使用以下命令加载镜像。
./push_image.sh
2. 配置elk
修改 vars.env 文件
export ANSIBLE_IMOM_NAMESPACE='imom'
export ANSIBLE_IMOM_COMMON_NAMESPACE='common'
export ANSIBLE_IMOM_ELK_NAMESPACE='elk'
export ANSIBLE_HW_NAMESPACE='mbm'
export ANSIBLE_IMAGE_PULL_SECRETS='default-secret'
export ANSIBLE_REDIS_ADDRESS='sie-redis-broker.common'
export ANSIBLE_REDIS_MASTER_ADDRESS='sie-redis-sentinel-master-svc.common'
export ANSIBLE_REDIS_PASSWORD='Dme123456'
export ANSIBLE_DOCKER_REGISTRY_ADDRESS='192.168.174.187:5000'
3. 安装elk
./install.sh elk
安装完毕后,确认elk命令空间下的 logstash, kibana, elasticsearch, fluent-bit 工作负载都可以正常启动。
4. 导入kubesphere 审计镜像
修改 push_image.sh 下的ANSIBLE_DOCKER_REGISTRY_ADDRESS 为当前集群的镜像仓库地址
使用以下命令加载镜像。
./push_image.sh
5. 启动审计功能

将 spec.auditing.enabled 设置为 true

重启ks-installer:

观察相关的工作负载有没启动:


6. 配置审计功能
6.1 禁用默认的opensearch日志接受器
停用opensearch 相关的工作负载(将副本设置为0)

禁用使用opensearch 接收审计日志:

6.2 新增elasticsearch方式的日志接受器
新增elasticsearch 方式的日志接受器:

最后效果如下:

6.3 修复对接elasticsearch API错误问题


加入 suppressTypeName: 'On' 一项。

6.8 Webhook auditing 工作副本设置为1


工作副本设置为1

7. 检查elasticsearch 有没接受到日志
查看elk 命令空间下的elasticsearch 服务,查到对应的NodePort 端口

使用 http://192.168.174.187:31198/_cat/indices?v 的方式打开网页
观察到ks-logstash 日志已出现,表示日志已正常接受:

8. 配置kibana 的可视化面板
查看elk 命令空间下的kibana 服务,查到对应的NodePort 端口

在 "Stack Management" -> “数据视图” -> “创建数据视图”

索引模式加入 ks-logstash-log-*

8.2 配置kibana 的仪表盘

来源选择刚才创建的"数据视图", 拖动需要的字段。

最后效果如下:
