您可以向 Rancher Server 容器中传入环境变量,开启和配置审计日志功能。请参考以下链接,在安装时开启该特性。

以下定义了有关审计日志记录的内容以及包含哪些数据的规则:

审计日志级别

下面显示了每个设置,记录的 API 事务具体内容。

AUDIT_LEVEL 设置请求元数据请求正文内容响应元数据响应正文内容
0
1
2
3

与主机系统共享AUDIT_LOG_PATH目录(默认目录:/var/log/auditlog)。日志可以通过标准的 CLI 工具进行查看,也可以转发到日志收集工具,例如 Fluentd, Filebeat, Logstash 等。

Rancher 高可用

使用 Helm Chart 安装 Rancher 时启用 API 审计日志功能,会在 Rancher Pod 中创建一个rancher-audit-log的 sidecar 容器。该容器会将 API 审计日志发送到标准输出(stdout)。您可以像查看任何容器日志一样查看审计日志内容。

通过 CLI 查看

通过 Rancher GUI 查看

  1. 在下拉菜单中,选择 Cluster: local > System

  2. 在主导航栏中,选择 资源 > 工作负载 (在 v2.3.0 之前的版本, 在主导航栏中选择 工作负载 )。找到 cattle-system 命名空间。找到 rancher 工作负载,点击它的链接。

    Rancher Workload

  3. 选择一个 rancher Pod 并选择 省略号 (…) > 查看日志 来查看 rancher Pod 日志。

  4. 日志 下拉菜单中, 选择 rancher-audit-log.

收集审计日志

可以为集群启用 Rancher 的内置日志收集功能,将审计和其他服务日志发送到受支持的日志收集服务端。 详情请参考。

启用审核后,Rancher 以 JSON 的形式记录每个 API 请求或响应。以下每个代码示例都提供了如何标识每个 API 事务的示例。

如果设置了 AUDIT_LEVEL1, Rancher 会记录每个 API 请求的元数据请求头,但不会记录正文。请求头提供有关 API 事务的基本信息,例如事务的 ID,发起事务的用户,事件发生的时间等。

元数据和请求正文级别

如果设置 AUDIT_LEVEL2, Rancher 会记录每个 API 请求的元数据标题和正文。

下面的代码示例描述了一个 API 请求,包含其元数据请求头和请求正文。

如果设置 AUDIT_LEVEL 为 , Rancher 会记录:

  • 每个 API 请求的元数据请求头和请求正文。
  • 每个 API 响应的元数据响应头和相应正文。

请求

下面的代码示例描述了一个 API 请求,它有元数据请求头和请求正文。

响应