Elasticsearch 通知设置
本页面文档化了配置 Elasticsearch 服务作为 Bucket Notifications 的目标设置。 请参阅 minio-bucket-notifications-publish-elasticsearch 以获取使用这些设置的教程。
您可以通过定义以下内容来建立或修改设置:
在启动或重新启动 MinIO 服务器之前,在宿主系统上定义一个 环境变量。 请参阅您的操作系统的文档,了解如何定义环境变量。
使用
mc admin config set
命令来设置一个 配置项。使用 MinIO控制台 的 管理员 > 设置 页面来设置一个 配置项。
如果您同时定义了环境变量和类似的配置设置,MinIO 将使用环境变量的值。
有些设置只有环境变量或配置设置,而不是两者都有。
重要
每个配置设置都控制着MinIO的基本行为和功能。 MinIO 强烈建议 在较低的环境中,如DEV或QA,测试配置更改,然后再将其应用到生产环境中。
多个 Elasticsearch 目标
您可以通过为每个相关设置集添加一个唯一标识符 _ID
来指定多个 Elasticsearch 服务端点。
例如, 以下命令分别为两个不同的Elasticsearch服务端点设置为 PRIMARY
和 SECONDARY
:
示例
export MINIO_NOTIFY_ELASTICSEARCH_ENABLE_PRIMARY="on"
export MINIO_NOTIFY_ELASTICSEARCH_URL_PRIMARY="https://user:password@elasticsearch-endpoint.example.net:9200"
export MINIO_NOTIFY_ELASTICSEARCH_INDEX_PRIMARY="bucketevents"
export MINIO_NOTIFY_ELASTICSEARCH_FORMAT_PRIMARY="namespace"
export MINIO_NOTIFY_ELASTICSEARCH_ENABLE_SECONDARY="on"
export MINIO_NOTIFY_ELASTICSEARCH_URL_SECONDARY="https://user:password@elasticsearch-endpoint.example.net:9200"
export MINIO_NOTIFY_ELASTICSEARCH_INDEX_SECONDARY="bucketevents"
export 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 ...]
Notice that for configuration settings, the unique identifier appends to notify_elasticsearch
only, not to each individual argument.
设置
Enable
必需的
将 on
指定为启用将桶通知发布到 Elasticsearch 服务端点。
默认为 off
.
如果设置为 on
,则需要指定以下附加环境变量:
- notify_elasticsearch
用于定义与 :ref:`MinIO 桶通知 <minio-bucket-notifications>`一起使用的 Elasticsearch 服务端点的顶级配置键。
使用 :mc-cmd: mc admin config set 命令来设置或更新一个 Elasticsearch 服务端点。 以下参数对于每个目标都是 必需 的:
将其他可选参数指定为空格 (
" "
) 分隔的列表。mc admin config set notify_elasticsearch \ url="https://user:password@elasticsearch.example.com:9200" \ [ARGUMENT="VALUE"] ... \
URL
必需的
指定 MinIO 发布桶事件的 Elasticsearch 服务端点。
例如, https://elasticsearch.example.com:9200
.
MinIO 支持使用格式 PROTOCOL://USERNAME:PASSWORD@HOSTNAME:PORT
的 URL 参数来传递认证信息。
在 RELEASE.2023-05-27T05-56-19Z 版本发生变更: 在添加目标之前,MinIO会检查指定URL的健康状况(如果其能被解析并可以访问)。 如果现有目标离线,MinIO不再阻止添加新的通知目标。
Index
必需的
指定用于存储或更新 MinIO 桶事件的 Elasticsearch 索引的名称。 如果索引不存在,Elasticsearch 会自动创建该索引。
格式
必需的
指定写入 Elasticsearch 索引的事件数据的格式。 MinIO 支持以下值:
namespace
对于每个桶事件,MinIO都会创建一个JSON文档,其中文档ID是事件中的桶和对象名称,而实际事件则是文档体的一部分。 对对象的额外更新会修改该对象的现有索引条目。 同样,删除对象也会删除相应的索引条目。
access
对于每个桶事件,MinIO 会创建一个包含事件详细信息的 JSON 文档,并使用 Elasticsearch 生成的随机 ID 将其附加到索引中。 对对象的额外更新会导致新的索引条目,而现有的条目保持未修改。
Username
可选
用于连接实施身份验证的Elasticsearch服务端点的用户名。
Password
可选
用于连接实施身份验证的Elasticsearch服务端点的密码。
在 RELEASE.2023-06-23T20-26-00Z 版本发生变更: 当作为 mc admin config get
命令的一部分返回时,MinIO 会删除这个值。
队列目录
可选
指定目录路径以启用MinIO的持久化事件存储,例如 /opt/minio/events
。
MinIO将在Elasticsearch服务离线时,将未投递的事件存储在指定的存储中,并在连接恢复时重新播放存储的事件。
队列限制
可选
指定未发送消息的最大限制。
默认为 100000
.
Comment
可选
为Elasticsearch配置指定一个注释。