Skip to main content
本产品推出了新版本。
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

在 StorageGRID 中配置日志管理

根据需要,配置审核级别、协议标头以及审核消息和日志的位置。

所有 StorageGRID 节点都会生成审计消息和日志,以跟踪系统活动和事件。审计消息和日志是监控和故障排除的重要工具。

或者,您可以"配置外部 syslog 服务器"远程保存审核信息。使用外部服务器可最大限度地减少审核消息日志记录的性能影响,而不会降低审核数据的完整性。如果您拥有大型网格、使用多种类型的 S3 应用程序或希望保留所有审核数据,则外部 syslog 服务器特别有用。

开始之前

更改审核消息级别

可为审核日志中的以下每类消息设置不同的审核级别:

审核类别 默认设置 更多信息

系统

正常

存储

错误

管理

正常

客户端读取

正常

客户端写入

正常

ILM

正常

跨网格复制

错误

备注 在升级期间,审核级别配置不会立即生效。
步骤
  1. 选择*配置* > 监控 > 日志管理

  2. 对于每个审计消息类别,从下拉列表中选择一个审计级别:

    审核级别 问题描述

    关闭

    该类别中没有任何审核消息被记录。

    错误

    仅记录错误消息——结果代码未"成功"(SUCS)的审核消息。

    正常

    将记录标准事务性消息——这些说明中列出的该类别的消息。

    调试

    已弃用。此级别与正常审核级别相同。

    任何特定级别所包含的消息,也包括将在更高级别记录的消息。例如,Normal 级别包含所有 Error 消息。

    备注 如果您不需要 S3 应用程序的客户端读取操作的详细记录,可以选择将*客户端读取*设置更改为*错误*,以减少审核日志中记录的审核消息数量。
  3. 选择 Save

定义 HTTP 请求标头

可以选择定义要包含在客户端读取和写入审核消息中的任何 HTTP 请求标头。

步骤
  1. 在*审核协议标头*部分中,定义要包含在客户端读取和写入审核消息中的 HTTP 请求标头。

    使用星号 (*) 作为通配符,以匹配零个或多个字符。使用转义序列 (\*) 匹配文字星号。

  2. 如果需要,选择 Add another header 以创建其他标题。

    当在请求中找到 HTTP 标头时,它们将包含在 HTRH 字段下的审核消息中。

    备注 仅当*客户端读取*或*客户端写入*的审核级别不为*关闭*时,才会记录审核协议请求标头。
  3. 选择 Save

配置日志位置

默认情况下,审核消息和日志保存在生成它们的节点上。它们会定期轮换并最终删除,以防止占用过多的磁盘空间。如果要在外部保存审核消息和日志子集,请 使用外部 syslog 服务器

如果要在内部保存日志文件,请选择用于日志存储的租户和存储区并启用日志存档。

使用外部 syslog 服务器

您可以选择配置外部 syslog 服务器,以将审核日志、应用程序日志和安全事件日志保存到网格外部的位置。

备注 如果不想使用外部 syslog 服务器,请跳过此步骤并转到 选择日志位置
提示 如果此过程中提供的配置选项不够灵活,无法满足您的要求,则可以使用 `audit-destinations`端点应用其他配置选项,这些端点位于"网格管理 API"的私有 API 部分。例如,如果要为不同的节点组使用不同的 syslog 服务器,则可以使用 API。

输入 syslog 信息

访问配置外部 syslog 服务器向导,并提供 StorageGRID 访问外部 syslog 服务器所需的信息。

步骤
  1. 从本地节点和外部服务器选项卡中,选择*配置外部 syslog 服务器*。或者,如果您之前已配置过外部 syslog 服务器,请选择*编辑外部 syslog 服务器*。

    此时将显示Configure external syslog server向导。

  2. 对于向导的 Enter syslog info 步骤,请在 Host 字段中为外部 syslog 服务器输入有效的完全限定域名或 IPv4 或 IPv6 地址。

  3. 输入外部 syslog 服务器上的目标端口(必须是 1 到 65535 之间的整数)。默认端口为 514。

  4. 选择用于将审核信息发送到外部 syslog 服务器的协议。

    建议使用 TLSRELP/TLS。您必须上传服务器证书才能使用这些选项之一。使用证书有助于保护网格与外部 syslog 服务器之间的连接。有关详细信息,请参见"管理安全证书"

    所有协议选项都需要外部 syslog 服务器的支持和配置。您必须选择一个与外部 syslog 服务器兼容的选项。

    备注 可靠事件日志记录协议 (RELP) 扩展了 syslog 协议的功能,以提供事件消息的可靠传递。使用 RELP 有助于防止在外部 syslog 服务器重新启动时丢失审计信息。
  5. 选择 Continue

  6. 如果您选择了 TLSRELP/TLS,请上传服务器 CA 证书、客户端证书和客户端私钥。

    1. 选择要使用的证书或密钥的*浏览*。

    2. 选择证书或密钥文件。

    3. 选择*打开*以上传文件。

      证书或密钥文件名旁边将显示一个绿色复选标记,通知您已成功上传。

  7. 选择 Continue

管理系统日志内容

您可以选择要发送至外部 syslog 服务器的信息。

步骤
  1. 对于向导的*管理 syslog 内容*步骤,选择要发送到外部 syslog 服务器的每种类型的审核信息。

    • 发送审核日志:发送 StorageGRID 事件和系统活动

    • Send security events:发送安全事件,例如当未经授权的用户尝试登录或用户以 root 身份登录时

    • 发送应用程序日志:发送"StorageGRID 软件日志文件"用于故障排除,包括:

      • bycast-err.log

      • bycast.log

      • jaeger.log

      • nms.log (仅管理节点)

      • prometheus.log

      • raft.log

      • hagroups.log

    • 发送访问日志:将外部请求的 HTTP 访问日志发送到 Grid Manager、Tenant Manager、配置的负载均衡器端点以及来自远程系统的网格联合请求。

  2. 使用下拉菜单为要发送的每个审核信息类别选择严重性和设施(消息类型)。

    设置严重程度和设施值可以帮助您以可自定义的方式聚合日志,以便更轻松地进行分析。

    1. 对于*严重程度*,选择*Passthrough*,或选择一个介于 0 到 7 之间的严重程度值。

      如果选择一个值,则所选值将应用于所有此类型的消息。如果使用固定值覆盖严重性,则有关不同严重性的信息将丢失。

      严重性 问题描述

      Passthrough

      发送到外部 syslog 的每条消息都具有与本地记录到节点上时相同的严重性值:

      • 对于审核日志,严重性为"info"。

      • 对于安全事件,严重性值由节点上的 Linux 发行版生成。

      • 对于应用程序日志,严重程度在"info"和"notice"之间有所不同,具体取决于问题是什么。例如,添加 NTP 服务器和配置 HA 组会给出"info"的值,而故意停止 SSM 或 RSM 服务会给出"notice"的值。

      • 对于访问日志,严重性为"info"。

      0

      紧急情况:系统无法使用

      1

      警告:必须立即采取行动

      2

      严重:严重情况

      3

      错误:错误条件

      4

      警告:警告条件

      5

      注意:正常但重要的状况

      6

      Informational:信息性消息

      7

      调试:调试级消息

    2. 对于 Facilty,选择 Passthrough,或选择一个介于 0 到 23 之间的设施值。

      如果选择一个值,则它将应用于所有此类型的消息。如果使用固定值覆盖设施,则有关不同设施的信息将丢失。

    工具 问题描述

    Passthrough

    发送到外部 syslog 的每条消息都具有与本地登录到节点时相同的设施值:

    • 对于审核日志,发送到外部 syslog 服务器的设施为"local7"。

    • 对于安全事件,设施值由节点上的 linux 发行版生成。

    • 对于应用程序日志,发送到外部 syslog 服务器的应用程序日志具有以下设施值:

      • bycast.log:user 或 daemon

      • bycast-err.log:user、daemon、local3 或 local4

      • jaeger.log:local2

      • nms.log: local3

      • prometheus.log: local4

      • raft.log: local5

      • hagroups.log:local6

    • 对于访问日志,发送到外部 syslog 服务器的设施为"local0"。

    0

    kern(内核消息)

    1

    用户(用户级消息)

    2

    邮件

    3

    守护程序(系统守护程序)

    4

    auth(安全/授权消息)

    5

    syslog(由 syslogd 内部生成的消息)

    6

    lpr(行打印机子系统)

    7

    news(网络新闻子系统)

    8

    UUCP

    9

    cron(时钟守护进程)

    10

    安全(安全/授权消息)

    11

    FTP

    12

    NTP

    13

    logaudit(日志审核)

    14

    logalert(日志警报)

    15

    clock(时钟守护进程)

    16

    local0

    17

    local1

    18

    local2

    19

    local3

    20

    local4

    21

    local5

    22

    local6

    23

    local7

  3. 选择 Continue

发送测试消息

在开始使用外部 syslog 服务器之前,应请求网格中的所有节点将测试消息发送到外部 syslog 服务器。在确认将数据发送到外部 syslog 服务器之前,您应使用这些测试消息来帮助验证整个日志收集基础架构。

注意 请勿使用外部 syslog 服务器配置,直到您确认外部 syslog 服务器收到来自网格中每个节点的测试消息,并且该消息已按预期处理。
步骤
  1. 如果您不想发送测试消息,因为您确定外部 syslog 服务器已正确配置并且可以从网格中的所有节点接收审核信息,请选择*跳过并完成*。

    绿色横幅指示配置已保存。

  2. 否则,请选择*发送测试消息*(推荐)。

    测试结果会不断显示在页面上,直至您停止测试为止。在测试进行期间,您的审核消息将继续发送到先前配置的目的地。

  3. 如果在 syslog 服务器配置或运行时收到任何错误,请更正并再次选择*发送测试消息*。

    请参阅"对外部 syslog 服务器进行故障排除"以帮助解决任何错误。

  4. 等待,直到您看到一个绿色横幅,指示所有节点已通过测试。

  5. 检查您的 syslog 服务器,以确定是否按预期接收和处理测试消息。

    备注 如果使用的是 UDP,请检查整个日志收集基础设施。UDP 协议不支持像其他协议那样严格的错误检测。
  6. 选择*停止并完成*。

    您将返回到*审核和syslog服务器*页面。绿色横幅指示已保存syslog服务器配置。

    备注 在选择包含外部 syslog 服务器的目标之前,StorageGRID 审核信息不会发送到外部 syslog 服务器。

选择日志位置

您可以指定审核日志、安全事件日志、"StorageGRID 应用程序日志"和访问日志的发送位置。

备注

StorageGRID 默认为本地节点审核目标,并将审核信息存储在 `/var/local/log/localaudit.log`中。

使用 `/var/local/log/localaudit.log`时,网格管理器和租户管理器审核日志条目可能会发送到存储节点。您可以使用 `run-each-node --parallel "zgrep MGAU /var/local/log/localaudit.log | tail"`命令查找哪个节点具有最新条目。

仅当配置了外部 syslog 服务器时,某些目标才可用。

步骤
  1. 选择*日志位置* > 本地节点和外部服务器

  2. 要更改日志类型的日志位置,请选择其他选项。

    提示 *仅本地节点*和*外部 syslog 服务器*通常提供更好的性能。
    选项 问题描述

    仅本地节点(默认)

    审核消息、安全事件日志和应用程序日志不会发送到管理节点。相反,它们仅保存在生成它们的节点("本地节点")上。在每个本地节点上生成的审核信息存储在 `/var/local/log/localaudit.log`中。

    注意:StorageGRID 会定期轮换删除本地日志,以释放空间。当节点的日志文件达到 1 GB 时,将保存现有文件,并启动一个新的日志文件。日志的轮换限制为 21 个文件。当创建日志文件的第 22 个版本时,将删除最旧的日志文件。每个节点上平均存储约 20 GB 的日志数据。要长时间存储日志,请 使用租户和存储桶进行日志存储

    管理节点/本地节点

    审核消息发送到管理节点上的审核日志,安全事件日志和应用程序日志存储在生成它们的节点上。审核信息存储在以下文件中:

    • 管理节点(主节点和非主节点): /var/local/audit/export/audit.log

    • 所有节点: /var/local/log/localaudit.log 文件通常为空或缺失。它可能包含辅助信息,例如某些消息的其他副本。

    外部 syslog 服务器

    审核信息将发送到外部 syslog 服务器并保存在本地节点上(/var/local/log/localaudit.log)。发送的信息类型取决于您如何配置外部 syslog 服务器。只有在完成已配置外部 syslog 服务器之后,才会启用此选项。

    管理节点和外部 syslog 服务器

    审核消息发送到管理节点上的审核日志(/var/local/audit/export/audit.log),审核信息发送到外部 syslog 服务器并保存在本地节点上(/var/local/log/localaudit.log)。发送的信息类型取决于您如何配置外部 syslog 服务器。只有在完成已配置外部 syslog 服务器之后,才会启用此选项。

  3. 选择 Save

    此时将显示一条警告消息。

  4. 选择*OK*以确认要更改审核信息的目标。

    新日志将发送到您选择的目的地。现有日志保留在其当前位置。

使用存储桶

日志会定期轮换。使用同一网格中的 S3 存储桶将日志存储较长时间。

  1. 选择*日志位置* > 使用存储桶

  2. 选中*启用归档日志*复选框。

  3. 如果列出的租户和存储桶不是您要使用的,请选择 Change tenant and bucket,然后选择 Create tenant and bucketSelect tenant and bucket

    创建租户和存储桶
    1. 输入新的租户名称。

    2. 输入并确认新租户的密码。

    3. 输入新的存储桶名称。

    4. 选择*创建并启用*。

    选择租户和存储桶
    1. 从下拉列表中选择租户名称。

    2. 从下拉菜单中选择一个存储桶。

    3. 选择*选择并启用*。

  4. 选择 Save

    日志将存储在您指定的租户和存储桶中。日志的对象键名称采用以下格式:

    system-logs/{node_hostname}/{absolute_path_to_log_file_on_node}--{last_modified_time}.gz

    例如:

    system-logs/DC1-SN1/var/local/log/localaudit.log--2025-05-12_13:41:44.gz