文档

Elasticsearch 通知设置

此页面记录了将 Elasticsearch 服务配置为 存储桶通知 目标的设置。请参阅 将事件发布到 Elasticsearch,了解有关使用这些设置的教程。

您可以通过定义以下内容来建立或修改设置

  • 在启动或重新启动 MinIO 服务器之前,在主机系统上定义一个环境变量。有关如何定义环境变量,请参阅您的操作系统的文档。

  • 使用 mc admin config set 定义一个配置设置

  • 使用 MinIO 控制台管理员 > 设置 页面定义一个配置设置

如果同时定义了环境变量和类似的配置设置,则 MinIO 使用环境变量值。

某些设置只有环境变量或配置设置,但两者兼而有之。

重要

每个配置设置都控制着 MinIO 的基本行为和功能。MinIO **强烈建议**在应用于生产环境之前,在较低的环境(如 DEV 或 QA)中测试配置更改。

多个 Elasticsearch 目标

您可以通过为每一组相关设置附加唯一的标识符 _ID 来指定多个 Elasticsearch 服务端点。例如,以下命令分别将两个不同的 Elasticsearch 服务端点设置为 PRIMARYSECONDARY

示例

set MINIO_NOTIFY_ELASTICSEARCH_ENABLE_PRIMARY="on"
set MINIO_NOTIFY_ELASTICSEARCH_URL_PRIMARY="https://user:[email protected]:9200"
set MINIO_NOTIFY_ELASTICSEARCH_INDEX_PRIMARY="bucketevents"
set MINIO_NOTIFY_ELASTICSEARCH_FORMAT_PRIMARY="namespace"

set MINIO_NOTIFY_ELASTICSEARCH_ENABLE_SECONDARY="on"
set MINIO_NOTIFY_ELASTICSEARCH_URL_SECONDARY="https://user:[email protected]:9200"
set MINIO_NOTIFY_ELASTICSEARCH_INDEX_SECONDARY="bucketevents"
set MINIO_NOTIFY_ELASTICSEARCH_FORMAT_SECONDARY="namespace"
mc admin config set notify_elasticsearch:primary \
   url="user:password@https://elasticsearch-endpoint.example.net:9200" \
   index="bucketevents" \
   format="namespace" \
   [ARGUMENT=VALUE ...]

mc admin config set notify_elasticsearch:secondary \
   url="user:password@https://elasticsearch-endpoint.example.net:9200" \
   index="bucketevents" \
   format="namespace" \
   [ARGUMENT=VALUE ...]

请注意,对于配置设置,唯一的标识符仅附加到 notify_elasticsearch,而不是附加到每个单独的参数。

设置

启用

必需

MINIO_NOTIFY_ELASTICSEARCH_ENABLE

指定 on 以启用将存储桶通知发布到 Elasticsearch 服务端点。

默认为 off

如果设置为 on,则需要指定以下其他环境变量

notify_elasticsearch

用于定义 Elasticsearch 服务端点以与 MinIO 存储桶通知 一起使用的顶级配置键。

使用 mc admin config set 设置或更新 Elasticsearch 服务端点。以下参数对于每个目标都是必需的

指定其他可选参数作为空格 (" ") 分隔的列表。

mc admin config set notify_elasticsearch \
  url="https://user:[email protected]:9200" \
  [ARGUMENT="VALUE"] ... \

URL

必需

MINIO_NOTIFY_ELASTICSEARCH_URL
notify_elasticsearch url

指定 MinIO 将存储桶事件发布到的 Elasticsearch 服务端点。例如,https://elasticsearch.example.com:9200

MinIO 支持使用格式 PROTOCOL://USERNAME:PASSWORD@HOSTNAME:PORT 以 URL 参数的形式传递身份验证信息。

版本 RELEASE.2023-05-27T05-56-19Z 中已更改: 在添加目标之前,MinIO 会检查指定 URL 的运行状况(如果它可解析且可访问)。如果现有目标脱机,MinIO 不会再阻止添加新的通知目标。

索引

必需

MINIO_NOTIFY_ELASTICSEARCH_INDEX
notify_elasticsearch index

指定用于存储或更新 MinIO 存储桶事件的 Elasticsearch 索引的名称。如果 Elasticsearch 索引不存在,则会自动创建。

格式

必需

MINIO_NOTIFY_ELASTICSEARCH_FORMAT
notify_elasticsearch format

指定写入 Elasticsearch 索引的事件数据的格式。MinIO 支持以下值

namespace

对于每个存储桶事件,MinIO 会创建一个 JSON 文档,其中包含事件中的存储桶和对象名称作为文档 ID,并将实际事件作为文档正文的一部分。对该对象的额外更新会修改该对象的现有索引条目。同样,删除对象也会删除相应的索引条目。

access

对于每个存储桶事件,MinIO 会创建一个 JSON 文档,其中包含事件详细信息,并使用 Elasticsearch 生成的随机 ID 将其追加到索引中。对对象的额外更新会导致新的索引条目,而现有条目保持不变。

用户名

可选

MINIO_NOTIFY_ELASTICSEARCH_USERNAME
notify_elasticsearch username

用于连接到强制执行身份验证的 Elasticsearch 服务端点的用户名。

密码

可选

MINIO_NOTIFY_ELASTICSEARCH_PASSWORD
notify_elasticsearch password

用于连接到强制执行身份验证的 Elasticsearch 服务端点的密码。

版本 RELEASE.2023-06-23T20-26-00Z 中已更改: 当作为 mc admin config get 的一部分返回时,MinIO 会屏蔽此值。

队列目录

可选

MINIO_NOTIFY_ELASTICSEARCH_QUEUE_DIR
notify_elasticsearch queue_dir

指定目录路径以启用 MinIO 的持久事件存储,用于未传递的消息,例如 /opt/minio/events

当 Elasticsearch 服务脱机时,MinIO 会将未传递的事件存储在指定的存储中,并在连接恢复时重放存储的事件。

队列限制

可选

MINIO_NOTIFY_ELASTICSEARCH_QUEUE_LIMIT
notify_elasticsearch queue_limit

指定未传递消息的最大限制。默认为 100000

注释

可选

MINIO_NOTIFY_ELASTICSEARCH_COMMENT
notify_elasticsearch comment

指定与 Elasticsearch 配置关联的注释。