PostgreSQL 通知设置
此页面记录了配置 POSTGRES 服务作为 存储桶通知 目标的设置。请参阅 将事件发布到 PostgreSQL,了解有关使用这些设置的教程。
您可以通过定义以下内容来建立或修改设置
在启动或重新启动 MinIO 服务器之前,在主机系统上设置一个 环境变量。有关如何定义环境变量,请参阅您操作系统的文档。
使用
mc admin config set
设置一个 配置设置。使用 MinIO 控制台的 管理员 > 设置 页面设置一个 配置设置。
如果同时定义了环境变量和类似的配置设置,则 MinIO 使用环境变量值。
某些设置仅具有环境变量或配置设置,而不是两者兼而有之。
重要
每个配置设置都控制着 MinIO 的基本行为和功能。MinIO **强烈建议**在将配置更改应用于生产环境之前,在较低的环境(例如 DEV 或 QA)中进行测试。
多个 PostgreSQL 目标
您可以通过为每组相关的PostgreSQL设置附加一个唯一的标识符_ID
到顶级键来指定多个PostgreSQL服务端点。例如,以下命令分别将两个不同的PostgreSQL服务端点设置为PRIMARY
和SECONDARY
。
set MINIO_NOTIFY_POSTGRES_ENABLE_PRIMARY="on"
set MINIO_NOTIFY_POSTGRES_CONNECTION_STRING_PRIMARY="host=postgresql-endpoint.example.net port=4222..."
set MINIO_NOTIFY_POSTGRES_TABLE_PRIMARY="minioevents"
set MINIO_NOTIFY_POSTGRES_FORMAT_PRIMARY="namespace"
set MINIO_NOTIFY_POSTGRES_ENABLE_SECONDARY="on"
set MINIO_NOTIFY_POSTGRES_CONNECTION_STRING_SECONDARY="host=postgresql-endpoint.example.net port=4222..."
set MINIO_NOTIFY_POSTGRES_TABLE_SECONDARY="minioevents"
set MINIO_NOTIFY_POSTGRES_FORMAT_SECONDARY="namespace"
mc admin config set notify_postgres:primary \
connection_string="host=postgresql.example.com port=5432..."
table="minioevents" \
format="namespace" \
[ARGUMENT=VALUE ...]
mc admin config set notify_postgres:secondary \
connection_string="host=postgresql.example.com port=5432..."
table="minioevents" \
format="namespace" \
[ARGUMENT=VALUE ...]
使用这些设置,MINIO_NOTIFY_POSTGRES_ENABLE_PRIMARY
表示环境变量与ID为PRIMARY
的PostgreSQL服务端点相关联。
设置
启用
必需
指定on
以启用将存储桶通知发布到PostgreSQL服务端点。
默认为off
。
如果设置为on
,则需要指定以下其他环境变量
用于定义PostgreSQL服务端点以与MinIO存储桶通知一起使用的顶级配置键。
使用mc admin config set
设置或更新PostgreSQL服务端点。以下参数对于每个目标都是必需的
指定其他可选参数作为空格(" "
)分隔的列表。
mc admin config set notify_postgres \
connection_string="host=postgresql.example.com port=5432..." \
table="minioevents" \
format="namespace" \
[ARGUMENT="VALUE"] ...
连接字符串
必需
指定PostgreSQL服务端点的URI连接字符串。MinIO支持key=value
格式的PostgreSQL连接字符串。例如
"host=https://postgresql.example.com port=5432 ..."
有关支持的PostgreSQL连接字符串参数的更完整文档,请参阅PostgreSQL连接字符串文档。
版本RELEASE.2023-05-27T05-56-19Z中已更改: 在添加目标之前,MinIO会检查指定URL的健康状况(如果可解析且可访问)。如果现有目标脱机,MinIO不再阻止添加新的通知目标。
表
必需
指定MinIO发布事件通知的PostgreSQL表的名称。
格式
必需
指定写入PostgreSQL服务端点的事件数据的格式。MinIO支持以下值
命名空间
对于每个存储桶事件,MinIO都会创建一个JSON文档,其中包含事件中的存储桶和对象名称作为文档ID,以及事件本身作为文档主体的一部分。对该对象的额外更新会修改该对象的现有表条目。类似地,删除对象也会删除相应的表条目。
访问
对于每个存储桶事件,MinIO都会创建一个包含事件详细信息的JSON文档,并使用PostgreSQL生成的随机ID将其附加到表中。对对象的额外更新会导致新的索引条目,而现有条目保持不变。
最大打开连接数
可选
指定到PostgreSQL数据库的最大打开连接数。
默认为2
。
队列目录
可选
指定目录路径以启用MinIO的持久事件存储,用于未送达的消息,例如/opt/minio/events
。
当PostgreSQL服务器/代理脱机时,MinIO会将未送达的事件存储在指定的存储中,并在连接恢复时重放存储的事件。
队列限制
可选
指定未送达消息的最大限制。默认为100000
。
注释
可选
指定与PostgreSQL配置关联的注释。