指标和日志设置
本页面涵盖了控制MinIO指标和日志相关行为的设置。 更多信息请参阅 指标和警报。
这些设置配置了将常规 minio server
日志和审计日志发布到一个HTTP Webhook。
更多信息,请参阅 将服务器或审计日志发布到外部服务 。
您可以通过定义以下内容来建立或修改设置:
在启动或重新启动 MinIO 服务器之前,在宿主系统上定义一个 环境变量。 请参阅您的操作系统的文档,了解如何定义环境变量。
使用
mc admin config set
命令来设置一个 配置项。使用 MinIO控制台 的 管理员 > 设置 页面来设置一个 配置项。
如果您同时定义了环境变量和类似的配置设置,MinIO 将使用环境变量的值。
有些设置只有环境变量或配置设置,而不是两者都有。
重要
每个配置设置都控制着MinIO的基本行为和功能。 MinIO 强烈建议 在较低的环境中,如DEV或QA,测试配置更改,然后再将其应用到生产环境中。
Prometheus Authentication
这个设置控制了MinIO如何对Prometheus进行身份验证。
指定Prometheus 抓取端点 的身份验证模式。
jwt
- 默认情况 下,MinIO 要求抓取客户端指定一个 JWT(JSON Web 令牌)用于请求的身份验证。使用
mc admin prometheus generate
命令来生成必要的JWT bearer tokens。
在
public
模式下,MinIO 不要求抓取客户端对其请求进行身份验证。
服务器日志
以下部分文档介绍了配置MinIO以将 minio server`日志发布到HTTP webhook端点的设置。
请参阅 :ref:`minio-logging-publish-server-logs
以获取更完整的文档和关于使用这些设置的教程。
定义多个端点
您可以通过为每组相关的日志环境变量附加一个唯一标识符 _ID
来指定多个webhook端点作为日志目标。
例如, 以下设置定义了两个不同的服务器日志webhook端点:
export MINIO_LOGGER_WEBHOOK_ENABLE_PRIMARY="on"
export MINIO_LOGGER_WEBHOOK_AUTH_TOKEN_PRIMARY="TOKEN"
export MINIO_LOGGER_WEBHOOK_ENDPOINT_PRIMARY="http://webhook-1.example.net"
export MINIO_LOGGER_WEBHOOK_ENABLE_SECONDARY="on"
export MINIO_LOGGER_WEBHOOK_AUTH_TOKEN_SECONDARY="TOKEN"
export MINIO_LOGGER_WEBHOOK_ENDPOINT_SECONDARY="http://webhook-2.example.net"
mc admin config set logger_webhook:primary \
endpoint="http://webhook-01.example.net" [ARGUMENTS=VALUE ...]
mc admin config set logger_webhook:secondary \
endpoint="http://webhook-02.example.net" [ARGUMENTS=VALUE ...]
设置
Enable
将 on
指定为开启选项,以将 minio server
日志发布到 HTTP webhook 端点。
Endpoint
必需的
webhook的HTTP端点。
Auth Token
可选
适合该端点的适当类型的身份验证令牌。 对于不需要身份验证的端点,请省略。
为了适应各种令牌类型,MinIO 使用与指定 完全相同 的值创建请求认证头。 根据端点的不同,您可能需要包含额外的信息。
例如: 对于Bearer令牌,请前缀 Bearer
:
export MINIO_LOGGER_WEBHOOK_AUTH_TOKEN_myendpoint="Bearer 1a2b3c4f5e"
根据端点要求修改该值。 自定义身份验证格式可能类似于以下内容:
export MINIO_LOGGER_WEBHOOK_AUTH_TOKEN_xyz="ServiceXYZ 1a2b3c4f5e"
请查阅所需服务的文档以获取更多详细信息。
这个环境变量与 logger_webhook auth_token
配置设置对应。
- logger_webhook auth_token
适合该端点的适当类型的身份验证令牌。 对于不需要身份验证的端点,请省略。
为了适应各种令牌类型,MinIO 使用与指定 完全相同 的值创建请求认证头。 根据端点的不同,您可能需要包含额外的信息。
例如: 对于Bearer令牌,请前缀
Bearer
:mc admin config set myminio logger_webhook \ endpoint="https://webhook-1.example.net" \ auth_token="Bearer 1a2b3c4f5e"
根据端点要求修改该值。 自定义身份验证格式可能类似于以下内容:
mc admin config set myminio logger_webhook \ endpoint="https://webhook-1.example.net" \ auth_token="ServiceXYZ 1a2b3c4f5e"
请查阅所需服务的文档以获取更多详细信息。
批量大小
在 MinIO 版本加入: Server RELEASE.2024-03-10T02-53-48Z
可选
将指定数量的事件作为批量收集并发送到webhook。 如果未设置,MinIO每个请求发送一个事件。
客户证书
可选
还需要设置 客户端密钥。
用于向webhook日志服务器进行身份验证的mTLS证书的路径。
客户端密钥
可选
如果您定义了 客户端证书,则需要此项。
用于与webhook日志服务进行身份验证的mTLS证书密钥的路径。
Proxy
可选
当从MinIO到外部webhooks进行通信时,定义一个代理用于webhook日志。
队列目录
可选
在 RELEASE.2023-05-18T00-05-36Z 版本加入.
指定目录路径,例如 /opt/minio/events
,以启用MinIO的持久事件存储,用于存储未投递的消息。
MinIO进程必须在指定的目录上具有读取、写入和列表访问权限。
当webhook服务离线时,MinIO将未投递的事件存储在指定的存储中,并在连接恢复时重新播放存储的事件。
Queue Size
可选
用于logger webhook目标的字节大小整数值。
Webhook 审核日志
以下部分文档化了用于配置MinIO将审计日志发布到HTTP webhook端点的环境变量。 有关使用这些环境变量的更完整文档和教程,请参见 将审核日志发布到 HTTP Webhook。
多目标
您可以通过为每个相关日志设置集添加一个唯一标识符 _ID
来指定多个webhook端点作为审计日志目标。
例如, 以下命令设置了两个不同的审计日志webhook端点:
export MINIO_AUDIT_WEBHOOK_ENABLE_PRIMARY="on"
export MINIO_AUDIT_WEBHOOK_AUTH_TOKEN_PRIMARY="TOKEN"
export MINIO_AUDIT_WEBHOOK_ENDPOINT_PRIMARY="http://webhook-1.example.net"
export MINIO_AUDIT_WEBHOOK_CLIENT_CERT_SECONDARY="/tmp/cert.pem"
export MINIO_AUDIT_WEBHOOK_CLIENT_KEY_SECONDARY="/tmp/key.pem"
export MINIO_AUDIT_WEBHOOK_ENABLE_SECONDARY="on"
export MINIO_AUDIT_WEBHOOK_AUTH_TOKEN_SECONDARY="TOKEN"
export MINIO_AUDIT_WEBHOOK_ENDPOINT_SECONDARY="http://webhook-1.example.net"
export MINIO_AUDIT_WEBHOOK_CLIENT_CERT_SECONDARY="/tmp/cert.pem"
export MINIO_AUDIT_WEBHOOK_CLIENT_KEY_SECONDARY="/tmp/key.pem"
- audit_webhook
定义用于发布 MinIO审计日志 的HTTP webhook目标的高级配置键。
使用
mc admin config set
命令来设置或更新一个HTTP webhook目标。 将附加可选参数指定为空格 (" "
) 分隔的 列表。mc admin config set audit_webhook \ endpoint="http://webhook.example.net" [ARGUMENTS=VALUE ...]
您可以通过在顶级键后添加
[:name]
来指定 多个HTTP webhook目标。 例如, 以下命令 将两个不同的 HTTP Webhook 目标设置为primary
和secondary
分别:mc admin config set audit_webhook:primary \ endpoint="http://webhook-01.example.net" [ARGUMENTS=VALUE ...] mc admin config set audit_webhook:secondary \ endpoint="http://webhook-02.example.net" [ARGUMENTS=VALUE ...]
设置
Enable
Endpoint
必需的
webhook的HTTP端点。
Auth Token
可选
适合该端点的适当类型的身份验证令牌。 对于不需要身份验证的端点,请省略。
为了适应各种令牌类型,MinIO 使用与指定 完全相同 的值创建请求认证头。 根据端点的不同,您可能需要包含额外的信息。
例如, 对于Bearer令牌,请前缀 Bearer
:
export MINIO_AUDIT_WEBHOOK_AUTH_TOKEN_myendpoint="Bearer 1a2b3c4f5e"
根据端点要求修改该值。
自定义身份验证格式可能类似于以下内容:
export MINIO_AUDIT_WEBHOOK_AUTH_TOKEN_xyz="ServiceXYZ 1a2b3c4f5e"
mc admin config set myminio audit_webhook \
endpoint="http://webhook.example.net" \
auth_token="Bearer 1a2b3c4f5e"
根据端点要求修改该值。
自定义身份验证格式的命令可能如下所示:
mc admin config set myminio audit_webhook \
endpoint="http://webhook.example.net" \
auth_token="ServiceXYZ 1a2b3c4f5e"
请查阅所需服务的文档以获取更多详细信息。
客户证书
可选
Requires also specifying MINIO_AUDIT_WEBHOOK_CLIENT_KEY
.
Requires also specifying client_key
.
要向HTTP webhook出示的x.509客户端证书。 对于不需要客户端出示已知TLS证书的webhook,请省略。
客户端密钥
可选
Requires also specifying MINIO_AUDIT_WEBHOOK_CLIENT_CERT
.
需要指定 client_cert
.
要向HTTP webhook出示的x.509私钥。 对于不需要客户端出示已知TLS证书的webhook,请省略。
队列目录
可选
在 RELEASE.2023-05-18T00-05-36Z 版本加入.
指定目录路径,例如 /opt/minio/events
,以启用MinIO的持久事件存储,用于存储未投递的消息。
MinIO进程必须在指定的目录上具有读取、写入和列表访问权限。
当webhook服务离线时,MinIO将未投递的事件存储在指定的存储中,并在连接恢复时重新播放存储的事件。
Queue Size
可选
用于审计webhook目标的队列大小的整数值。
默认值为 100000
个事件。
Kafka 审计日志
以下部分文档化了用于配置MinIO将审计日志发布到Kafka代理的环境变量。
- audit_kafka
用于定义发布 MinIO审计日志 的Kafka代理目标的顶级配置键。
使用
mc admin config set
命令来设置或更新Kafka审计目标。 将其他可选参数指定为空格 (" "
) 分隔的列表。mc admin config set audit_kafka \ brokers="https://kafka-endpoint.example.net:9092" [ARGUMENTS=VALUE ...]
设置
Enable
必需的
Brokers
必需的
一个由逗号分隔的Kafka代理地址列表:
brokers="https://kafka-1.example.net:9092,https://kafka-2.example.net:9092"
MinIO服务器在初始化并向审计日志事件发送数据时,至少需要一个在线且可访问的Kafka代理。 MinIO会按照指定的顺序检查每个代理。
Topic
必需的
Kafka主题的名称,用于与MinIO审计日志事件相关联。
TLS
可选
将此设置为 on
以启用通过TLS连接到指定的Kafka代理。
默认为 off
。
TLS 跳过验证
可选
将此设置设置为 on
以指示MinIO跳过对Kafka代理TLS证书的验证。
您可以使用此选项来启用对使用由未知实体签发的TLS证书的Kafka代理的连接,例如自签名的或企业内部的证书授权中心(CA)签发的证书。
MinIO默认使用系统信任库 以及 MinIO的 :ref:`CA目录 <minio-tls>`中的内容来验证远程客户端TLS证书。
默认情况下,对于严格验证TLS证书,设置为 off
。
SASL
可选
需要指定 sasl_username
和 sasl_password
.
设置为 on
以指示MinIO使用SASL对Kafka代理进行身份验证。
SASL Username
可选
需要指定 sasl
和 sasl_password
.
MinIO用于对Kafka代理进行身份验证的SASL用户名。
SASL Password
可选
需要指定 sasl
和 sasl_username
.
MinIO用于对Kafka代理进行身份验证的SASL密码。
SASL机制
可选
重要
PLAIN
认证机制通过网络以明文形式发送凭据。
使用 MINIO_AUDIT_KAFKA_TLS
环境变量或启用与Kafka代理的TLS连接,以确保安全传输SASL凭据。
重要
PLAIN
认证机制通过网络以明文形式发送凭据。
使用 tls
来启用与 Kafka 代理的 TLS 连接,并确保 SASL 凭据的安全传输。
MinIO 用于与 Kafka 代理进行身份验证的 SASL 机制。
默认为 plain
。
TLS 客户端身份验证
可选
需要指定 client_tls_cert
和 client_tls_key
.
将此设置为 on
,以指示 MinIO 使用 mTLS 对 Kafka 代理进行身份验证。
客户端 TLS 证书
可选
用于 mTLS 认证的 TLS 客户端证书的路径。
客户端 TLS 密钥
可选
用于 mTLS 认证的 TLS 客户端私钥的路径。
Version
可选
MinIO 期望在指定端点上的 Kafka 代理的版本。
如果 Kafka 代理的版本与为此设置指定的版本不匹配,MinIO 将返回一个错误。
Comment
可选
与配置关联的注释。
队列目录
可选
指定目录路径以启用MinIO的持久化事件存储,例如 /opt/minio/events
。
MinIO 在 Kafka 服务离线时,将在指定的存储中存储未投递的事件,并在连接恢复时重新播放这些存储的事件。
Queue Size
可选
指定未发送消息的最大限制。
默认为 100000
。