文档

核心设置

此页面涵盖控制 MinIO 进程核心行为的设置。

您可以通过定义以下方式建立或修改设置

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

  • 使用 mc admin config set配置设置

  • 使用 MinIO 控制台的 管理员 > 设置 页面的配置设置

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

某些设置只有环境变量或配置设置,但不会同时拥有两者。

重要

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

MinIO 服务器 CLI 选项

MINIO_OPTS

此变量没有配置设置,因为这些设置适用于服务器启动时。

可选

设置启动 MinIO 服务器时要使用的 参数 字符串。

对于使用推荐的 MinIO systemd 服务的类 Unix 系统,请使用 /etc/default/minio 文件并创建一个名为 MINIO_OPTS 的环境变量,用于指定要附加到 minio systemd 进程的参数。

# Editing /etc/default/minio

MINIO_OPTS=' --console-address=":9001" --ftp="address=:8021" --ftp="passive-port-range=30000-40000" '

对于在命令行上运行 minio 的系统,MINIO_OPTS 是可选的。若要使用它,请使用标准 shell 语法声明环境变量,然后在启动 MinIO 服务器时引用环境变量。

export MINIO_OPTS=' --console-address=":9001" --ftp="address=:8021" --ftp="passive-port-range=30000-40000" '

minio server $MINIO_OPTS ...

# The above is equivalent to running the following:
# minio server --console-address=":9001" \
#              --ftp="address=:8021"     \
#              --ftp="passive-port-range=30000-40000"

重要

minio server 命令不会直接读取 $MINIO_OPTS。该变量仅在如上所述使用时才起作用。

存储卷

MINIO_VOLUMES

minio server 进程用作存储后端的目录或驱动器。

在功能上等效于设置 minio server DIRECTORIES。在将 MinIO 配置为使用环境文件运行时使用此值。

此设置没有配置设置选项。

环境变量文件路径

MINIO_CONFIG_ENV_FILE

指定 MinIO 服务器进程用来加载环境变量的文件的完整路径。

对于 systemd 管理的文件,将此值设置为环境文件 (/etc/default/minio) 的路径,以指示 MinIO 在使用 mc admin service restart 重新启动部署时重新加载对该文件的更改。

此设置没有配置设置选项。

到期工作程序

MINIO_ILM_EXPIRY_WORKERS

指定要用于使配置了 ILM 规则以进行到期的对象到期的工作程序数量。如果未设置,则 MinIO 默认使用最多一半的可用处理核心。

此设置没有配置设置选项。

MINIO_DOMAIN

启用对 MinIO 部署的虚拟主机式请求。将该值设置为 MinIO 要接受传入虚拟主机请求的完全限定域名 (FQDN)。

省略此设置会导致 MinIO 仅接受默认的路径样式请求。

例如,考虑一个 MinIO 部署,其分配的 FQDN 为 minio.example.net

  • 使用路径样式查找时,应用程序可以使用其完整路径访问存储桶,例如 minio.example.net/mybucket

  • 使用虚拟主机查找时,应用程序可以使用虚拟主机作为虚拟主机访问存储桶,例如 mybucket.minio.example.net/

重要

如果您配置了 MINIO_DOMAIN,则**必须**将指定 FQDN 的所有子域视为专门分配用于存储桶名称。任何与这些域冲突的 MinIO 服务(例如复制目标)可能会由于冲突而表现出意外或不希望的行为。

例如,如果设置 MINIO_DOMAIN=minio.example.net,则**不能**将 minio.example.net 的任何子域(以 *.minio.example.net 的形式)分配给任何 MinIO 服务或目标。这包括用于 存储桶批处理站点复制 的主机名。

此设置没有配置设置选项。

扫描器速度

MINIO_SCANNER_SPEED
scanner speed

在将 MinIO 读/写性能平衡到扫描器进程时,管理 扫描器 的最大等待时间。

MinIO 使用 扫描器 用于 存储桶复制站点复制生命周期管理修复 任务。

有效值包括

最快

消除扫描器在读/写延迟方面的等待,允许扫描器以全速和 IOPS 占用率运行。此设置可能会导致读写性能下降。

在读/写延迟方面的扫描器等待时间很短,允许扫描器以更高的速度和 IOPS 占用率运行。此设置可能会导致读写性能下降。

默认

设置中等扫描器在读/写延迟方面的等待时间,允许扫描器以平衡的速度和 IOPS 占用率运行。此设置旨在保持读写性能,同时允许持续的扫描器活动。

设置中等扫描器在读/写延迟方面的等待时间,扫描器以降低的速度和 IOPS 占用率运行。此设置允许更好的读写性能,同时降低扫描器性能。

可能会影响依赖于扫描器的功能,例如生命周期管理和复制。

最慢

设置扫描器在读/写延迟方面的等待时间很长,扫描器以大大降低的速度和 IOPS 占用率运行。此设置优先考虑读写操作,但可能会损害扫描器操作。

可能会影响依赖于扫描器的功能,例如生命周期管理和复制。

批处理复制

MINIO_BATCH_REPLICATION_WORKERS

可选

指定在执行批处理应用程序作业时要使用的最大并行进程数。

此设置没有配置设置选项。

数据压缩

以下部分介绍了为对象启用数据压缩的设置。有关使用这些配置设置的教程,请参阅 数据压缩

本节中的所有设置都属于以下顶级键

compression

启用压缩

MINIO_COMPRESSION_ENABLE
compression enable

可选

设置为 on 以为新对象启用数据压缩。默认为 off

启用或禁用数据压缩不会更改现有对象。

允许加密

MINIO_COMPRESSION_ALLOW_ENCRYPTION
compression allow_encryption

可选

设置为 on 以在压缩对象后加密它们。默认为 off

加密压缩对象可能会损害安全性

MinIO 强烈建议不要加密压缩对象。如果您需要加密,请仔细评估可能泄露有关加密对象内容的信息的风险。

压缩扩展

MINIO_COMPRESSION_EXTENSIONS
compression extensions

可选

要压缩的文件扩展名的逗号分隔列表。设置新的文件扩展名列表会替换先前配置的列表。默认为 ".txt, .log, .csv, .json, .tar, .xml, .bin"

在版本 RELEASE.2024-03-15T01-07-19Z 中更改: 指定 "*" 以指示 MinIO 压缩所有支持的文件类型。

即使在该参数中明确指定,MinIO 也不支持压缩 排除的文件类型 列表上的文件类型。

压缩 MIME 类型

MINIO_COMPRESSION_MIME_TYPES
compression mime_types

可选

要压缩的 MIME 类型的逗号分隔列表。设置新的类型列表会替换先前配置的列表。默认为 "text/*, application/json, application/xml, binary/octet-stream"

默认排除的文件

某些类型的文件的大小无法显着减少。即使在 mime_types 参数中指定,MinIO 也不会压缩这些文件。有关详细信息,请参阅 排除的类型

注释

此设置没有环境变量选项。请使用配置设置。

compression comment

可选

指定与数据压缩配置相关的注释。

擦除条带大小

MINIO_ERASURE_SET_DRIVE_COUNT

此设置没有配置设置选项。

可选

在给定服务器池中对所有驱动器应用的擦除集大小

如果您设置此值,则必须在初始化集群之前执行此操作。在集群初始化后,所选条带大小是不可变的,并且会影响添加到集群的任何未来服务器池。

MinIO 子网 用户应登录并打开一个问题以讨论条带大小设置,然后再在任何环境中实施它们。

警告

不要更改条带大小设置,除非 MinIO 工程师指示您这样做。

更改条带大小会对部署功能、可用性、性能和行为产生重大影响。MinIO 的条带选择算法为大多数工作负载设置了适当的默认值。从该默认值更改条带大小是不寻常的,通常没有必要或建议这样做。

最大对象版本

MINIO_API_OBJECT_MAX_VERSIONS
api object_max_versions

可选

定义允许每个对象的默认最大版本数。

默认情况下,MinIO 允许每个对象最多有 Int64 的最大版本数,即超过 9.2 亿亿。

注意

RELEASE.2023-08-04T17-40-21Z``到 ``RELEASE.2024-03-26T22-10-45Z 的 MinIO 版本默认限制为 10,000 个对象版本。可以使用此设置将该限制覆盖为其他值。

每个对象任意高的版本可能会导致某些操作(例如 LIST)的性能下降。这在运行预算硬件或旋转驱动器 (HDD) 的系统上尤其如此。生成数千个或更多版本的应用程序或工作负载可能需要设计或架构审查以减轻潜在的性能下降。

设置不超过 100 的限制应该为大多数典型用例提供足够的版本。